如何通过“子目录”类链接访问配置文件页面?

时间:2014-03-07 21:20:39

标签: php html subdirectory user-profile

所以我在这个网站上工作,就像社交网络一样,每个用户都应该有一个个人资料页面,可以通过他/她可以与朋友和朋友分享的简单链接访问。

我完全理解如何通过从SQL数据库获取基于名称/ id的数据并正确显示选择结果来实现此目的。但是我只会通过从$_GET获取ID来知道如何执行此操作,如下所示:

如果用户打开www.socialnetwork.com/profile.php?name=daniel,我可以查找$_GET['name']并完成其余工作。

但是我不希望这样做,我真的希望通过这样的链接找到用户页面: www.socialnetwork.com/daniel或至少www.socialnetwork.com/profile/daniel 所以更像是一个假的子目录而不是一个属性。 我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

您可以尝试使用$_SERVER['REQUEST_URI'],它会为您提供类似profile/daniel的内容,然后使用正则表达式来解析网址数据。

当然,您还需要通过Web服务器conf将这些URL路由到PHP脚本。

答案 1 :(得分:0)

为此,您可以将MOD_REWRITE与.htaccess一起使用。

本指南可能会对您有所帮助:Ultimate Guide to htaccess and mod_rewrite | Branded3

也请回答这个问题:Using mod-rewrite to pass route to index.php

特别是,这可以帮助你(未经测试,请写一些评论):

RewriteEngine on
RewriteBase /
RewriteRule /profile/(.*) /profile.php?name=$1 [R=301,L]

有关MOD_REWRITE的更多信息:Apache mod_rewrite Introduction - Apache HTTP Server