国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

PHP實現多個關鍵詞搜索查詢功能示例

2024-05-04 21:50:19
字體:
來源:轉載
供稿:網友

本文實例講述了PHP實現多個關鍵詞搜索查詢功能。分享給大家供大家參考,具體如下:

PHP對于數據庫的搜索主要通過使用SQL語句中的like子句來實現。如果同時搜索多個關鍵詞,可以使用union子句來將搜索結果合并起來。以下代碼實現了一個搜索頁面。

引用:

  1. <?php require_once(''Connections/conn.php''); ?> 
  2. <?php 
  3. $colname_rs = $_GET[''key'']; //獲得用戶輸入 
  4. $result = explode('','',$_GET[''key'']);//分解用戶輸入的多個關鍵詞,存入$result數組 
  5. mysql_select_db($database_conn$conn); //連接數據庫 
  6. //根據多個關鍵詞構建SQL語句 
  7. $query_rs = "SELECT * FROM ("
  8. for($i=0;$i<count($result);$i++) //根據每個搜索關鍵詞構建SQL語句 
  9. if($i==0) //對第一個關鍵詞,不使用UNION 
  10. $query_rs .= "SELECT * FROM searchtable WHERE title LIKE ''%$result[0]%'' 
  11. OR content LIKE ''%$result[0]%''"; 
  12. else //對其他關鍵詞,使用UNION連接 
  13. $query_rs .= " UNION SELECT * FROM searchtable WHERE title LIKE 
  14. ''%$result[$i]%'' OR content LIKE ''%$result[$i]%''"; 
  15. $query_rs .= ") T ORDER BY last_access DESC"//對搜索結果排序 
  16. //執(zhí)行SQL語句 
  17. $rs = mysql_query($query_rs$connor die(mysql_error()); 
  18. $row_rs = mysql_fetch_assoc($rs); 
  19. $totalRows_rs = mysql_num_rows($rs); 
  20. ?> 
  21. <html> 
  22. <head> 
  23. <title>Search</title> 
  24. <meta http-equiv="Content-Type" content="text/html; charset=gb2312"
  25. </head> 
  26. <body> 
  27. <form name="form1" method="get" action="?"
  28. <div align="center">請輸入要搜索關鍵詞: 
  29. <input name="key" type="text" size="64" value="<?php echo $_GET[''key''] ?>"
  30. <input type="submit" value="Submit"
  31. </div> 
  32. </form> 
  33. <p align="center"><B>當前關鍵詞: 
  34. <?php 
  35. for($i=0;$i<count($result);$i++) { //循環(huán)顯示關鍵詞 
  36. echo $result[$i]." "
  37. ?></B></p> 
  38. <p><hr></p> 
  39. <?php if($totalRows_rs>0) do { //顯示當前搜索結果 ?> 
  40. <p>* <a href="show.php?key=<?php echo $colname_rs ?>&id=<?php echo 
  41. $row_rs[''id'']; ?>"><?php echo $row_rs[''title'']; ?></a>(<?php echo 
  42. $row_rs[''click'']; ?> | <?php echo $row_rs[''last_access'']; ?>)</p> 
  43. <?php } while ($row_rs = mysql_fetch_assoc($rs)); ?> 
  44. </body> //Vevb.com 
  45. </html> 
  46. <?php 
  47. mysql_free_result($rs); 
  48. ?> 

這里,在頁面上可以使用英文逗號“,”來實現多個關鍵詞的搜索。這里,仍然將與數據庫的連接放到一個專門的PHP文件中以方便后期的修改。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 江孜县| 特克斯县| 昌平区| 陕西省| 绥芬河市| 旬邑县| 尤溪县| 修文县| 淅川县| 天津市| 长白| 娱乐| 陵水| 谢通门县| 岳西县| 泰来县| 财经| 九龙县| 郓城县| 荣成市| 纳雍县| 九江县| 城市| 安阳县| 大荔县| 遂川县| 兴化市| 长治市| 湟源县| 韩城市| 论坛| 茌平县| 高陵县| 乐亭县| 婺源县| 三台县| 荆州市| 蒙城县| 博罗县| 聂拉木县| 阿鲁科尔沁旗|