Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.05.2010, 01:49   #1
serres
Пользователь
 
Регистрация: 04.11.2007
Сообщений: 77
По умолчанию if в запросе sql

$q_all_view = ("SELECT `id_preces`, `p_name`, `p_datetime`, `p_cena`, `p_apraksts`, `id_tips_p` FROM `t_preces` WHERE `id_tips_p`='".mysql_escape_string( $_GET['tip'])."'ORDER BY `p_datetime` DESC");

как записать одним селектом такую штуку: Если переменая $_GET['tip'] пустая или не существует то делать селект без WHERE а если существует выполнять то что написано выше.

Можно ли это както указать в одном селекте чтобы два не писать
serres вне форума Ответить с цитированием
Старый 27.05.2010, 08:41   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

а почему именно а SQL запросе?
что так нельзя?
PHP код:
if (empty($_GET['tip']) or !(isset($_GET['tip'])) 
{
$q_all_view = ("SELECT `id_preces`, `p_name`, `p_datetime`, `p_cena`, `p_apraksts`, `id_tips_p` FROM `t_preces` ORDER BY `p_datetime` DESC");}
else
{
$q_all_view = ("SELECT `id_preces`, `p_name`, `p_datetime`, `p_cena`, `p_apraksts`, `id_tips_p` FROM `t_preces` WHERE `id_tips_p`='".mysql_escape_string$_GET['tip'])."'ORDER BY `p_datetime` DESC");} 
ADSoft вне форума Ответить с цитированием
Старый 28.05.2010, 12:32   #3
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Цитата:
Сообщение от serres Посмотреть сообщение
$q_all_view = ("SELECT `id_preces`, `p_name`, `p_datetime`, `p_cena`, `p_apraksts`, `id_tips_p` FROM `t_preces` WHERE `id_tips_p`='".mysql_escape_string( $_GET['tip'])."'ORDER BY `p_datetime` DESC");

как записать одним селектом такую штуку: Если переменая $_GET['tip'] пустая или не существует то делать селект без WHERE а если существует выполнять то что написано выше.

Можно ли это както указать в одном селекте чтобы два не писать
PHP код:
$add = ($_GET['tip'] != '') ? " WHERE `id_tips_p`='".mysql_escape_string($_GET['tip'])."'" "";
$q_all_view "SELECT `id_preces`, `p_name`, `p_datetime`, `p_cena`, `p_apraksts`, `id_tips_p` FROM `t_preces`".$add." ORDER BY `p_datetime` DESC"
З.Ы. Нафига скобки в присваивании переменной $q_all_view? О_о
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Группировка в SQL запросе wm_leviathan SQL, базы данных 8 09.03.2010 13:36
Переменные в запросе SQL Talemir БД в Delphi 2 22.08.2009 21:22
Ковычки в SQL запросе XPAiN БД в Delphi 13 22.02.2008 13:36
Ошибка SQL запросе. EVG44 БД в Delphi 2 21.10.2007 22:42
Ошибка в SQL запросе eremin БД в Delphi 2 23.06.2007 07:13