我正在嘗試使用多個複選框創建搜索功能。問題是,我的客戶隨機要求提供不同類別的清單。例如,他會要求列出有家屬的員工名單,有時候還會列出30歲以上的員工名單,有時甚至包括兩名員工。名單繼續,重點是他可以向我提供任何類別的名單。我想知道如何使用複選框和sql命令來實現此目的?先謝謝你。對不起,我可憐的英語btw。複雜搜索功能SQL
回答
您可以爲每個不同的複選框分配一個特定的語句,並使用一個表單來發布每個單獨的框。此外,如果所有查詢都在同一個表中運行,則可以添加固定語句並動態分配值。下面的代碼是如何完成的一個簡短例子。
$checkbox = "Name,Age" $checkbox2 = "category2" $query ="SELECT".$checkbox ."FROM TableName WHERE Category=".$checkbox2;
,這將給出爲
"$query = SELECT Name,Age FROM TableName WHERE Category=category2
我假設你是問如何建立你的地方陳述了從複選框輸入的最後聲明。
如果你有一個這樣的形式:
<form method="POST">
<input type="checkbox" name="test">
<input type="checkbox" name="test2">
<input type="checkbox" name="test3">
<input type="submit" name="submit">
</form>
你可以建立這樣的查詢:
if(isset($_POST['submit'])){
$queryParams = array();
if(isset($_POST['test'])){
$queryParams[] = 'column1 = "test"';
}
if(isset($_POST['test2'])){
$queryParams[] = 'column2 = "test2"';
}
if(isset($_POST['test3'])){
$queryParams[] = 'column3 = "test3"';
}
$where = (count($queryParams) > 0) ? 'WHERE ' . implode(' AND ', $queryParams) : '';
$query = 'SELECT column FROM table ' . $where;
echo $query;
}
結果:
SELECT column FROM table WHERE column1 = "test" AND column2 = "test2"
一個很好的答案,但我認爲這是違背SO的精神做出如此廣泛的假設。 – Strawberry
@strawberry,你能幫我解決我的問題嗎?非常感謝你。 –
你能提供一個你想要做的事情的小例子嗎? – Philipp
- 1. Jqgrid複雜搜索
- 2. SQL for oledbDataAdapter搜索功能
- 3. 搜索功能,SQL Server
- 4. 複雜搜索的SQL語法
- 5. 複雜的搜索SQL查詢
- 6. 複雜性和搜索
- 7. YouTube API和複雜搜索
- 8. 複雜的搜索設計
- 9. 複雜搜索查詢JPA
- 10. Lucene複雜結構搜索
- 11. 解析PFRelation複雜搜索
- 12. 複雜的搜索問題
- 13. 複雜custom_field搜索與meta_query
- 14. 搜索功能
- 15. 搜索功能
- 16. 搜索功能
- 17. 搜索功能
- 18. 搜索功能
- 19. 搜索功能
- 20. 星火SQL窗口功能向前看,複雜的功能
- 21. 搜索功能複製數據vb.net
- 22. 複雜全文搜索使用PlayFramework搜索/ Hibernate搜索
- 23. SQL搜索和比較功能
- 24. SQL搜索功能,通過外觀列
- 25. ASP.NET - 實現搜索功能和SQL
- 26. SQL搜索功能問題,LIKE和MATCH
- 27. 關係複雜功能NHibernate
- 28. OpenOffice Calc複雜功能
- 29. 使用SQL搜索時更高級的搜索引擎功能
- 30. jQuery搜索功能
歡迎的話,請取幾分鐘檢查[如何問](http://stackoverflow.com/help/how-to-ask)。 – Blank