質問: ### 前提・実現したいこと phpで生成した連想配列をjquery ajaxを使って、 mysqlにアップデートしたいと考えています。 具体的には「MYSQLに反映する」ボタンを押すと裏でMYSQLに反映されます。 ### 発生している問題・エラーメッセージ 全くmysqlにアップデートされない。 様々な解説サイトを閲覧していますが、全然うまくいかない為、御教授願います。 (ひょっとしたらjsonの変換でなにかしらのミスをしているのではと予想しており、自信がありません。。) ### 該当のソースコード ``` ◆input.php MYSQLに反映する'; ?> ◆update.php query('SET NAMES utf8'); $sql="UPDATE table_1 SET box1=?, box2=? WHERE id=?"; $stmt=$dbh->prepare($sql); $data[0]=$array_jquery_4[0]; $data[1]=$array_jquery_4[1]; $data[2]=100; $stmt->execute($data); $dbh=null; ?> ```
回答: 回答者さんからの助言ありがとうございました。 余計なダブルクォーテーションがあった為、実行出来ていないことが判明しました。 以下に修正することで、解決しました。 ``` ◆input.php //余計なダブルクォーテーションを削除 var array_jquery=""; ↓ var array_jquery=; ``` ``` ◆input.php //わざわざdata1をキーに置かなくてもよい data:{data1:array_jquery_2} ↓ data:array_jquery_2 ``` ``` ◆update.php $array_jquery_3 = filter_input(INPUT_POST, 'a'); $array_jquery_4 = json_decode( $array_jquery_3 , true ) ; ↓ $array_jquery_3 = filter_input(INPUT_POST, 'a',FILTER_DEFAULT,FILTER_REQUIRE_ARRAY); //$array_jquery_4 = json_decode( $array_jquery_3 , true ) ;←受ける側のデコードは不要 ```