クエリの結果を含む HTML テーブルを含むページがあります。各行の横にボタンがあり、クリックするとライトボックスが表示され、ユーザーがコメントを入力できる小さな HTML フォームが表示されます。
ユーザーがこのフォームの送信ボタンをクリックすると、行に含まれるデータ (可能であれば各セルの値を配列として) とコメントをスクリプトに送信し、データベースに挿入します。 .
完了すると、そのことを示す小さなメッセージが表示され、ライトボックスが消えると、ユーザーはテーブルに戻ることができます。
私の問題は、データを処理する PHP スクリプトにデータを送信することです。AJAX JavaScript は問題なく動作しますが、データの送信方法がわかりません。
コードは次のとおりです。
function getOutput() {
//Get number of selected table row
var i = document.getElementById('rowclicked').value;
//Get the table
var table = document.getElementById('table');
//Get the comment
var comm = document.getElementById('comment').value;
var ajax = getRequest();
ajax.onreadystatechange = function(){
if(ajax.readyState == 4){
alert(ajax.responseText);
}
}
ajax.open("POST", "functions_comm.php", true);
ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
//Only try to send the table row for now
ajax.send(table.rows[i]);
}
「functions_comm.php」に「php echo "test";」を入れると、「alert(ajax.responseText);」「テスト」と表示され、その部分は機能しています。ただし、「print_r($_POST)」を実行しようとすると、空の配列が返されます。これは、「ajax.send(table.rows[i]);」によってデータが渡されなかったことを意味すると思います。
テーブルの行 i から php スクリプトにデータを渡すにはどうすればよいですか?
ありがとう。