我是PHP的新手,我的按钮在桌子上遇到了问题。单击按钮时,它需要从数据库中获取一个ID号。我毫不费力地获得数据并将其传递到下一页。
<form action="ThisPage.php" method="post">
<td><input name="Submit" type="submit" value=<?php echo $OrderNumber; ?> ></td>
</form>除了$OrderNumber变量显示在按钮本身之外,一切都运行得很好。我希望按钮显示为“编辑”,而不是显示在附加图像中的$OrderNumber变量。

如何使按钮显示“编辑”,但应用$OrderNumber值的posted值?我一直无法找到一种方法来完成传递正确和独特的数据,同时也显示一个按钮,不混淆最终用户。
为了进入下一页,我正在检查PHP脚本开头的posted值。如果有一个已发布的值,在本例中是$OrderNumber,则脚本将变量携带到下一页,如下所示.
<?php
if(!empty ($_POST['Submit']) )
{
$_SESSION['OrderID']=$_POST['Submit'];
header("location:NextPage.php");
exit;
}
?>但是,如果没有已发布的数据,则该页将运行并显示表示数据库条目数组的行。除了这个按钮标签,一切都很好。
发布于 2017-01-18 10:29:05
尝尝这个
<form action="ThisPage.php" method="post">
<input type="hidden" name="order_id" value="<?php echo $OrderNumber; ?>" />
<td><input name="Submit" type="submit" value="Edit" /> </td>
</form>
<?php
if(!empty ($_POST['Submit']) )
{
$_SESSION['OrderID']=$_POST['order_id'];
header("location:NextPage.php");
exit;
}
?>添加隐藏字段,因为我们可以在不显示的情况下传递任何形式的值,所以我们必须添加此方法。
发布于 2017-01-18 10:31:18
最好的方法是使用第二个元素。您的代码将如下所示:
<form action="ThisPage.php" method="post">
<td>
<input type="hidden" name="ordernumber" value="<? =$OrderNumber; ?>" />
<input name="Submit" type="submit" value="Edit"/>
</td>
</form>在下一页中,您现在可以使用$_POST['ordernumber']。要使用会话,请确保session_start();放置在撤回或存储之前,并确保屏幕上没有打印任何内容,在发出session_start()之前也没有输出任何标头;
发布于 2017-01-19 00:03:29
虽然解释不足,但Bhavin的回答却是完美的。
LPChip提供的答案非常接近,但我的脚本无法运行;
<input type="hidden" name="ordernumber" value="<? =$OrderNumber; ?>" />我不得不用
value="<?php echo $OrderNumber; ?>" />我正在使用PHP 5,所以这可能是问题所在。如果我有另一个问题,我一定会具体说明的。
结果是你可以在表格里面打开一个表格。
https://stackoverflow.com/questions/41716792
复制相似问题