前提
PDOでSQL文を実行時にエラーが出てしまい、解決できません。
アドバイスをいただけると助かります。
よろしくお願いします。
実現したいこと
- プリペアドステートメントを利用してクエリを実行する
発生している問題・エラーメッセージ
Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':shop_id' at line 1
該当のソースコード
PHP
1//セッションの値を受け取る 2$shop_id = $_SESSION[ 'shop_id' ]; 3 4$sql = "SELECT * FROM message WHERE shop_id = :shop_id"; 5 6$prepare = $dbh->query( $sql ); 7$prepare -> bindValue(':shop_id', $shop_id); 8$prepare->execute(); 9$count = $prepare->rowCount(); //データ数を取得
試した事
PHP
1//セッションの値を受け取る 2$shop_id = $_SESSION[ 'shop_id' ]; 3 4$sql = "SELECT * FROM message WHERE shop_id = ".$shop_id; 5 6$prepare = $dbh->query( $sql ); 7$prepare->execute(); 8$count = $prepare->rowCount(); //データ数を取得
これだとエラーは出ないです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/08/30 12:28
2022/08/30 12:31
2022/09/03 12:52