前提・実現したいこと
飲食店がお店の入店可否に対してサイト内で〇✖の表示とそれに対するコメントを切り替えられる機能を作っています。
店側がログイン後、店側の入店可否切り替えフォームからログインされた店の〇✖を切り替える下記コードでつまずいています。
現状データベースの更新は出来ておらず、エラーも出ていません。
DBの接続確認、ログイン機能の確認は出来ています。
該当のソースコード
<?php session_start(); try { $pdo = new PDO('mysql:host=localhost;dbname=reserve;charset=utf8','root','', array(PDO::ATTR_EMULATE_PREPARES => false)); } catch (PDOException $e) { exit('データベース接続失敗。'.$e->getMessage()); } if(!isset($_SESSION['user'])) { header("Location: shop_submit.php"); } // ユーザーIDからユーザー名を取り出す $query = "SELECT * FROM shop WHERE id=".$_SESSION['user'].""; $result = $pdo->query($query); if (!$result) { print('クエリーが失敗しました。' . $pdo->error); $pdo->close(); exit(); } // ユーザー情報の取り出し while ($row = $result->fetch(PDO::FETCH_ASSOC)) { $name = $row['name']; //$yesno = $row['yesno']; } // セッションの開始 $yesno = htmlspecialchars($_SESSION['yesno'], ENT_QUOTES, 'UTF-8'); $comment = htmlspecialchars($_SESSION['comment'], ENT_QUOTES, 'UTF-8'); // 接続設定 $conn = new PDO('mysql:host=localhost;dbname=reserve;charset=utf8','root',''); $conn->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER); $conn->setAttribute ( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION ); $conn->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); // データの変更 $sql = "update shop set yesno = ':yesno', comment = ':comment' where id=".$_SESSION['user'].""; $stmt = $conn -> prepare($sql); $params = array(':yesno' => ".$yesno.", ':comment' => ".$comment."); $stmt -> execute($params); ?> <!DOCTYPE HTML> <html lang="ja"> <head> <meta charset="utf-8" > <meta name="viewport" content="width=device-width, initial-scale=1"> <title>入店可否登録</title> <link rel="stylesheet" href="style.css"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css"> </head> <body> <div class="header-right"> <p style="text-align:center;"><?php echo $name; ?>専用ページ</p> </div> <div style="text-align:center;margin:50px 0;"> <h3>登録が完了しました</h3> <input style="margin-top:20px;" type="button" onclick="location.href='shop_home.php'"value="トップページへ戻る"> <input type="button" onclick="location.href='shop_form.php'"value="さらに登録する"> </div> </body> </html>
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー