以下表格在5秒后使用quto javascript提交时不带表格变量。
正常提交工作正常。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<SCRIPT LANGUAGE="JavaScript"><!--
setTimeout('document.test.submit()',5000);
//--></SCRIPT>
</head>
<body>
<form name="test" id="form1" method="post" action="auto2.php">
<p>
<INPUT TYPE=checkbox NAME="test" VALUE="option1"> Option1
<INPUT TYPE=checkbox NAME="test" VALUE="option2"> Option2
<INPUT TYPE=checkbox NAME="test" VALUE="option3"> Option3
</p>
<p><input type="submit" name="submit_test" value="Submit_test" />
</p>
</form>
</body>
</html>
---------------------------------------------------------------
output page:
--------------------------------------------------------------
<?php
if(isset($_POST['submit_test'])){
$variable=$_POST['test'];
echo $variable;
}
?>
非常感谢任何帮助..谢谢。
答案 0 :(得分:5)
您正在测试是否设置了submit_test
按钮值:
if(isset($_POST['submit_test'])){
自动提交表单不会设置值,因此您的测试失败。
您应该测试其他表单字段,例如隐藏元素。
答案 1 :(得分:2)
除非选中复选框,否则您不会得到任何回复(空白或其他)
你应该拥有的是
<input type=hidden name="test" value="">
<INPUT TYPE=checkbox NAME="test" VALUE="option1"> Option1
<INPUT TYPE=checkbox NAME="test" VALUE="option2"> Option2
<INPUT TYPE=checkbox NAME="test" VALUE="option3"> Option3
这样,当您发布表单时,您会获得默认值
答案 2 :(得分:0)
+1对Pekka的回答。
如果您执行以下操作,它将检查页面是否已过帐,而不要求在帖子中设置变量。
if ($_SERVER['REQUEST_METHOD'] === 'POST') { ... }
您可能还应该进行某种形式的验证,以确保它来自您预期的位置。