
データベースに「id」「name」「age」「comment」があります。
ウェブ上でデータベースを呼び出し一覧表示させ、各行に更新と削除ボタンを設けています。
そしてその下に新規追加出来るよう入力欄とボタンを設けています。
データベースの呼び出し、更新、新規入力はうまくいくのですが「削除」のみうまくいきません。
以下のPHPですがどこがおかしいでしょうか?
もしエスパー回答を求める質問になっていましたら必要な情報書きますので教えて下さい。
宜しくお願いいたします。
<?php
$pdo = new PDO('mysql:dbname=dbname', 'root', 'pass');
switch ($_SERVER['REQUEST_METHOD']) {
case 'GET':
$st = $pdo->query("SELECT * FROM meibo");
echo json_encode($st->fetchAll(PDO::FETCH_ASSOC));
break;
case 'POST':
$in = json_decode(file_get_contents('php://input'), true);
if (isset($in['id'])) {
$st = $pdo->prepare("UPDATE meibo SET name=:name,age=:age,comment=:comment WHERE id=:id");
} else {
$st = $pdo->prepare("INSERT INTO meibo(name,age,comment) VALUES(:name,:age,:comment)");
}
$st->execute($in);
break;
case 'DELETE':
$st = $pdo->prepare("DELETE FROM meibo WHERE id=?");
$st->execute($_POST['id']);
break;
}
No.3ベストアンサー
- 回答日時:
>いろいろ試してみましたが全く消えません。
では
>各行に更新と削除ボタンを設けています。
をどうやって指定しているか書いてください
また、「$in['id']」はどこからやってきているのですか?
「分からない事が何か」分からない状態になってしまいました(^^;
結局、削除専用のphpを作りページ移動させて処理することにしました。
1アクション増えましたが意図する動きが出来たので良しとします。
ご丁寧にお答えいただきありがとうございました。
また宜しくお願いいたします。
No.2
- 回答日時:
$_SERVER['REQUEST_METHOD']の値が
GETかPOST以外にならないとDELETEに
ならないですね
DELETEがどの変数に入っているか
よく検証してみてください

No.1
- 回答日時:
1. case 'DELETE': に到達しているか確認してください。
2. PDOStatement::execute は成功した場合に TRUE を、失敗した場合に FALSE を返します。値を確認してください。http://php.net/manual/ja/pdostatement.execute.php
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
POSTの項目に追加
-
DB接続やInsertでのエラーを画...
-
Smartyのforeachのnameに変数を...
-
HTMLで前の画面に戻る時、入力...
-
DBの値をチェックボックスに反...
-
チェックボックスを使った複数...
-
なぜ、unexpected T_VARIABLEに...
-
エラーを元の画面に表示させるには
-
テキストリンクをPOST送信したい
-
Submit(送信ボタン)を押した...
-
PHPでフォームデータをサンクス...
-
$_SERVER['REQUEST_METHOD']と"...
-
アップロードの際にファイルパス
-
検索時の選択内容を保持する方法
-
処理後のページ内移動について
-
PHPのエラーの解消法について教...
-
【HTML(PHP?)】複数のフォーム...
-
POSTやGETの変数をフォーム無し...
-
phpで、フォームのラジオボタン...
-
PHPでURLにジャンプするには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA で、スペースを含むファイ...
-
Flaskでサーバー立ち上げに関して
-
記号[]が混ざった正規表現について
-
php メールフォーム エラー表...
-
chmod 教えてください
-
選択行の受け渡しに関して
-
PHPで作成した2つのプログラム...
-
正規表現について
-
php+mysqlでの重複チェックにつ...
-
お問い合わせフォーム session...
-
引数の参照について
-
文法の質問です
-
年月日のプルダウンメニューで...
-
php MySQL データ登録 方法
-
POSTの項目に追加
-
PDO+SQLITEでのインジェクショ...
-
PostgreSQLに書き込むことが出...
-
テキスト文書(.txt)→エクセルに...
-
これに間違いはありますか?
-
ポインタ配列をfscanfで読み込...
おすすめ情報
いろいろ試してみましたが全く消えません。
もう少し詳しく教えて頂ければ幸いです。
よろしくお願いいたします。
いろいろ試してみましたが全く消えません。
もう少し詳しく教えて頂ければ幸いです。
よろしくお願いいたします。