2016-11-09 79 views
0

我有一个网址如:http://localhost/foldername/page?name=xyz页面加载后。我可以在页面加载后从PHP中删除查询字符串吗?

页面内容通过从获取数据库中的数据而得到name = xyz。 但我想要的网址如:http://localhost/foldername/page/xyz页面加载后。有什么办法吗?

+1

使用'.htaccess'来重写你的url –

+0

mod_rewrite我的朋友。你正在使用Apache或Nginx? – kwoxer

+0

我正在使用Apache .. –

回答

0

使用strtok的清晰获取价值创造.htaccess文件中foldername,并把这个代码浏览器

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

访问它 http://localhost/foldername/page/xyz

现在您可以在索引中访问name。 php获取请求$ _GET ['name'];

+0

谢谢大哥!我也试试这个选项。 –

+0

让我知道你是否面临任何问题。 –

+0

兄弟还是一样的。实际上,当我输入http:// localhost/foldername/page/xyz现在也在工作。但是它会自动给出上面的URL。 –

0

试试这个,得到URL和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);  
} 
+0

谢谢!它的工作...我想要在地址栏中的URL我知道了。但是,当它被重定向到新的URL,那么我如何获得**名称**?当我通过数据库中的名称列获取页面内容时。如何将该名称存储在变量中,以便在页面重定向到新URL后可以相应地取回该名称? –

相关问题