2011-02-04 18 views
0

我有一種表單,需要允許人們搜索遠足,遠足小組或遠足者,具體取決於他們在表單中選擇哪個單選按鈕。實現可能導致不同查詢的表格

很顯然,在這三種情況下,查詢都是在數據庫中的不同表格,並且具有不同的可用性。所以我可能不應該在一個地方處理所有這些。你們會同意嗎?

什麼可能是一個很好的實踐方法來處理這種情況?我嘗試將請求重定向到單個表單處理模塊,但是我無法在我嘗試重定向的URL中發出POST請求。

想法/建議表示讚賞, 亞歷

回答

1

我沒有看到從1種形式處理這個問題。傳遞搜索類型並基於類型,搜索條件等構建適當的查詢。即使查詢完全不同,聽起來好像您收集的輸入非常簡單。您可能希望以不同的頁面顯示結果,但處理可以通過一個表單和一個腳本輕鬆處理。

簡單的例子:

//get variables out of POST 

if ($search_type == "hike") 
{ 
    //put together a hike query, get results 
    //call script to display hikes 
} 
elseif ($search_type == "group") 
{ 
    //put together a group query, get results 
    //call script to display hikes 
} 
elseif(...) //etc, etc 
+0

我明白了,但由於更多的用戶體驗,這看起來並不是一個好的解決方案。問題1是,這將導致更多的混亂,如果/ elses將取決於這個if/else的結果。問題#2是因爲我有一個腳本,而不是一個完整的控制器,我不知道如何重定向到顯示不同數據的頁面:遠足/羣組/遠足者 – Genadinik 2011-02-04 19:18:43

+0

如果你擔心複雜的腳本處理各種搜索,您可能需要考慮單獨的表單。您甚至可以使用JavaScript來根據所選搜索類型更改腳本的操作。或者,您可以構建一個對象來處理搜索和結果,這些將在單獨的文件中定義。此外,您不必重定向以顯示結果,只需包含準備顯示結果的腳本即可。最後,如果「混亂」是一個嚴重的問題,考慮創建多個腳本並根據需要包含它們以執行各種行爲。 – 2011-02-04 19:45:47

1

你可以只檢查的單選按鈕的值,並調用不同的方法進行進一步的處理形式。這樣你可以將查詢和任何相關的代碼放在完全不同的文件中。 你究竟在哪裏看到問題呢?屏幕背後的處理是如何與用戶體驗相關的?

相關問題