フォーム(HTML,JavaScriptを使用)から
、Ajaxで送信し
、PDO(phpMyadminのMySQL)で接続するよう記述していますが
レコード追加ができません。
ざっくりとした流れは、
1,フォームの各項目に入力
2,登録ボタンクリック
3,送信される
4,DBにレコード追加
となっており、どこの箇所が問題なのか切り分けできていない状態です。
【参考】
*DB接続はできています。
*プレースフォルダーを利用。
下記のソースコードはフォームから受け取ったデータをDBに追加するためのINSERT文ですが、記述(テーブルの列や値)は合っていますでしょうか?ご教授いただければと思います。
$sql = "INSERT INTO " . "テーブル名 " . "(" //リスト名 . "sd_no, " . "sd_category, " . "sd_name, " . "sd_price, " . "sd_month, " . "sd_manager, " . "sd_company, " . "sd_id, " . "sd_pass, " . "sd_expired_date, " . "sd_comment, " . "sd_regist, " . "sd_update, " . "del_flg, " . ") VALUES ( " . "?, ?, ?, ?, ?, ?, ?, ?, ?, ? " . "NOW(), " . "NOW() " . ")"; echo $sql; //プリペーアドステートメントを作る $stmt = $dbh->prepare($sql); //データをバインド。 $stmt->bindValue(':sd_category', $sd_category, PDO::PARAM_tinyint); $stmt->bindValue(':sd_name', $sd_name, PDO::PARAM_varchar); $stmt->bindValue(':sd_price', $sd_price, PDO::PARAM_int); $stmt->bindValue(':sd_month', $sd_month, PDO::PARAM_tinyint); $stmt->bindValue(':sd_manager', $sd_manager, PDO::PARAM_tinyint); $stmt->bindValue(':sd_company', $sd_company, PDO::PARAM_tinyint); $stmt->bindValue(':sd_id', $sd_id, PDO::PARAM_varchar); $stmt->bindValue(':sd_pass', $sd_pass, PDO::PARAM_varchar); $stmt->bindValue(':sd_expired_date', $sd_expired_date, PDO::PARAM_tinyint); $stmt->bindValue(':sd_comment', $sd_comment, PDO::PARAM_varchar); //プリペアードステートメントから入ってきたsql文を実行する。 $stmt->execute(); echo '登録しました。'; コード
また登録ボタンをクリックした後、アラートをあげるようにしおり、
以下のようなエラー表示があります。
アドバイス・ご教授いただければと思います。
よろしくお願いします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。