2013-03-20 70 views
0

我試圖改寫profile.php?ID = 1 & [email protected]到類似的東西regex/profile/9/[email protected]重寫規則模式不能工作的權利

但該規則沒有工作:

這是我做過什麼

PHP:

<a href="profile/<?php echo $row['userid']; ?>/<?=$row['email']; ?>"><?php echo $row['username']; ?></a><br /> 

htaccess的

RewriteEngine On 
RewriteBase /regex/ 
RewriteRule ^profile/([0-9]+)/(.*)$ profile.php?id=$1&email=$2 [L] 

有什麼問題?我仔細閱讀重寫,但我不知道哪裏是

+0

我不知道這是否會導致你一個嚴重的問題,但你不能使用URL中的「@」字符。除此之外,究竟是什麼問題,您是否在屏幕上或錯誤日誌中有任何錯誤消息? – jeroen 2013-03-20 22:05:33

+0

沒有錯誤,頁面是空白的,我用前面的一個作爲例子,而不是真的建立一些東西, --------- q:是$ _GET無法工作從url獲取值重寫? – 2013-03-20 22:07:05

回答

0

我知道答案

我想如果$ _GET將與URI像正則表達式/資料/ 2/98 所以$ _GET可以」正常工作的問題噸得到的信息取決於URI

,所以我使用的爆炸()來獲取ID爲這樣的:

$url=$_SERVER['REQUEST_URI']; 
$exp=explode("/",$url); 
$id=$exp[3]; 
$query=$db->query("select * from users where userid='$id'");