2013-11-22 55 views
1

我做了一個網頁,用戶可以來創建一個博客,從創建一個新的博客頁的摘錄: -我該如何重定向?

<tr> 
<td>Blog URL</td> 
<td>www.foo.com/blogs/ <input type="text" name="ns"></td> 
</tr> 

現在,用戶將在文本框中輸入的東西,想的用戶輸入foobar ..那麼我如何設置一個.htaccess的設置,以便用戶可以通過www.foo.com/blogs/foobar而不是www.foo.com/blogs.php訪問該博客? id = somethinghere ..

這是如何實現的?

謝謝。

更新

感謝@anubhava爲htaccess的代碼,但它似乎並不正確地工作,這就是我現在所擁有的。

blogs.php

<?php 
session_start(); 
include 'dbconnector.php'; 
include 'functions.php'; 
$owner=$_SESSION['username']; 
$id=$_GET['id']; 

$equery="select * from events where eventid = '" . $id . "'"; 
$resulte=mysql_query($resulte) or die (mysql_error($db)); 
$rowe=mysql_fetch_assoc($resulte); 
if((isset($_SESSION['logged'])) && ($_SESSION['logged']==1)) 
{ 
?> 

Name : <?php echo ($rowe['name']); ?> 
Zipcode : <?php echo ($rowe['zipcode']); ?> 
<?php 
} 
else 
{ 
    header('Location:/login/'); 
    exit(); 
} 
?> 

此代碼應該已經爲ID的東西博客拔起記錄,然後重寫URL來www.foo.com/blogs/namehere如果我直接打開www.foo.com/blogs/namehere

namehere是用戶在創建博客時輸入的名稱,但唯一的錯誤是我找不到404頁面。 這裏真的很困惑,請解釋這是如何工作的。 謝謝。

+1

爲什麼不只是代替所有請求路由到/博客/在你的htaccess /blogs.php,通過URL的其餘部分作爲查詢字符串PARAM?您無需爲每個博客修改它。 –

+0

不應該'$ resulte = mysql_query($ resulte)'是'$ resulte = mysql_query($ equery)'?或者,這是一個錯字? –

+0

@ Fred-ii-,這是一個錯字,感謝您指出。 – Ankur

回答

1

將這個代碼在你DOCUMENT_ROOT/.htaccess文件:

RewriteEngine On 
RewriteBase /m/ 

RewriteRule ^blogs/(.+)$ blogs.php?id=$1 [L,QSA] 
+0

謝謝你的代碼@anubhava, 這裏有另外一件事,我將如何獲取關於該特定博客的所有細節(從數據庫)?例如,www.foo.com/blogs/foobar – Ankur

+0

更新了我以前的問題,請你看看? – Ankur

+0

'http://www.foo.com/blogs.php?id = foobar'是否適合你? – anubhava

相關問題