Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: помогите с выборкой

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
mark1
Отправлено: 19 Октября, 2009 - 12:24:20
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Окт. 2009  


Помог: 0 раз(а)




есть таблица data в ней id других таблиц,выборка идет по селектам,надо чтоб при заполнении какого нибудь из селектов,выборка шла по нему,а если все заполнены то по всем условиям



PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $cat_id = isset($_POST['cat'])? $_POST['cat'] : null;  
  4. $city_id = isset($_POST['city'])? $_POST['city'] : null;
  5. $kom_id = isset($_POST['komnati'])? $_POST['komnati'] : null;  
  6. $sd_id = isset($_POST['sdelka'])? $_POST['sdelka'] : null;
  7. $plan_id = isset($_POST['planirovka'])? $_POST['planirovka'] : null;  
  8. $mat_id = isset($_POST['material'])? $_POST['material'] : null;
  9.  
  10.  
  11.  
  12.  
  13.  
  14. $where_cat_id = " cat_id = '".$cat_id."' ";
  15. $where_city_id = " city_id = '".$city_id."' ";
  16. $where_kom_id = " kom_id = '".$kom_id."' ";
  17. $where_sd_id = " sd_id = '".$sd_id."' ";
  18. $where_plan_id = " plan_id = '".$plan_id."' ";
  19. $where_mat_id = " mat_id = '".$mat_id."' ";
  20.  
  21.  
  22. if ($сat_id !== "") $where_cat_id = " cat_id = '$cat_id' AND ";
  23. else $where_cat_id == "";
  24.  
  25. if ($city_id !== "") $where_city_id = " city_id = '$city_id' AND ";
  26. else $where_city_id == "";
  27.  
  28. if ($kom_id !== "") $where_kom_id = " kom_id = '$kom_id' AND ";
  29. else $where_kom_id == "";
  30.  
  31. if ($sd_id !== "") $where_sd_id = " sd_id = '$sd_id' AND ";
  32. else $where_sd_id == "";
  33.  
  34.  
  35. if ($plan_id !== "") $where_plan_id = " plan_id = '$plan_id' AND ";
  36. else $where_plan_id == "";
  37.  
  38.  
  39. if ($mat_id !== "") $where_mat_id = " mat_id = '$mat_id' AND ";
  40. else $where_mat_id == "";
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  if($_POST['action']=="search")
  47. {
  48.  
  49.  
  50.  
  51. $sql = "SELECT * FROM data ";
  52.  
  53. if (($where_cat_id !== "")||($where_city_id !== "")||($where_kom_id !== "")||($where_sd_id !== "")||($where_plan_id !== "")||($where_mat_id !== "")) $sql .= " WHERE ";
  54.  
  55. $sql .= " " . $where_cat_id . " ";
  56. $sql .= " " . $where_city_id . " ";
  57. $sql .= " " . $where_kom_id . " ";
  58. $sql .= " " . $where_sd_id . " ";
  59. $sql .= " " . $where_plan_id . " ";
  60. $sql .= " " . $where_mat_id . " ";
  61.  
  62. $sql = substr_replace($sql, ' ', -5);
  63.  
  64.  
  65.  
  66.  
  67.  
  68. echo $sql;
  69. $query = mysql_query ( $sql );
  70. if(!$query) exit("Ошибка извлечения данных ".mysql_error());
  71.  $myrow = mysql_fetch_array ( $query );
  72. echo mysql_error ();
  73. echo 'Что же у нас на выходе - ';
  74. var_dump ( $myrow );
  75.   while ($myrow = mysql_fetch_array($query))
  76. {
  77. //категории
  78. $categ=$myrow ["cat_id"];
  79. $res1=mysql_query ("SELECT name FROM cat where cat_id='$categ'",$dbh);
  80. $myrow1=mysql_fetch_array ($res1);
  81.  
  82.  
  83. //сделка
  84. $sdel=$myrow ["sd_id"];
  85. $res2=mysql_query ("SELECT name FROM sdelka where sd_id='$sdel'",$dbh);
  86. $myrow2=mysql_fetch_array ($res2);
  87.  
  88.  
  89.  
  90.  
  91. // комнаты
  92. $komn=$myrow ["kom_id"];
  93. $res3=mysql_query ("SELECT kol FROM komnati where kom_id='$komn'",$dbh);
  94. $myrow3=mysql_fetch_array ($res3);
  95.  
  96.  
  97.  
  98. //улица
  99. $cit=$myrow ["city_id"];
  100. $res4=mysql_query ("SELECT name FROM city where city_id='$cit'",$dbh);
  101. $myrow4=mysql_fetch_array ($res4);
  102.  
  103.  
  104.  
  105.  
  106. //планировка  
  107. $plan=$myrow ["plan_id"];
  108. $res5=mysql_query ("SELECT name FROM planirovka where plan_id='$plan'",$dbh);
  109. $myrow5=mysql_fetch_array ($res5);
  110.  
  111. //материал
  112. $mat=$myrow ["mat_id"];
  113. $res6=mysql_query ("SELECT name FROM material where mat_id='$mat'",$dbh);
  114. $myrow6=mysql_fetch_array ($res6);
  115.  
  116.  
  117.  
  118. //этаж  
  119. $et=$myrow ["et_id"];
  120. $res7=mysql_query ("SELECT name FROM etag where et_id='$et'",$dbh);
  121. $myrow7=mysql_fetch_array ($res7);
  122.  
  123.  
  124.  
  125.  
  126.  
  127. //площадь  
  128. $psh=$myrow ["psh_id"];
  129. $res8=mysql_query ("SELECT name FROM ploshad where psh_id='$psh'",$dbh);
  130. $myrow8=mysql_fetch_array ($res8);
  131.  
  132.  
  133.  
  134.  
  135.  
  136. //цена  
  137. $cen=$myrow ["cen_id"];
  138. $res9=mysql_query ("SELECT name FROM cena where cen_id='$cen'",$dbh);
  139. $myrow9=mysql_fetch_array ($res9);
  140.  
  141.  
  142.  
  143.  
  144.  
  145. printf ("<table  ><tr><td class='t2'>%s</td><td class='t2'>%s</td><td class='t2'>%s</td><td class='t2'>%s</td><td class='t2'>%s</td><td class='t2'>%s</td><td class='t2'>%s</td><td class='t2'>%s</td><td class='t2'>%s</td></tr></table>",$myrow4["name"],$myrow1["name"],$myrow2["name"],$myrow3["kol"],$myrow5["name"],$myrow6["name"],$myrow7["name"],$myrow8["name"],$myrow9["name"]);
  146.  
  147. }
  148.  
  149.  
  150.  
  151. }?>
  152.  
  153.  
 
 Top
valenok
Отправлено: 19 Октября, 2009 - 12:28:10
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




SELECT a FROM b WEHRE c AND d AND e AND f AND ...


-----
Truly yours, Sasha.
 
My status
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB