PHP自动转发

时间:2011-04-13 21:01:55

标签: php html

如果我的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,则会在那里自动转发。有什么想法吗?

感谢您的投入。

2 个答案:

答案 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:
         ....
 }