如果我的PHP页面包含:
<input type="submit" name="add1" value="Add Item">
<input type="submit" name="chgprice" value="Change Price">
<input type="submit" name="delete" value="Delete Item">
<input type="submit" name="main" value="Main">
以及:
<?PHP
if($_POST['main'] == "Main"){
header('Location: http://hidden.edu/~test/457/1/index.php');
}elseif($_POST['dspphp'] == "Display Source" && $_POST['srcpw'] == "srcpass"){
$_SESSION['srcsite'] = "store.php";
header('Location: http://hidden.edu/~test/457/1/source.php');
}elseif($_POST['add1'] == "Add Item"){
header('Location: http://hidden.edu/~test/457/1/additem.php');
}elseif($_POST['chgprice'] = "Change Price"){
header('Location: http://hidden.edu/~test/457/1/changeprice.php');
}
?>
它自动转发到changeprice.php。我只是不明白为什么它在那里自动转向,而不是其他人。我试过在页面中移动它,但似乎没有任何帮助。我可以直接打开页面,它工作正常。如果我将changeprice.php更改为,例如index.php,则会在那里自动转发。有什么想法吗?
感谢您的投入。
答案 0 :(得分:2)
变化:
}elseif($_POST['chgprice'] = "Change Price"){
为:
}elseif($_POST['chgprice'] == "Change Price"){
答案 1 :(得分:0)
问题是提交了所有输入字段。因此,您将获得所有四个提交按钮值。
你想要的是:
<input type="submit" name="submit" value="Add Item" />
<input type="submit" name="submit" value="Change Price" />
<input type="submit" name="submit" value="Delete Item" />
<input type="submit" name="submit" value="Main" />
并在服务器上:
switch($_POST['submit']) {
case 'Add Item':
...
break;
case 'Change Item':
etc...
break;
default:
....
}