我在php中收到此错误:
Invalid argument supplied for foreach()
我正在尝试在jquery中为输入值创建一个数组
<input type="text" class="passenger">
<input type="text" class="passenger">
<input type="text" class="passenger">
那么 js 是 :
var passengers = new Array();
$('.passenger').each(function(){
if($(this).val() == " "){
passengers.push(JSON.stringify($(this).val()));
}
});
然后在我将其发布到php之后,我想要它,所以我显示所有乘客
目前,这是行不通的。为什么不呢
foreach($passengers as $pass){
$each_passengers = json_decode($pass);
}
实际上,您不需要将每个输入字符串化。您首先需要做的是在表单输入中创建分组名称属性:
<input type="text" name="input[]" class="passenger" value="test1" />
<input type="text" name="input[]" class="passenger" value="test2" />
<input type="text" name="input[]" class="passenger" value="test3" />
然后,在你的$.post()
.只需使用 $(form).serialize()
将它们序列化:
$.post('myphp_process.php', $('#form_values').serialize(), function(response){
然后当然会处理它的 PHP,只需将其视为普通 POST:
$inputs = $_POST['input']; // this will return an array of inputs and to access this you need a loop.
// for clarity print_r($_POST['input']);
看看这个。这应该给你一个基本的想法。