0

假设我的网站主页上有一个表格:www.mysite.com

现在,表单标签看起来像这样:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
...
</form>

当该表单提交时,它会做它应该做的一切。但它也会使用完整的文件名和扩展名重新加载页面。所以用户现在会发现地址栏中的 URL 是:www.mysite/index.php

有没有办法在不添加此扩展程序的情况下使表单触发到同一页面?

在某些情况下,表单包含在页脚中,因此我无法具体说明表单需要触发的页面,因此PHP_SELF代码。

4

3 回答 3

3

那是因为$_SERVER['PHP_SELF']指的是当前脚本的实际文件名。

试试这个:

<form action="" method="post">

一个空的action将回发到当前的 URL。

于 2013-09-23T15:11:41.203 回答
2

尝试设置action#

<form action="#" method="post">
...
</form>

#指的是当前页面。

于 2013-09-23T15:13:19.173 回答
1

尝试将操作更改为#,此帖子到当前页面。

编辑:迈克打败了我。

编辑 2:看起来您可以将操作全部省略,它将默认为同一页面。

编辑3:迈克也击败了我。

于 2013-09-23T15:14:06.020 回答