前提・実現したいこと
初めて質問します。よろしくお願いします。
ワードプレスでデータベースを使った予約システムを作っています。
データベースに日付だけ入ったデータを入れておいて
フォームから入ったデータでアップデートするというものです。
発生している問題・エラーメッセージ
データベースに書き込めません。
pdoで読み込みはできます。
調べたら$wpdbを使うと書いてあったのですが書き方がいまいちわかりません。
エラーメッセージ
phpmyadminで確認してもデータは書き込めておらず
データは書き込めずページが見つかりませんとなります。
該当のソースコード
<form action="" method="post"> <p>名 前<input type="text" name="name"></p> <p>メール<input type="text" name="mail"></p> <p>電 話<input type="int" name="tel"></p> <input type="hidden" name="date" value=""> <input type="submit" value="決済する"> </form> <?php endif; ?> <?php # データを追加する $pdo = new PDO('mysql:host=localhost; dbname=; charset=utf8','',''); $sql = 'SELECT FROM jimny ';?> <?php if(isset($_POST['name'])) :?> <?php echo 'ご予約ありがとうございました。' ;?> <?php foreach($_POST['date1'] as $dad){ $name = $_POST['name']; $mail= $_POST['mail']; $tel= $_POST['tel']; $date= $year*10000+$month*100+$dad; $sql="UPDATE jimny SET name=:name, mail=:mail, tel=:tel where date=:date"; $statement = $pdo->prepare($sql); $statement->bindValue(':name', $name, PDO::PARAM_STR); $statement->bindValue(':mail', $mail, PDO::PARAM_STR); $statement->bindValue(':tel', $tel, PDO::PARAM_INT); $statement->bindValue(':date', $date, PDO::PARAM_INT); $statement->execute();} <?php endif; ?>php
1ソースコード
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
テーブルの構造です。
名前 データ型 照合順序 属性 NULL デフォルト値 コメント その他 操作
1 id主 int(11) いいえ なし AUTO_INCREMENT 2 name varchar(30) utf8_general_ci はい なし 3 mail varchar(40) utf8_general_ci はい なし 4 tel int(11) いいえ なし 5 date int(11) いいえ なし
データベースの更新に関する質問であれば、せめてテーブル定義がわかる資料を質問文に追記して下さい。
回答1件
あなたの回答
tips
プレビュー