使用用户名

时间:2015-10-31 06:57:00

标签: php .htaccess mod-rewrite friendly-url

在此代码中使用mod_rewrite我可以通过在域名后输入用户名来访问任何用户的个人资料,例如 example.com/john ,这会将我们带到约翰的个人资料。这很有效但是如果我输入任何不是我数据库中现有用户的用户名的名称,例如 example.com/notauser 我仍然会被重定向到空的个人资料页面,尽管它没有个人资料图片或其他信息,但所有其他按钮和链接,如粉丝,朋友等仍然可用。在这种情况下,我想重定向到登录页面或echo消息用户不存在,但无法弄清楚如何做到这一点。

Profile.php

<?php
if(!empty($_GET['username'])) { 
$username = $_GET['username'];
}
else if(!empty($_SESSION['username'])) { 
$username = $_SESSION['username'];
}
else { 
header("Location: login.php"); 
die();
}
?>

.htaccess

RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-]+)$ profile.php?username=$1 

1 个答案:

答案 0 :(得分:1)

  

我想重定向到登录页面或echo消息用户没有   存在,但无法弄清楚如何做到这一点。

因为动作取决于用户不存在的因素;在您尝试获取所提供的$username的数据后,您需要执行重定向