前提・実現したいこと
HTMLのinputからテキストをPHPのSQL構築文に送りたいのですが、Undefined indexとなってしまいます。
発生している問題・エラーメッセージ
Notice: Undefined index: first_name in C:\xampp\htdocs\180418SQLtest-2\view.php on line 36エラーメッセージ
該当のソースコード
<--!form.html"--> <form name="form1" method= "POST" action="view.php"> 氏 : <br> <input type="text" name="last_name"> <br> 名 : <br> <input type="text" name="first_name"> <br> 年齢 : <br> <input type="text" name="age"> <br> <input type="submit" value="送信"> </form> -- //""view.php"" try{ $pdo->beginTransaction(); $sql = "insert into member (last_name, first_name, age) values (:last_name, :first_name, :age)"; $stmh = $pdo->prepare($sql); $stmh->bindvalue(':last_name', $_POST['last_name'], PDO::PARAM_STR); $stmh->bindvalue(':first_name', $_POST['first_name'], PDO::PARAM_STR); $stmh->bindvalue(':age', $_POST['age'], PDO::PARAM_INT); $pdo->execute(); $pdo->commit(); print"データを".$stmh->rowcount()."件挿入しました。<br>"; } catch (PDOException $exception) { $pdo->rollback(); print"エラー2:".$exception->getMessage(); }
試したこと
HTMLのフォームを実行し、テキストを入力、送信すると、上記エラーメッセージが出ます。
変数、first_nameに問題があるようなのですが、何が問題なのか分かりません。
追加
ご教示いただいた
var_dump($_POST);
を追加で書いたところ、
array(3) { ["last_name"]=> string(6) "山田" ["firstt_name"]=> string(6) "太郎" ["age"]=> string(6) "30" }
Notice: Undefined index: first_name in C:\xampp\htdocs\180418SQLtest-2\view.php on line 37
とメッセージが来ました。
これを見ると、HTML側からはデータの送信はされていて、view.php側に問題があるように思えるのですが。。。
補足情報(FW/ツールのバージョンなど)
テキスト、PHP7+MariaDB/MySQLのサンプルコードを実行しています。
NetBeansを使用しております。
回答2件
あなたの回答
tips
プレビュー