[英]HTML normal button to submit form
请帮助我,我不知道为什么永远不要进入条件“ if(isset($ _ POST ['buscar']))”
当您按下“按钮”时,我想发送一个提交
如果发生错误,取消提交
否则发送提交
在php中时,询问变量“ buscar”,错误发生在哪里
不明白为什么不输入条件
<?php
# Load...
$data_buscar = array();
# Buscar...
if (isset($_POST['buscar']))
{
if (!empty($_POST['id_ingrediente']))
{
$id_ingrediente = $_POST['id_ingrediente'];
$query = "SELECT *
FROM INGREDIENTE
WHERE ID_INGREDIENTE = '$id_ingrediente';";
$result = mysql_query($query);
while ($row = mysql_fetch_assoc($result))
{
$data_buscar[] = $row;
}
mysql_free_result($result);
}
}
?>
在这里显示
<?php
print_r($data_buscar);
?>
这是JavaScript中的功能
<script type="text/javascript">
window.onload = function()
{
document.form1.buscar.addEventListener("click", buscar_click);
}
function buscar_click(e)
{
if (//something)
{
alert("err");
}
else
{
document.form1.submit();
}
}
<body>
<form name="form1" action="organizador.php" method="post" target="_self">
<label>Id del Ingrediente:</label>
<input class="textbox" type="text" name="id_ingrediente">
<input class="but" type="button" name="buscar" value="Buscar">
</form>
</body>
:)
如果通过AJAX提交表单,则不会发送按钮值。
您可以通过检查错误来执行客户端验证,如果存在该错误,则返回false,这将取消按钮的默认操作(提交表单)。
如果没有错误,请单击按钮以执行提交表单的默认操作。
if (//error)
{
alert("err");
return false;
}
如果您在一个表单中有100个按钮,则单击时将只提交一个表单按钮值。(我的经验)
如果不单击按钮,则按钮值将不会提交
使用隐藏的输入字段它将起作用:)
<body>
<form name="form1" action="organizador.php" method="post" target="_self">
<label>Id del Ingrediente:</label>
<input class="textbox" type="text" name="id_ingrediente">
<input class="but" type="hidden" name="buscar" value="Buscar">
<input class="but" type="button" value="Buscar">
</form>
</body>
您的$_POST
没有buscar
。 您只有id_ingrediente
。 这就是为什么isset($_POST['buscar'])
为false。
你必须写:
if ( isset($_POST['id_ingrediente'])) ...
或类似的东西。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.