繁体   English   中英

页面加载后是否可以从PHP中删除查询字符串?

[英]Can I remove the query string from PHP after the page loads?

页面加载后,我有一个URL: http:// localhost / foldername / page?name = xyz

页面内容是通过从数据库中获取名称为xyz的数据而来的。 但是我想在页面加载后输入如下URL: http:// localhost / foldername / page / xyz 有什么办法吗?

试试这个,获取URL,并使用strtok清除URL中的获取值

if (isset($_GET['name'])) {
    $url = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
    $url = strtok($url, '?');
    $get_name = $_GET['name'];
    $url = "Location: ".$url."/".$get_name;
    header($url);    
}

foldername内创建一个.htaccess文件,并将此代码放入

RewriteEngine On
RewriteRule ^page/([a-zA-Z0-9-/]+)/?$ index.php?name=$1 [L]

从浏览器http:// localhost / foldername / page / xyz访问

现在你可以访问name的index.php与GET请求$ _GET [“名”];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM