警告:在第2行的E:\ xampp \ htdocs \ piecework \ groupcheck.php中为foreach()提供的参数无效

时间:2009-11-07 15:04:32

标签: php jquery checkbox

     while ($row= mysql_fetch_array($result, MYSQL_ASSOC))
{ $id=$row[id];
  $html=<<<html
<tr><td> 
<input style="float:left" type="checkbox" id="$id" name="myBoxes[$id]" value="true">   
<span style="float:left">$row[content]</span>
<span style="color:black;float:right">$row[submitter]</span></td></tr>  
html;
echo $html; 
}


$html=<<<html
</table>
<span onclick="selectAll(true)" style="cursor:pointer;color:black">All</span>
 &nbsp 
<span onclick="selectAll(false)" style="cursor:pointer;color:black">None</span><br/>
<input type="submit" value="Submit"/>
html;
echo $html;

JQuery代码:

function selectAll(argument)
{
    $("INPUT[type='checkbox']").attr('checked',argument);
}

PHP代码:

<?php foreach ($_POST['myBoxes'] as
    $id => $value)  { echo $value;  
    echo "<br/>";} ?>

为什么会收到错误消息

  

警告:提供的参数无效   foreach()in   E:\ XAMPP \ htdocs中\计件\ groupcheck.php   在第2行

当我点击“无”和“提交”时,问题是什么?

3 个答案:

答案 0 :(得分:1)

更改此

$row[id]
$row[content]
$row[submitter]

进入这个:

$row['id']
$row['content']
$row['submitter']

答案 1 :(得分:0)

$_POST是一个将字符串映射到字符串的关联数组;因此,$_POST['myBoxes']是一个字符串。您无法在字符串上运行foreach循环。

答案 2 :(得分:0)

如果您从html中删除 $ id :name =“myBoxes [ $ id ]”是否有效?