我遇到一个问题,我的 PHP 代码没有在输入中传递变量。该值仅输出为一串"<?php echo $orderID ?>". 我希望它做的实际上是发送创建的变量。<?php if ($order['status'] != "Received") { $orderID = $order['orderID']; var_dump($orderID); echo '<td><form action="./markAsReceived.php" method="POST"> <input type="hidden" name="orderID" value="<?php echo $orderID; ?>"> <input type="submit" class="btn btn-secondary mx-1" value="Mark As Received"> </form></td>';} else { echo '<td></td>';}?>因此,如果订单状态不等于“已接收”,代码将从这里检查数据库,然后它会显示一个按钮,以便您可以将其标记为“已接收”,否则它不会显示任何内容。该按钮确实出现了,但正如我之前所说,按钮的值只是 php 代码的字符串。我确信这很简单,但我无法全神贯注,提前感谢您的帮助!
1 回答
慕的地6264312
TA贡献1817条经验 获得超6个赞
您没有使用正确的字符串连接。在双引号中,php 会查找变量,但在单引号中则不会。由于您使用的 html 使用双引号,因此字符串必须使用单引号。您可以在字符串内连接:
<?php
if ($order['status'] != "Received") {
$orderID = $order['orderID'];
var_dump($orderID);
echo '<td><form action="./markAsReceived.php" method="POST">
<input type="hidden" name="orderID" value="'.$orderID.'">
<input type="submit" class="btn btn-secondary mx-1" value="Mark As Received">
</form></td>';
} else {
echo '<td></td>';
}
?>
- 1 回答
- 0 关注
- 98 浏览
添加回答
举报
0/150
提交
取消