我正在使用PHP创建带有数组字段的表单。基本上,您可以在表单中添加无限数量的“人员”,每个人都有名字,姓氏和电话号码。该表格要求您只为第一个人添加电话号码。如果您将电话号码字段保留为空白,处理程序文件应该被编程为使用第一个人的电话号码。未初始化的数组偏移量
所以,我的领域是:
person[]
- 与此人的主键的值的隐藏字段。
fname[]
- 输入字段
lname[]
- 输入字段
phone[]
- 输入字段
我的表单处理程序是这样的:
$people = $_POST['person']
$counter = 0;
foreach($people as $person):
if($phone[$counter] == '') {
// use $phone[0]'s phone number
} else {
// use $phone[$counter] number
}
$counter = $counter + 1;
endforeach;
PHP不喜欢这虽然,它是扔我
Notice: Uninitialized string offset error.
我通过在people,fname,lname和phone上运行is_array函数来调试它,它返回true作为一个数组。我也可以手动回显$ phone [2]等,并获得正确的值。我也在$ counter变量上运行了is_int,并且它返回了true,所以我不确定为什么它不能按预期工作?
任何帮助将是伟大的!
你的if(电话[...应该是如果($电话[...我推测? – 2010-05-24 07:02:08
垃圾,感谢您的反馈,在我的代码中是'$ phone'...抱歉,谢谢! – kimmothy16 2010-05-24 10:07:20