2013-08-05 35 views
0

我在發佈php數據時遇到了問題。 我有一個小網站,我做了一個php文件cat.php。 通常張貼ID就應該是這樣的cat.php?id=. 我問,如果我能做到這樣cat-ID.php.PHP GET數據問題

+0

如果你的意思是'cat- .php'是的一些URL重寫你的可能。但我認爲/ cat/ /會更好。 – Cyclonecode

+0

但cat.php是一個dynamique文件!這意味着我只有一個cat.php,但內容的變化取決於張貼的ID!所以文件從mysql數據庫中獲得與該id相關的信息! – checkopenport

+0

但如果訪問者繼續訪問此用戶www.example.com/cat-1.php,則託管服務沒有該名稱的文件!你能明白我的意思嗎? – checkopenport

回答

-1

你的第一個例子是POST,不GET(例如cat.php?id=5$_GET['id'])。不過,您可以使用htaccess重寫來創建類似cat-[id].html的URL,這樣更清晰。見例子:http://httpd.apache.org/docs/trunk/rewrite/remapping.html

更新:

國防部重寫的例子。這將是在.htaccess:

RewriteEngine On 
RewriteRule cat-([0-9]+)\.html cat.php?id=$1 [L] 

然後在PHP中,你可以:

<?php 
    echo $_GET['id']; 
?> 

,你應該能夠擊中/cat-5.html,看到5呼應。

+0

你能幫我做這個,例如:http://www.google.com/cat-1.php我如何使用htaccess使它像這樣http://www.google.com/ cat.php?id = 1 – checkopenport

+0

發佈示例。 – garrettmurray

+0

我不想用這種方式!我希望它像貓-ID.php不是/貓/ ID – checkopenport

0

我認爲以下應爲您的方案工作:

RewriteEngine on 
RewriteRule cat-([0-9]+)\.php cat.php?id=$1 [L] 

這將改寫/cat-3.phpcat.php?id=3/cat-666.phpcat.php?id=666等。

+0

完美地工作! – checkopenport

+0

你能告訴我如何將cat-id.html轉換爲cat.php嗎?id = – checkopenport

+0

只需將'RewriteRule'改爲'cat - ([0-9] +)\。html cat.php? id = $ 1 [L]' – Cyclonecode