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]   

> Без описания
tomas
Отправлено: 29 Ноября, 2011 - 11:37:01
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Нояб. 2011  


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




Здраствуйте!

Скажу сразу поиском пользовался но не нашел (или не понял то что мне надо)

Ситуация следующая. Создал форму с чекбоксами 6 значений, и скрипт поиска на PHP с запросом к Базе, и выводом результатов.
В базе есть таблица c полями где в одном из полей - 6 значений из формы. если выбираю одну то выводит значение то которое я выбрал, но вот я начинающий в SQL запросах и не знаю как сделать так, чтобы выбрав все 6 чекбоксов вывело мне соответственно все 6 значений. Тоесть как составить запрос с несколькими значениями (переменными в моем случае)?
Или может ссылку дайте на хорошую литературу.


Для одного значения так у меня работает $querry = (SELECT * FROM table WHERE check = '$var1'); $var1 = переменная содржащая результат 1 го чекбокса.
 
 Top
EuGen Администратор
Отправлено: 29 Ноября, 2011 - 11:48:33
Post Id


Профессионал


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


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




SELECT * FROM `table` WHERE `check` IN ('$var1', '$var2', {...}, '$varN')


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
tomas
Отправлено: 29 Ноября, 2011 - 12:12:09
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Нояб. 2011  


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




Спасибо, хотел бы на остаток спросить о хорошой литературе, по поводу SQL что бы вы предложили прочесть?
 
 Top
Panoptik
Отправлено: 29 Ноября, 2011 - 12:19:03
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2493
Дата рег-ции: Нояб. 2011  
Откуда: Одесса, Украина


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




я sql изучал по этому: http://www[dot]interface[dot]ru/home[dot]asp?artId=10280


-----
Just do it
 
 Top
tomas
Отправлено: 29 Ноября, 2011 - 12:20:27
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Нояб. 2011  


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




Спасибо за помощь, очень благодарен...
 
 Top
EuGen Администратор
Отправлено: 29 Ноября, 2011 - 12:22:02
Post Id


Профессионал


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


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




Стандарт ANSI SQL неплохо бы знать - можете почитать здесь:
http://www[dot]w3schools[dot]com/sql/sql_syntax[dot]asp

Если интересны особенности SQL в MySQL - то официальную документацию:

http://dev[dot]mysql[dot]com/doc/refman/[dot][dot][dot]/sql-syntax[dot]html

- русскоязычная документация здесь: http://www[dot]mysql[dot]ru/docs/ - для начала подойдет Грабер http://www[dot]mysql[dot]ru/docs/gruber/

об отличиях MySQL-реализации от ANSI или других стандартов - здесь:

http://www[dot]mysql[dot]ru/docs/man/Compatibility[dot]html


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
exedmxexe
Отправлено: 25 Января, 2012 - 11:05:05
Post Id


Новичок


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


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




у меня вопрос по той же теме =) у меня форма поиска сделана через селект с кнопкой натйти, тоесть выбираю любые значения и жму найти. Но если одно из значений не выбрано, то запрос не срабатывает. Как написать запрос чтобы он выводил данные даже если не указан 1 или 2 из 3 значений.
 
 Top
Zuldek
Отправлено: 25 Января, 2012 - 11:42:38
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2122
Дата рег-ции: Июнь 2010  


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




exedmxexe пишет:
у меня вопрос по той же теме =) у меня форма поиска сделана через селект с кнопкой натйти, тоесть выбираю любые значения и жму найти. Но если одно из значений не выбрано, то запрос не срабатывает. Как написать запрос чтобы он выводил данные даже если не указан 1 или 2 из 3 значений.


в хтмл есть такое понятие как значение select поумолчанию. Его и используйте. Написать поиск без условий поиска очень просто - SELECT * FROM table_name. Если все-таки одно из условий поиска будет указано, то все элементарно - собирайте данные из селекта в массив, если массив пустой то поиск не производить если есть элементы в массиве - то добавляйте их все запрос извлечения данных, разделяя AND, OR

(Отредактировано автором: 25 Января, 2012 - 11:45:43)

 
 Top
exedmxexe
Отправлено: 25 Января, 2012 - 11:48:18
Post Id


Новичок


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


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




Я так понял вот так?
CODE (SQL):
скопировать код в буфер обмена
  1. (SELECT * FROM server WHERE moderation = '1' AND rate = '$rate2' AND chronicle = '$chronicle2' AND platform = '$platform2')
?

Но в таком случае если я оставлю 2 поля пустым а в rate выберу значение, то он выведет не все поля с rate например равное 7. Так как в chronicle и platform по умолчанию будут стоять не совпадающие со строкой значения.

(Отредактировано автором: 25 Января, 2012 - 12:05:27)

 
 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