我有一个HTML输入和按钮:
<form action="validate.php" method="post">
<!-- THE CODE INSERT -->
<div id="code">
<form>
<label></label>
<input id="input" name="InputText" type="text"/>
</form>
</div>
<!-- THE BUTTON ITSELF -->
<input type="button" id="button" name="myButton"><b>Search Archive</b>
</form>
在我的validate.php
文件中,我有以下switch语句:
<?php
switch ($_POST["InputText"])
{
case "someval":
http_header("someaddress.com");
die();
break;
}
?>
问题是,当我单击按钮时,它什么也没做。我使用JS做到了这一点,但是它确实有效,但是应该指出,我确实是Web开发的新手,所以如果有人可以向我解释我做错了什么,特别是为什么这样做很棒。谢谢!
答案 0 :(得分:1)
您在表单中有一个表单,该表单不起作用。另外,在关闭表单之前,您需要添加<input type="submit" value="submit" />
。这就是将信息从表单提交到您的action="file.php"
的原因。
表单通常如下所示:
file.html
<form action="validate.php" method="POST">
<input type="text" name="username" placeholder="Enter your username" />
<input type="submit" name="submit" value="Submit" />
</form>
然后您将执行以下操作:
validate.php
<?php
echo "Your username is" . $_POST['username'];
$_POST['username']
是从HTML的name="username"
输入中收集的数据。如果您写die($_POST);
,则将获得通过表单发送的所有数据。
答案 1 :(得分:0)
使用type ='button'时,您必须自己执行提交。 因此,您可以使用javascript或更改为type ='submit'。 示例:
<input type="button" id="button" name="myButton"><b>Search Archive</b>
收件人
<input type="submit" id="button" name="myButton" value="Search Archive" />
答案 2 :(得分:0)
您可以尝试
<form action="/validate.php" method="post">
<!-- THE CODE INSERT -->
<div id="code">
<label></label>
<input id="input" name="InputText" type="text"/>
</div>
<!-- THE BUTTON ITSELF -->
<button type="submit" id="button" name="myButton">Search Archive</button>
</form>
您在div id =“ code”中使用了表单标签,这就是它不起作用的原因...删除它将起作用并且必须提交按钮类型