我很难尝试使用php创建一个表单,该表单从多维数组中获取信息(此任务不允许使用数据库)来创建购物车功能,如在ebay或amazon上。用户只能选择一个要购买的商品,然后将信息传递给流程中的下一个表单。我试图重新创建我在VB.net中执行的功能,使用嵌套循环生成表单的重复控件,在本例中为单选按钮。
<?php
$itemNumber = 0;
foreach( $items as $item ) {
$itemNumber++;
echo "<tr height=80px>";
//i think the problem is in the nested loop below//
foreach( $item as $key => $value ){
$myThumbnail = generateThumbnail("$itemNumber".".jpg");
echo "<td width = 50%><input type="radio" name="itemName" id="$itemNumber" value="itemName" setChecked("itemName", "itemName") /></td>";
echo "<td width=50%>$myThumbnail</td>";
}
echo "</tr>";
}
?>
我通过语法检查程序运行了我的代码,但检查程序非常有限。我已经尝试过六天了,找到我的错误。我这班的讲师没有回复任何电子邮件。我已经搜索了stackoverflow和PHPfreaks以寻找可能的解决方案,但我找到的所有选项都使用数据库和/或硬编码所有控件而不是动态创建它们,以便根据需要创建尽可能多的数组。如果需要更多代码,我会根据请求添加。
答案 0 :(得分:0)
问题是你没有正确转义第一个回音中的引号,试试(使用\
转义):
echo "<td width = 50%><input type=\"radio\" name=\"itemName\" id=\"$itemNumber\" value=\"itemName\" setChecked(\"itemName\", \"itemName\") /></td>";
或者,您可以使用连接和'
作为字符串:
echo '<td width = 50%><input type="radio" name="itemName" id="' . $itemNumber . '" value="itemName" setChecked("itemName", "itemName") /></td>';