当我将$ test1变量设置为数字而不是$ _POST时,代码按预期工作。但是,当我将其设置为发布时,TableID不会返回任何内容。我已经设置了一些打印输出,它们都返回了正确的结果,所以有人能告诉我为什么TableID没有发布到PHP会话中吗?
PHP在html语句之前的页面顶部。
if (isset($_POST['submit'])) {
$test1 = $_POST['TableID'];
$_SESSION["table_id"] = $test1;
header("Location:test.php");
}
在PHP文件中使用的表单。
echo "<form action=" . $_SERVER['PHP_SELF'] . " method=\"POST\">\n";
echo " <div class=\"col-lg-3 col-md-3 col-sm-3\">\n";
echo " <div class=\"thumbnail well\">\n";
echo " <div class=\"thumbnail-pad\">\n";
echo " <br/>\n";
echo " <h4 align=\"center\">\n" . $info['TestName'] . "</h4>\n";
echo " <br/>\n";
echo " <h5 align=\"center\"> Table id is: " . $info['TableID'] . " </h5>";
echo " <input type='hidden' value='" . $info['TableID'] . "'>";
echo " <div align=\"center\"><button type=\"submit\" name=\"submit\" align=\"center\" class=\"btn btn-success btn-md col-lg-12\">Test</button></div>\n";
echo " </div>\n";
echo " </div>\n";
echo " </div>\n";
echo "</form>\n";
答案 0 :(得分:0)
您需要提供输入名称,否则在表单提交时无法显示:
<input type='hidden' name='TableID' value='" . $info['TableID'] . "'>";