2011-02-13 18 views
0

我已经在我的.htaccess文件如下因素:mod_rewrite我在想什么?

Options +FollowSymLinks 
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^/]*)/$ /index.php?p=$1 [L] 

这种改变来自

http://domain.com/index.php?p=101 

http://domain.com/101/ 

这是一切优秀的URL。但!在我的index.php我有一段代码列出这样的链接:

//getting links 
$sqlLinks = "SELECT pid, linkh1 FROM pages WHERE draft= '0' AND pid > 100 ORDER BY linkh1 ASC"; 

$query = mysqli_query($myConnection, $sqlLinks) or die (mysqli_error()); 
$Links = ''; 
while ($row = mysqli_fetch_array($query)) { 
    $pid = $row["pid"]; 
    $linklabel = $row["linkh1"]; 

$Links .= '<li><a href="http://domain.com/index.php?p=' . $pid . '">' . $linklabel . '</a></li>> 

当我点击或链接悬停在它仍然显示

http://domain.com/index.php?p=101 link. 

我不明白是我怎样才能使各个环节自动出现像:

http://domain.com/101/ 
http://domain.com/102/ 
http://domain.com/103/ 
etc... 

回答

3

.htaccess文件路径传入 REQ uests。

要重写传出链接,为什么不恰当地格式化呢?

$Links .= '<li><a href="http://domain.com/' . $pid . '">' . $linklabel . '</a></li>' 
0

mod重写只会照顾重写您的请求。

它与您在网站上输出的html代码无关。

有可用的模块,可以做后期处理,并采取照顾,但他们是veyr少见

通常的方式是打印你的链接,就像你想他们有