我看过这么多帖子aboit这个,但仍然不能让我的代码工作。jQuery的阵列发送由AJAX到PHP
我想获得一个php数组,我的选中复选框的值。
继承人我的代码:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
<title>Untitled Document</title>
</head>
<body>
<?php
echo'<form method="post">
<input type="checkbox" name="cim" value="valami">';
echo'<input type="checkbox" name="cim" value="valami2">';
echo'<input type="checkbox" name="cim" value="valami3">';
echo'<input type="checkbox" name="cim" value="valami4">
<input type="submit" value="Felvisz" name="feladat"></form>';
if (isset($_POST['feladat'])) {
?>
<script type="text/javascript">
var checkedValue = $('.messageCheckbox:checked').val();
var myJSON = JSON.stringify(checkedValue);
$.ajax({
type: "POST",
url: "proba.php",
data: { tomb : myJSON },
success: function(){
alert("OK");
}
});
</script>
<?php
var_dump($_POST);
$array = json_decode(stripslashes($_POST['tomb']));
foreach($array as $arr){
echo $arr;
}
}
?>
</body>
</html>
按摩我得到: 注意:未定义指数:墓在d:\ programok \ XAMP \ htdocs中\ SZAKDOGA \ Dropbox的\上线proba.php 48
警告:提供的无效参数为foreach()D:\ programok \ xamp \ htdocs \ SZAKDOGA \ Dropbox \ proba.php在线49
请有人可以帮我解决这个问题吗?
'json_decode'在这里是不必要的。 ajax将以数组对象的形式发送数据。只获取您需要测试它们的“已选中”复选框的值。您目前没有将您正在测试复选框的课程分配到 – bowl0stu
中的任何一个框,以更好地使用它? (函数(){返回$(this).val();})。get();返回值是一个数组,其值为0。 –