0

这个 .php 文件从屏幕上的 XML 文件输出项目,并让用户有机会单击每个项目后显示的添加到购物车提交按钮。这个想法是在购物车系统中进一步使用 ID、名称等,但我仍处于购物车的起始阶段。(这是作业)

但问题是这种方法不起作用,因为当所有迭代都完成后,无论单击哪个按钮,计算机将始终引用存储在 for 循环的最后一次迭代中的变量中的值。

我想编写一些代码,以便能够为每个 ID 设置一个 UNIQUE 按钮,当按下此按钮时,该项目的相应信息将通过 thi: action="add.php"

任何帮助将不胜感激,因为我被卡住了,我不知道

<?php
$doc = new DOMDocument();
$doc->load('menu.xml' );

$Wraps = $doc->getElementsByTagName ("Wraps");

foreach ($Wraps as  $w) {
$wrapsid = $w->getElementsByTagName("id")->item(0)->nodeValue;
$wrapsname = $w->getElementsByTagName("Type")->item(0)->nodeValue;
$wrapsprice = $w->getElementsByTagName("Price")->item(0)->nodeValue;

echo "Wraps ID: $wrapsid <br> Wraps Name: $wrapsname <br> Wraps Price:  $wrapsprice";

?>
<form action="add.php" method="post">
                    <td class='view_td' width='10%'><center>
                   <INPUT TYPE=HIDDEN NAME='ID' value='{$wrapsid}'/>
                   <input type='submit' value='Add to cart' /></center></td><br>
</form>
    <?php
    }
    ?>
4

2 回答 2

2

您不能在 TD 周围放置表单标签,它必须绕过整个表格,要么使用 div 并设置样式以使用 CSS 复制表格布局,要么使用 GET,因为您只是将 ID 传递回服务器,例如。使用锚点而不是您的输入

于 2013-05-10T13:00:47.690 回答
1

要识别提交的表单,您可以使用:

•一个隐藏的输入字段。
•提交按钮的名称或值。
表单的名称不会作为 POST 数据的一部分发送到服务器。
更多信息

于 2013-05-10T12:55:59.080 回答