3 回答
TA贡献1828条经验 获得超4个赞
按钮名称未提交,因此$_POST['submit']未设置php 值。如in isset($_POST['submit'])评估为false。
<html>
<form action="" method="post">
<input type="hidden" name="action" value="submit" />
<select name="name">
<option>John</option>
<option>Henry</option>
<select>
<!--
make sure all html elements that have an ID are unique and name the buttons submit
-->
<input id="tea-submit" type="submit" name="submit" value="Tea">
<input id="coffee-submit" type="submit" name="submit" value="Coffee">
</form>
</html>
<?php
if (isset($_POST['action'])) {
echo '<br />The ' . $_POST['submit'] . ' submit button was pressed<br />';
}
?>
TA贡献2041条经验 获得超4个赞
使用此代替:
<input id='tea-submit' type='submit' name = 'submit' value = 'Tea'>
<input id='coffee-submit' type='submit' name = 'submit' value = 'Coffee'>
TA贡献1818条经验 获得超7个赞
就像其他人说的那样,您可能会误解了唯一ID的想法。我要补充的是,我不喜欢在这里使用“值”作为标识属性的想法,因为它可能随着时间而改变(即,如果您想提供多种语言)。
<input id='submit_tea' type='submit' name = 'submit_tea' value = 'Tea' />
<input id='submit_coffee' type='submit' name = 'submit_coffee' value = 'Coffee' />
并在您的PHP脚本中
if( array_key_exists( 'submit_tea', $_POST ) )
{
// handle tea
}
if( array_key_exists( 'submit_coffee', $_POST ) )
{
// handle coffee
}
另外,您可以添加类似的内容,例如if( 'POST' == $_SERVER[ 'REQUEST_METHOD' ] )是否要检查数据是否正确发布。
- 3 回答
- 0 关注
- 389 浏览
添加回答
举报