【发布时间】:2010-05-24 06:59:05
【问题描述】:
我正在使用 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(phone[... 应该是 if($phone[... 我猜?
-
废话,感谢您的反馈。在我的代码中是“$phone”...对不起,谢谢!