简体   繁体   English

如何在 PHP 中重写我的个人资料 URL

[英]How can i rewrite My Profile URL in PHP

I'm having problem On how to redirect my website user profile page appear as mysite/profile.php?uid=1 to mysite/username我有问题关于如何重定向我的网站用户个人资料页面显示为 mysite/profile.php?uid=1 到 mysite/username

My HTACCESS code我的 HTACCESS 代码

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule profile/(.+) profile.php?uid=$1

My profile.php code我的 profile.php 代码

<?php
$uid = intval($_GET['uid']);  // Get user ID
$userd=$db->get_row("SELECT * FROM c_users WHERE userid='$uid'");
if(!$userd)
{
print "<title>User Profile :: ".$config->title."</title>";
err_msg("Profile","There is no such user or user has been deleted.");
}
print "<title>Profile of ".$userd->username." - ".$config->title."</title>";
if(isloggedin())
{
$db->update_data("UPDATE c_users SET userwhere='".$user->username." is viewing profile of $userd->username' WHERE userid='$user->userid'");
}
$gro=$db->get_row("SELECT * FROM c_groups WHERE groupid='$user->groupid'");
print "<table width=\"100%\" cellpadding=\"4\" cellspacing=\"0\" border=\"0\"><tr><td class=\"catSides\">";
print "User Profile of ".$userd->username."</td></tr>";
if($userd->avatar)
print "<tr><td class='row1' align='center'><img src=\"".$config->url."avatar/".$userd->avatar."\" width=\"60\" height=\"60\"/></br><img src='/images/icn/".$userd->usericon.".png' alt='' /> <font color=\"".$group[$userd->groupid]['color']."\">$userd->username</font> </td></tr>";
print "<tr><td class='row1'>Username: ".$userd->username."</td></tr>";
print "<tr><td class='row1'>Name: ".$userd->name."</td></tr>";
print "<tr><td class='row1'>Gender: ".$userd->gender."</td></tr>";
$birthday = explode('.',$userd->birthday);
echo '<tr><td class="row1">Birthday: '.$birthday[0].' / '.$birthday[1].' / '.$birthday[2].' ('.(date("Y",date("U")) - $birthday[2]).'t)';
?>
<?php
print "<tr><td class='row1'>Status: ".$group[$userd->groupid]['name']."</td></tr>";
print "<tr><td class='row1'>Rank: ";
if($userd->rank == "0" || $userd->rank == "")
{ print get_rank($userd->posts); }
else
{ print strip_tags($userd->rank); }
print "</td></tr>";
print "<tr><td class='row1'>Posts:  ".$userd->posts." </td></tr>";
print "<tr><td class='row1'>Topics:  ".$userd->threads." </td></tr>";
$fsize=$userd->upkb;
$decpos=strpos($fsize,".");
if($decpos!==false) $fsize=substr($fsize,0,$decpos+3);
$fsize1=$fsize;
print "<tr><td class='row1'>Uploaded: ".$userd->upload." ( ".$fsize." kb )</td></tr>";
$fsize=$userd->downkb;
$decpos=strpos($fsize,".");
if($decpos!==false) $fsize=substr($fsize,0,$decpos+3);
print "<tr><td class='row1'>Downloaded: ".$userd->download." ( ".$fsize." kb )</td></tr>";
if($gro->viewemail == "1")
print "<tr><td class='row1'>E-mail: <script type=\"text/javascript\"> document.write(\"".$userd->email."\");</script></td></tr>";
if($gro->viewip == "1")
print "<tr><td class='row1'>IP: ".$userd->ip."</td></tr>";
if($gro->viewbrowser == "1")
print "<tr><td class='row1'>Browser: ".htmlentities($userd->browser, ENT_QUOTES, 'UTF-8')."</td></tr>";
print "<tr><td class='row1'>Last Login: ".$userd->lastlogin."</td></tr>";
print "<tr><td class='row1'>Total Thanks: ".$userd->thanks."</td></tr>";
print "<tr><td class='row1'>Total Reputes: ".$userd->reputes."</td></tr>";
print "<tr><td class='row1'>Mobile No.: ".$userd->mb."&nbsp;</td></tr>";
print "<tr><td class='row1'>Country: ".$userd->country."</td></tr>";
print "<tr><td class='row1'>Address: ".$userd->location."&nbsp;</td></tr>";
if(isloggedin()){
print "<tr><td class='row1'><a href=\"pm/index.php?do=new&uid=".$userd->userid."\">Send ".$userd->username." A Message</a></td></tr>";
print "<tr><td class='row1'><a href=\"/show.php?uid=".$userd->userid."\">Show threads by ".$userd->username."</a></td></tr>";
}
if($group[$user->groupid]['canban'] == "1")
{
if($userd->banned == 1)
{
print "<tr><td class='row1'><a href=\"/blockuser.php?do=unban&uid=".$userd->userid."\" align=\"center\">UnBan ".$userd->username."</a></td></tr>";
}else{   print "<tr><td class='row1'><a href=\"/blockuser.php?do=ban&uid=".$userd->userid."\">Ban ".$userd->username."</a></td></tr>";   }
}
print "</table>";
include "profile_showtopic.php";
?>

MY c_users sql table我的 c_users sql 表

Can someone help me to solve this problem有人可以帮我解决这个问题吗

Try this :尝试这个 :

RewriteEngine on
RewriteCond %{THE_REQUEST} /profile\.php\?uid=([^\s]+) [NC]
RewriteRule ^ %1? [R,L]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ profile.php?uid=$1 [NC,L]

This will redirect ugly url to SEF format url :这会将丑陋的 url 重定向到 SEF 格式的 url :

 /profile.php?uid=foo

to

 /foo

or rewrite或重写

 /foo

to

 /profile.php?uid=foo

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

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