我正在尝试发布一个我知道在 Stack Overflow 周围有很多答案的问题。但是,出于某种原因,我似乎无法获取其中的信息以进行单击。我将在问题末尾发布我的消息来源。
问题是,我如何user_id
从 URL 中提取一个 & mod_rewrite 它显示用户名。
而不是这个:
domain/user/index.php?user_id=1
我明白了:
domain/username
我已经根据我的 .htaccess 文件的需求定制了其他 SO 答案:
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
RewriteOptions MaxRedirects=1
RewriteCond %{REQUEST_FILENAME} -f [NC,OR]
RewriteCond %{REQUEST_FILENAME} -d [NC]
RewriteRule .* - [L]
RewriteRule ^user/([^/]+)$ index.php?user_id=$1
</IfModule>
if
我的用户页面顶部的语句如下所示:
if (isset($_GET['user_id']) || isset($_GET['username']) && queryUserId($user_id)) {
// Render Page Content
} else {
header('Location: sign_up.php');
}
我的queryUsername
功能如下所示:
function queryUsername($username) {
$conn = dbConnect('read');
$sql = "SELECT * FROM users WHERE user_id = '".$username."'";
$result = $conn->query($sql) or die(mysqli_error($conn));
$row = $result->fetch_assoc();
return $row['username'];
$username = $row['username'];
}
我已经成功地为用户实现了唯一的 URL,并且在将不同的 user_id 附加到我的 URL 时可以很好地访问帐户配置文件,那么我缺少什么来将用户名写入 URL 而不是变量字符串和文件夹结构?
干杯!
其他问题:
添加字节文章