我会尽量保持简短。
我有一个表单,其输入字段(其中 54 个)会自动填充数据库中的数据。使用 PHP while
循环为每个输入字段的 ID 分配一个 ID。用户可以编辑值并单击提交。当表单提交时,数据被传递到jquery中的数组中。我希望能够通过 POST 将该数组从 ajax 传递到 PHP。
表单/提交页面
$settings = array();
$counter = 0;
if(mysqli_num_rows($result) > 0){
while($row = mysqli_fetch_assoc($result)) {
$settings[$counter] = $row['value'];
echo "<tr>
<td>" . $row[$settings] . "</td>
<td><input type=\"text\" id=\"" . $counter . "\" value=\""
. $settings[$counter] . "\"></td>";
counter++;
}
}
mysqli_close($svr_link);
jQuery 脚本(表单/提交页面内)
$('#update').click(function(event) {
event.preventDefault();
var settings = [];
for (i=0; i<55; i++) {
settings[i] = $('#' + i).val();
}
$.ajax({
type: "POST",
url: "pages/post.php",
data: {settings:settings},
success: function(data) {
$('#message').html(data);
}
});
});
我的问题是:
我是否在 ajax 调用中正确设置了该数据数组?
如何拉取并处理post.php文件中的数据数组?
如果我遗漏了相关内容,请告诉我
最佳答案
如果您以 JSON 形式发送数组数据,建议在客户端设置的 ajax 中设置 dataType
。
$.ajax({
type: "POST",
url: "pages/post.php",
dataType: 'json',
data: {settings:settings},
success: function(data) {
$('#message').html(data);
}
});
在服务器端,使用 json_decode 函数获取数组,这样您就可以轻松地处理数据。它会是这样的:
json_decode($_POST['settings'], true);
关于javascript - 将数据数组从表单传递到 ajax、PHP post 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54483395/