当前位置:Gxlcms > PHP教程 > php数组实现多条件查询php字符串分割

php数组实现多条件查询php字符串分割

时间:2021-07-01 10:21:17 帮助过:32人阅读

";
  • echo "
  • ";
  • echo "
  • ";
  • echo "
  • ";
  • echo "
  • ";
  • }
  • }
  • else echo "
  • ";
  • }
  • $prev_page=$page-1;
  • $next_page=$page 1;
  • echo "";
  • echo " 第".$page."/".$page_count."页 ";
  • if ($page<=1){
  • echo "|第一页|";
  • }
  • else{
  • echo "|第一页|";
  • }
  • echo " ";
  • if ($prev_page<1){
  • echo "|上一页|";
  • }
  • else{
  • echo "|上一页|";
  • }
  • echo " ";
  • if ($next_page>$page_count){
  • echo "|下一页|";
  • }
  • else{
  • echo "|下一页|";
  • }
  • echo " ";
  • if ($page>=$page_count){
  • echo "|最后一页|";
  • }
  • else{
  • echo "|最后一页|";
  • }
  • echo "";
  • }
  • else{
  • echo "

    现在还没有房屋租赁信息!

    ";
  • }
  • echo "
    ";
  • ?>
  • 例子,php字符串分割:

    1. $keyword="asp php,jsp";
    2. $keyword=str_replace(" "," ",$keyword);
    3. $keyword=str_replace(" ",",",$keyword);
    4. $keyarr=explode(',',$keyword);
    5. for($index=0;$index{
    6. $whereSql .= " And (arc.title like '%$keyarr[$index]%' Or arc.keywords like '%$keyarr[$index]%') ";
    7. }
    8. echo $whereSql;

    为了同时支持空格与逗号,需要提前替换为统一的逗号,就是先将空格都替换为逗号,然后再通过逗号分割字符串,然后循环拼接sql查询语句。

    str_replace就是php中常用的字符串替换函数。 explode就是php中常用的字符串分割为数组的函数。

    PHP实现多条件查询实例代码

    经常会用到多条件查询,分享一个一个二手房屋查询的例子。 在本例中,要实现能够通过地理位置,物业类型,房屋价格,房屋面积及信息发布日期等多个条件查询到客户所需的资料。

    查询文件(search.php) 一、生成查询语句:

    1. $conn=mysql_connect("localhost","root","");
    2. $db=mysql_select_db("lingyun");
    3. $query="select * from message where tradetype='".$tradetype."'"; //交易类型,如出租,出售
    4. $SQL=$SQL . "wuye='" . $wuye . "'";
    5. if($housetype!="不限"){
    6. $query.=" && housetype='".$housetype."'"; //房屋类型,如二室一厅,三室二厅
    7. }
    8. if($degree!="不限"){
    9. $query.=" && degree='".$degree."'"; //新旧程度
    10. }
    11. if($wuye!="不限"){
    12. $query.=" && wuye='".$wuye."'"; //物业类型 如住房,商铺
    13. }
    14. if($price2!=""){
    15. switch($price1){
    16. case "大于":
    17. $query.=" && price>'".$price2."'"; //价格
    18. break;
    19. case "等于":
    20. $query.=" && price='".$price2."'";
    21. break;
    22. case "小于":
    23. $query.=" && price<'".$price2."'";
    24. break;
    25. }
    26. }
    27. if($area2!=""){
    28. switch($area1){
    29. case "大于":
    30. $query.=" && area>'".$area2."'"; //面积
    31. break;
    32. case "等于":
    33. $query.=" && area='".$area2."'";
    34. break;
    35. case "小于":
    36. $query.=" && area<'".$area2."'";
    37. break;
    38. }
    39. }
    40. switch($pubdate){ //发布日期
    41. case "本星期内":
    42. $query.=" && TO_DAYS(NOW()) - TO_DAYS(date)<=7";
    43. break;
    44. case "一个月内":
    45. $query.=" && TO_DAYS(NOW()) - TO_DAYS(date)<=30";
    46. break;
    47. case "三个月内":
    48. $query.=" && TO_DAYS(NOW()) - TO_DAYS(date)<=91";
    49. break;
    50. case "六个月内":
    51. $query.=" && TO_DAYS(NOW()) - TO_DAYS(date)<=183";
    52. break;
    53. }
    54. if($address!=""){
    55. $query.=" && address like '%$address%'"; //地址
    56. }
    57. if(!$page){
    58. $page=1;
    59. }
    60. ?>

    二、输出查询结果:

    1. if ($page){
    2. $page_size=20;
    3. $result=mysql_query($query);
    4. #$message_count=mysql_result($result,0,"total");
    5. $message_count=10;
    6. $page_count=ceil($message_count/$page_size);
    7. $offset=($page-1)*$page_size;
    8. $query=$query." order by date desc limit $offset, $page_size";
    9. $result=mysql_query($query);
    10. if($result){
    11. $rows=mysql_num_rows($result);
    12. if($rows!=0){
    13. while($myrow=mysql_fetch_array($result)){
    14. echo "
    $myrow[id] $myrow[tradetype] $myrow[address] $myrow[wuye]($myrow[housetype])[$myrow[date]]";
  • echo "
  • 详细内容


    没有找到满足你条件的记录& lt;/td>

    人气教程排行