2011-06-06 107 views
0

好吧,我正在建立一個擁有客戶檔案的網站。網絡用戶通過搜索功能找到這些mysql配置文件。配置文件頁面是一個php頁面,它通過通過地址傳遞的#id號碼加載所有mysql數據。這非常棒,但我的客戶基於自己的商業模式和需求,需要能夠將他們的個人資料綁定到一個看起來不錯的硬地址,並且沒有包含可變數據。基於動態配置文件的網站,也有硬鏈接?

讓我來舉個例子來解釋。想象一下這個網站叫做bizprofiles.com。用戶搜索數據庫並單擊搜索顯示中的鏈接。搜索只是把ID號的變量,因此地址可能類似於此:

http://www.bizprofiles.com/profile.php?id=1002937

業務不會想放一個地址有像,當他們希望客戶訪問該網站,所以我想知道如何可以有一個硬性地址,以某種方式仍然加載與MySQL數據的個人資料頁面。所以BIZ能有這樣一個地址:

http://www.bizprofiles.com/bizname

請我建立使用PHP和MYSQL這個網站的想法。預先感謝您提供給我的任何見解!

+0

你可以使用服務器端的URL重寫嗎?你有Apache嗎? – gurghet 2011-06-06 21:37:48

+0

您是否也可以將其重新命名爲'.htaccess'。 – ssapkota 2011-06-07 05:42:25

回答

1

分配每個配置unique-name(用戶名,可證明)並將其映射到在數據庫中的profile_id

編輯:

那麼這裏的基本思想:
你需要有.htaccess文件在包含文檔根:

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^profile/([a-zA-Z0-9]*)$ profile.php?user=$1 [L] 

上面的代碼是什麼是:將URL轉換像http://www.bizprofiles.com/profile/biznamehttp://www.bizprofiles.com/profile.php?user=bizname

所以你現在需要做的是更新profile.php到di根據$_GET["user"]中的unique-name提供的展開曲線。

+0

好的,但那麼服務器怎麼知道該怎麼做?我的意思是,服務器如何使用這個傳入的slug來查詢數據庫? – Throttlehead 2011-06-06 21:45:40

+0

@Jacob,檢查更新。 – ssapkota 2011-06-06 22:09:51

+0

您可能還想了解更多關於[mod_rewrite](http://httpd.apache.org/docs/current/mod/mod_rewrite.html)的信息。 – ssapkota 2011-06-06 22:10:59

0

您需要在數據庫中保留所謂的「slug」。您的餐桌「顧客」需要存儲將用於生成鏈接的唯一名稱。看Facebook,它可以讓你指定你想要的名字。

http://codex.wordpress.org/Glossary#Post_Slug