SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 13.06.2009 17:20:45

elina732
Участник
Зарегистрирован: 13.06.2009
Сообщений: 8

Как сделать множество запросов - выбор из БД?

Есть БД, нужно выбрать из нее все записи, отвечающие параметрам поиска, это здесь:
http://informcargo.com

Но это не получается


<?php

if ($_POST[submit] == "Search") {

$stringq = $_POST['ad_izstranaa'];
$stringw = $_POST['ad_vstranugruza'];
$stringe = $_POST['ad_zipa'];
$stringr = $_POST['ad_citya'];
$stringt = $_POST['ad_imagruzaa'];
$stringy = $_POST['ad_vesgruzaa'];
$stringu = $_POST['ad_obiomgruzaa'];
$stringi = $_POST['ad_vysotagruzaa'];
$stringo = $_POST['ad_shirinagruzaa'];
$stringp = $_POST['ad_dlinagruzaa'];
$stringa = $_POST['ad_tipkuzovaa'];
$strings = $_POST['ad_tipzagruzkigruzaa'];
$stringd = $_POST['ad_dengruzaa'];
$stringf = $_POST['ad_denotpravgruzapoa'];
$stringg = $_POST['ad_postoiannoa'];
$stringh = $_POST['ad_razresheniyaa'];
$stringj = $_POST['ad_adoplatagruzadogovora'];
$stringk = $_POST['ad_stavkagruzaruba'];
$stringl = $_POST['ad_kindofa'];
$stringz = $_POST['ad_statea'];
$stringx = $_POST['namea'];
$stringc = $_POST['ad_phonea'];
$stringv = $_POST['emaila'];
$stringb = $_POST['ad_headlinea'];
$stringn = $_POST['ad_texta'];

//Установление соединения с данными
     
  $conn = mysql_connect('localhost','yyy','xxx');
 
  //Выбор базы данных
 
  $db = mysql_select_db('informc_cargoinf', $conn);
     
  //Создание оператора SQL SELECT
     
  $sql = "SELECT * FROM jos_adsmanager_ads WHERE ad_izstrana = '$stringq'  OR ad_vstranugruz = '$stringw'  OR ad_zip = '$stringe'  OR ad_city = '$stringr'  OR ad_imagruza = '$stringt'  OR ad_vesgruza = '$stringy'  OR ad_obiomgruza = '$stringu'  OR ad_vysotagruza = '$stringi'  OR ad_shirinagruza = '$stringo'  OR ad_dlinagruza = '$stringp'  OR ad_tipkuzova = '$stringa'  OR ad_tipzagruzkigruza = '$strings'  OR ad_dengruza = '$stringd'  OR ad_denotpravgruzapo= '$stringf'  OR ad_postoianno = '$stringg'  OR ad_razresheniya = '$stringh'  OR ad_adoplatagruzadogovor = '$stringj'  OR ad_stavkagruzarub = '$stringk'  OR ad_kindof = '$stringl'  OR ad_state = '$stringz'  OR name = '$stringx'  OR ad_phone = '$stringc'  OR email = '$stringv'  OR ad_headline = '$stringb'  OR ad_text = '$stringn' OR category = '1'";
     
  $rs = mysql_query($sql, $conn);
}
?>
 


Дальше тарам теги и вывод


<div>
 
 <?php
 
 if(!empty($_POST))
 {
   while($row = mysql_fetch_array($rs))
   {
   echo "Name: " .$row['id'] . "  ";
   echo  $row['name'] . "<br/>";
   echo "Telephone: " . $row['ad_zip'] . "<br/>";
   echo "Email: " . $row['ad_city'] . "<br/>";
   }
   mysql_close($conn);
 }    
 ?>
 
 </div>
 


Вывод не художественно оформлен, но почему не делается выборка, я что ли такая тупая

Отредактированно elina732 (17.06.2009 04:24:20)

Неактивен

 

#2 15.06.2009 08:34:48

elina732
Участник
Зарегистрирован: 13.06.2009
Сообщений: 8

Re: Как сделать множество запросов - выбор из БД?

Все правильно, но делает только выбор с двумя условиями OR

Как сделать чтобы выбор был больше?

Неактивен

 

#3 15.06.2009 19:04:47

skeef
Участник
Зарегистрирован: 29.01.2009
Сообщений: 17

Re: Как сделать множество запросов - выбор из БД?

Строка
IF(!empty($_POST))
ИМХО бессмысленна, т.к. в интернет магазине (судя по префиксу таблицы jos_ это Joоmla) в $_POST по любому, что-то будет не зависимо от ваших действий.
А не пускает Вас именно Joomla, т.к. вы не используете встроенный класс для работы с базой.

Ссылка http://informcargo.ru не работает

Отредактированно skeef (15.06.2009 19:06:00)

Неактивен

 

#4 15.06.2009 21:12:44

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Как сделать множество запросов - выбор из БД?

Кажется, код может работать и на независимом соединении; но вопрос не понятен — что не получается? smile
Ссылка и правда не работает, так что посмотреть, увы, не в силах.

Неактивен

 

#5 17.06.2009 04:25:09

elina732
Участник
Зарегистрирован: 13.06.2009
Сообщений: 8

Re: Как сделать множество запросов - выбор из БД?

Спасибо, ссылку исправила, попробую создать базу независимую от джумлы

Неактивен

 

#6 17.06.2009 20:00:19

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Как сделать множество запросов - выбор из БД?

Визуально работает smile

Неактивен

 

#7 18.06.2009 01:27:28

Diter
Участник
Зарегистрирован: 21.03.2009
Сообщений: 5

Re: Как сделать множество запросов - выбор из БД?

elina732 написал:

Есть БД, нужно выбрать из нее все записи, отвечающие параметрам поиска, это здесь:
http://informcargo.com

Но это не получается


...
if ($_POST[submit] == "Search") {
 

...
Вывод не художественно оформлен, но почему не делается выборка, я что ли такая тупая

Вопрос не имеет никакого отношения к MySQL. smile

И проблема во в этом: $_POST[submit]   <-- что такое это `submit`? Имя кнопки? Тогда надо ставить кавычки:


...
if ($_POST['submit'] == "Search") {
...
 

Неактивен

 

#8 18.06.2009 10:16:58

elina732
Участник
Зарегистрирован: 13.06.2009
Сообщений: 8

Re: Как сделать множество запросов - выбор из БД?

нет, имя кнопки не виновато

Неактивен

 

#9 18.06.2009 11:19:33

elina732
Участник
Зарегистрирован: 13.06.2009
Сообщений: 8

Re: Как сделать множество запросов - выбор из БД?

сделала независимую от джумлы базу, все равно работает только по 4 параметрам поиска

http://informcargo.com/index3.php

Неактивен

 

#10 18.06.2009 17:53:24

Magz
Гуру
Откуда: Москва
Зарегистрирован: 18.09.2007
Сообщений: 112

Re: Как сделать множество запросов - выбор из БД?

По Вашей ссылке, когда делаешь запрос, открывается пустая страница. А можете на нее вывести запрос, который получается после объединения?
echo $sql;

Неактивен

 

#11 08.07.2009 05:20:08

elina732
Участник
Зарегистрирован: 13.06.2009
Сообщений: 8

Re: Как сделать множество запросов - выбор из БД?

Разобралась, задачу можно решить комбинированием операторов AND и OR

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson