phpを初めて勉強しています。
今回、コードを書く中で、以下のようなnoticeが表示されました。
この原因と解決法を知りたいと考えています。
Notice: Undefined index: staffcode in /home/ubuntu/workspace/staff/staff_edit.php on line 24 Call Stack: 0.0011 227792 1. {main}() /home/ubuntu/workspace/staff/staff_edit.php:0
問題となっている箇所は、下記のコードの中の
「 $staff_code=$_POST['staffcode'];」の部分ですが、何度見返しても問題ありません。
また、googleで調べたところ、php.ini の535行目付近の「error_reporting =...」という箇所を、error_reporting = E_ALL & ~E_NOTICE と置き換えるように助言がされていましたが、
これを実行しても表示は消えませんでした。
ご助言をお願いしたい次第です。よろしくお願いいたします。
try { //前の画面から受け取った入力データを変数にコピーしている。 $staff_code=$_POST['staffcode']; //データベースへの接続 $dsn='mysql:dbname=shop;host=localhost;charset=utf8'; $user='root'; $password=''; $dbh=new PDO($dsn,$user,$password); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);//エラーハンドリング設定 //SQL文を使って、nameを選択。 $sql='SELECT name FROM mst_staff WHERE code=?'; $stmt=$dbh->prepare($sql); $data[]=$staff_code; $stmt->execute($data); $rec=$stmt->fetch(PDO::FETCH_ASSOC); $staff_name=$rec['name']; //データベースから切断 $dbh=null; } catch(Exception $e) { print'ただ今障害により大変ご迷惑をおかけしています。'; exit(); //強制終了の命令 }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/12/10 17:37
退会済みユーザー
2015/12/10 17:42
2015/12/10 18:05