formから送信したPOSTデータを受け取るとemptyになっている
POSTデータをきちんと受け取れるようにしたい
現在このようなループ処理の中で取得したidとnameの要素をinputタグの中のidとvalueに
割り当てる処理を実装しています。
そして割り当てたデータをjsのクリックイベント内でformのvalueに送りsubmitしているのですが受け取り先でデータを確認するとemptyになってしまうのを解決したいです。
該当するソースコード
index.html
<script type="text/javascript>
$(document.ready(function() {
$(.update).click(function(){
var id = $(this).data('id');
var name = $('#name_'+id).val();
$('input[name="f_name"]'].val(name);
document.simple_form.submit();
);
});
</script>
<form method="POST" action="index.php" name="simple_form">
<input type="hidden" name="alphabet" value="aaa">
<input type="hidden" name="f_name" value="">
</form>
<?php foreach ($array as $key => $value): ?>
<input type="hidden" id="name_<?= $value['id']?>" data-id="<?= $value['id'] ?>"value="<?= $value['name'] ?>" </input>
<button class="update" id="update_<?= $value['id']?>" data-id="<?= $value['id'] ?>"type="button">更新</button>
<?php endforeach; ?>
その後取得したデータを受け取り先で確認するとデータがemptyで何も受け取れていません。
index.php
if($_SERVER['REQUEST_METHOD'] == 'POST'){
var_dump($_POST);
}
index.html
array(size=0);
empty
ですがvar_dumpの直後にexitして処理を止めるとpostされたデータが受け取れています。
index.php
if($_SERVER['REQUEST_METHOD'] == 'POST'){
var_dump($_POST);
exit();
}
index.html
array(size=0);
'alphabet' = 'aaa'
'f_name' = '佐藤'
思い当たったのは多重リクエストになっているのか、js側でのイベントの指定がよくないのか色々と調べたのですが直接的な原因が分かりません。
解決方法を教えていただきたいです。
0