我有一大堆代码如下:
<td><?
$days = array("Sun","Mon","Tue","Wed","Thur","Fri","Sat");
for($i=1;$i<8;$i++)
{
echo $days[$i-1]?><input type="checkbox" name="labDays[]" value="<?=$days[$i]?>" checked="checked"><?
}?>
</td>
但是当我运行print_r($_REQUEST['labDays']);
我得到Array ( [0] => [1] => [2] => [3] => [4] => [5] => [6] => )
我期待Array ( [0] => Sun[1] => Mon[2] => Tue[3] => Wed[4] => Thur[5] => Fri[6] => Sat)
我确定这是愚蠢的,但我不确定我错过了什么......
print_r($_REQUEST)
呕吐:Array ( [pg] => 12 [msg] => Facility Already Exist [facilityname] => kjgkjhgkjhg [facorgtype] => [facilitytype] => [administratorsname] => [divisionname] => [streetaddress1] => [streetaddress2] => [city] => [state] => [zipcode] => [phonenumber] => [faxnumber] => [email] => [mainstate] => [labDays] => Array ( [0] => [1] => [2] => [3] => [4] => [5] => [6] => ) [facBillingContact] => [facBillingPhone] => [facBillingFax] => [facBillingRep] => [facBillingAccNum] => [facNotes] => [submit] => Create )
var_dump($_REQUEST['labDays'])
:
array
0 => string 'Sun' (length=3)
1 => string 'Mon' (length=3)
2 => string 'Tue' (length=3)
3 => string 'Wed' (length=3)
4 => string 'Thur' (length=4)
5 => string 'Fri' (length=3)
6 => string 'Sat' (length=3)
答案 0 :(得分:2)
我相信这就是你要找的东西:
<?php
$days = array("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat");
foreach ($days as $day) {
echo <<<HTML
<label>$day
<input type="checkbox" name="labDays[]" value="$day" checked>
</label>
HTML;
}
?>
很少注意到:
<强> PHP 强>
<? ?>
,尤其是<?= ?>
)。foreach
比for
更适合。$_POST
或$_GET
而不是$_REQUEST
,这被认为更加安全。<强> HTML 强>
checked
属性不需要任何值。它就足够了。答案 1 :(得分:1)
如果您想循环遍历数组,foreach
是最佳选择
$days = array("Sun","Mon","Tue","Wed","Thur","Fri","Sat");
foreach($days as $k=>$v)
{
echo $k?><input type="checkbox" name="labDays[]" value="<?=$v?>" checked="checked"><?
}?>
使用for
,你可以这样做:
$days = array("Sun","Mon","Tue","Wed","Thur","Fri","Sat");
for($i=0;$i<=6;$i++)
{
echo $i;?><input type="checkbox" name="labDays[]" value="<?=$days[$i]?>" checked="checked"><?
}?>
推荐方式..
$days = array("Sun","Mon","Tue","Wed","Thur","Fri","Sat");
foreach($days as $k=>$v)
{
echo $k . ' <input type="checkbox" name="labDays[]" value="'.$v.'" checked="checked">'; //you can give your styles and css ofcourse to make it better..
}
答案 2 :(得分:-1)
可能使用 echo 来打印值:
<input type="checkbox" name="labDays[]" value="<?php echo $days[$i]; ?>" checked="checked">