对不起,如果这是重复的 -
我很想知道如何做到这一点,因为因为我的代码不起作用。
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
}
答案 0 :(得分:0)
如上所述,您需要确保获取并检查正确的键值。 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;
}
}
答案 1 :(得分:-1)
使用array_key_exists('vendre1plume', $_POST)
代替isset()
。