前提
Javascriptで複数のデータをFORMから送信したいです。teratail既出の類似の問題でしたが、それを試してみても上手く動きません。PHPには自信がありますが、Javascriptにはほとんと知見がありません。おそらくJavascriptの記述がおかしいのだと思いますが、自己解決できません。
実現したいこと
HTMLのFORM要素のPOSTデータを複数Ajaxで送信したいです。PHP側で$_POST["message"]と$_POST["user"]を受けとりたいです。
発生している問題・エラーメッセージ
POSTデータがひとつ目の$_POST["message"]しか送信できません。
該当のソースコード
PHP
1 2echo ' 3 <form method="post" onsubmit="writeMessage(); return false;"> 4 <input id="message" name="message" type="text" value="" /> 5 <input id="user" name="user" type="text" value="'.$name.'" /> 6 <input type="button" value="送信" onclick="writeMessage()"> 7 </form> 8 <div id="messageTextBox"></div> 9'; 10
Javascript
1 2 var dat = { message : $('#message').val() ,user : $('#user').val() }; 3 4 $.ajax({ 5 type: 'post', 6 url: './main.php', 7 data: dat 8 }) 9 .then( 10 function (data) { 11 readMessage(); 12 }, 13 function () { 14 alert("書き込み失敗"); 15 } 16 ); 17
試したこと
datをひとつにまとめるのではなく、2つに分けたものを合体させてみましたが、ひとつ目のものしか送信できません。
補足情報(FW/ツールのバージョンなど)
PHP7.2
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。