2011-01-05 52 views
0

我在我的網站主頁上有一個表單,其中包含用於輸入成員名稱的框。從那裏表單目前提交給一個PHP腳本,它只是調用Header('Location: blah);,然後將它們指向/ search/username /。Javascript重定向vs表單提交到php腳本

這將是值得的(我假設是這樣)在JavaScript中做重定向,以便引導他們直接到/搜索/用戶名?如果是的話我怎麼會去使用JavaScript重定向,只是普通的老window.location = "http://www.google.com/"

+0

http://matthewjamestaylor.com/blog/how-to-post-forms-to-clean-rewritten-urls – dqhendricks 2011-01-05 23:54:37

回答

2

服務器端總是更好的方法,因爲它比客戶端方法更難繞過。 請務必在使用標題重定向後添加退出功能。

ob_clean(); 
header('Location: target.php'); 
exit(); 
+0

+1除了事實,如果JS被禁用它會完全失敗用戶。 – 2011-01-06 01:05:50

+0

非常好的一點。看起來我會保持它的狀態。謝謝。 – Jack 2011-01-06 09:11:44

0

要做到這一點在JavaScript中,你可以:

<input id="username" type="text" onclick="" /> 
<input type="button" onclick="window.location='/search/'+document.getElementById('username').value" /> 

你可以一些驗證添加到事件也是如此。

難道是值得的

那要看你的具體情況。如果你的服務器每秒獲得100個這樣的請求,那麼很確定。否則,你做它的方式真的沒有關係。