回答編集履歴

2

追記

2020/09/11 15:10

投稿

tanat
tanat

スコア18727

test CHANGED
@@ -11,3 +11,43 @@
11
11
  [PHP・PDO、SQL実行時のエラーをExceptionで捕捉する](http://piyopiyocs.blog115.fc2.com/blog-entry-657.html)
12
12
 
13
13
  の様な形でSQLに文法エラーがあった時は例外がthrowされるように設定してください。
14
+
15
+
16
+
17
+ こちらで試した限りだとコードに問題は無い様に見えるので
18
+
19
+ 前述の
20
+
21
+ `PDOStatement::debugDumpParams`に合わせて
22
+
23
+ ```PHP
24
+
25
+ $post_choose_offer = $_POST['choose_offer'];
26
+
27
+
28
+
29
+ echo $post_choose_offer;
30
+
31
+ ```
32
+
33
+
34
+
35
+ ```PHP
36
+
37
+ $post_choose_offer = $_POST['choose_offer'];
38
+
39
+ var_dump($post_choose_offer);
40
+
41
+ ```
42
+
43
+ として、値が欠けたりしていないかを確認してみてください。
44
+
45
+ おそらく現状でも
46
+
47
+ ```PHP
48
+
49
+ $post_choose_offer = "5f5383012c89e";
50
+
51
+ ```
52
+
53
+ とした場合は動作すると思います。

1

追記

2020/09/11 15:10

投稿

tanat
tanat

スコア18727

test CHANGED
@@ -1,3 +1,13 @@
1
1
  まずは、
2
2
 
3
3
  [PDOStatement::debugDumpParams](https://www.php.net/manual/ja/pdostatement.debugdumpparams.php)を使用して、狙った値がバインド出来ているか確認してみましょう。
4
+
5
+
6
+
7
+ また、PDOの接続部分でどの様なオプションを指定しているか不明ですが
8
+
9
+ `必ず`
10
+
11
+ [PHP・PDO、SQL実行時のエラーをExceptionで捕捉する](http://piyopiyocs.blog115.fc2.com/blog-entry-657.html)
12
+
13
+ の様な形でSQLに文法エラーがあった時は例外がthrowされるように設定してください。