试图使用2 isset 1按钮
对不起,如果这是重复的 -试图使用2 isset 1按钮
我愿意知道我该怎么做,因为它是我的代码不工作。
echo'<form action="" method="POST"><input type="submit" value="Test" name="Test"></form> ';
if (isset($_POST['Test'])) {
$item_name="Plume";
$id_vente=2;
}
if(isset($_POST['submit'])) {
// Do some stuff
}
如上所述,您需要确保获取并检查正确的键值。 name="Test"
是关键价值,所以你需要寻找。要改变形式能够匹配你的两个if
条件:
<form action="" method="POST">
<input type="hidden" name="Test" value="bugs" />
<input type="submit" name="submit" value="TEST" />
</form>
提交这份表格,输出:
Array
(
[Test] => bugs
[submit] => TEST
)
这将满足isset($_POST['Test'])
和isset($_POST['submit'])
条件。
我觉得它更容易做一个动作名称:
<form action="" method="POST">
<!-- Hiding an action word will tell which script to run -->
<input type="hidden" name="action" value="do_some_action" />
<input type="submit" name="submit" value="TEST" />
</form>
这将提交:
Array
(
[action] => do_some_action
[submit] => TEST
)
然后,我会有些观察者会监听行动:
<?php
# Check that an action has been sent
if(!empty($_POST['action'])) {
# Create a switch to do the action
switch($_POST['action']) {
case('do_some_other_action'):
// Do some other script
break;
case('do_some_action'):
// Do some script
break;
}
}
隐藏的输入正是我一直在寻找的,谢谢你! –
使用array_key_exists('vendre1plume', $_POST)
而不是isset()
。
使用你的方法检查不会使他们的脚本工作。它会产生相同的结果,因为它们的表单中没有'vendre1plume'或'submit'键。您只是建议一种替代方法来检查密钥是否已设置,哪些不会。 – Rasclatt
您的表单中没有'vendre1plume'或'submit'元素。只是* type *'submit'它不会设置'$ _POST ['submit']',它必须改为输入的名称。 – DontVoteMeDown
你只有$ _POST [ '测试'] –
如果(isset($ _ POST [ '测试'])){ //做一些东西 } 只有这将工作 –