在我从页面编辑时,我得到了http://localhost/cart_simple/admin/productEdit.php/?edit_id=47
的网址现在,当我编辑我的发件人并提交时,我想通过表单操作转到下一页这是我移动到查询的表单.php我使用表单操作=查询.php然后单击"更新"按钮
<form name="prdct_frm" action="query.php" method="post" enctype="multipart/form-data">
<ul>
<li><lable name>Name:</lable><input type="text" name="prd_name" value="<?php echo $fillvar[0]['name'];?>"/></li>
<li><lable name>Price:</lable><input name="prd_price" type="text" value="<?php echo $fillvar[0]['price'];?>"/></li>
<li><lable name>Qty:</lable><input type="text" name="prd_qty" value="<?php echo $fillvar[0]['quantity'];?>"/></li>
<li><lable name>Product image</lable><input type="file" name="file" id="file" /></li>
<img src="<?php echo 'http://'.$_SERVER["HTTP_HOST"].dirname($_SERVER["SCRIPT_NAME"]).'/product_image/'.$fillvar[0]['prod_image'];?>" height="80" width="80"/>
<li><input type="submit" name="update" value="Upate Product"/></li>
</ul>
</form>
但是当我按下按钮时,我得到了错误的URL。正确的网址应该是http://localhost/cart_simple/admin/query.php
我得到错误的网址http://localhost/cart_simple/admin/productEdit.php/query.php
使用类似这样的东西:
<form action="/cart_simple/admin/query.php">
由于您使用的是漂亮的URL,因此您将获得当前文件的相对URL,该文件被视为文件夹。因此,更改将 URL 引用到绝对 URL 的方式可能会解决此问题。
现在,如果你给/cart_simple/admin/query.php
,它从根开始。在任何情况下,您的URL是以下任何一项:
http://localhost/cart_simple/admin/productEdit.php/
http://localhost/cart_simple/admin/productEdit.php
http://localhost/cart_simple/admin/productEdit
它总是去/cart_simple/admin/query.php
.希望清楚。
相对路径追加在当前 URL 的最后/
之后(查询字符串之前(。
由于您在.php
之后有一个/
,因此它在此之后附加。
您可以:
- 未链接到
.php/
(有风险,第三方可能会链接到那里( - 使用绝对路径(即以
/
开头,然后包含操作的整个路径( - 在
productEdit.php
中测试已请求的URL,如果错误,则重定向到正确的URL。