我想使用$_GET
但不想使用查询表单传递参数:
showevent.php?event=usa
应该显示在 url 中而不是希望
site.com/events/usa
对于配置文件:
site.com/username
浏览器不知道如何格式化这样的 URL。通过 GET 提交表单的标准是查询字符串,这是您的浏览器唯一可以做的事情。两种选择:
通过普通查询字符串提交,然后在服务器上重写 URL 并重定向客户端。例如:
header('Location: /events/' . $_GET['event']);
exit;
这样做的缺点是每次需要两次往返服务器,并且未重写的 URL 可能会在用户的浏览器中短暂闪烁,但最终会为您提供漂亮的 URL。
您可能需要两者的组合,其中 2. 作为非 Javascript 客户端的后备。