Выбор непустых полей в столбце
Код:
"SELECT * FROM `zakaz` WHERE name="$name_filter' AND `day` LIKE '$day_filter' AND `month` LIKE '$month_filter' ORDER BY day, month"
Переменным через форму какие значения надо назначить????
Пример: выбрал пользователь в форме имя (name) "Иванов", день(day) не стал выбирать, и выбрал месяц (month) "Январь", и надо, чтобы вывелись строки для Иванова за весь январь месец (весь).
Причем в базе поля name, day, month заполнены.
P.S. Не отсылайте меня руководства читать, все облазил, но ничего толкового не нашел. Вот-так!
Код:
SELECT *
FROM zakaz
WHERE
name='Иванов' AND
month = 'Январь'
ORDER BY day, month
FROM zakaz
WHERE
name='Иванов' AND
month = 'Январь'
ORDER BY day, month
Всё же рекомендую ознакомится с литературой.
http://www.mysql.ru/docs/
Цитата:
Originally posted by killer186
Возможно многим вопрос покажется глупым, но как сделать так, чтобы через запрос MySQL в php скрипте выводились значения из всез непустых полей.
Переменным через форму какие значения надо назначить????
Пример: выбрал пользователь в форме имя (name) "Иванов", день(day) не стал выбирать, и выбрал месяц (month) "Январь", и надо, чтобы вывелись строки для Иванова за весь январь месец (весь).
Причем в базе поля name, day, month заполнены.
P.S. Не отсылайте меня руководства читать, все облазил, но ничего толкового не нашел. Вот-так!
Возможно многим вопрос покажется глупым, но как сделать так, чтобы через запрос MySQL в php скрипте выводились значения из всез непустых полей.
Код:
"SELECT * FROM `zakaz` WHERE name="$name_filter' AND `day` LIKE '$day_filter' AND `month` LIKE '$month_filter' ORDER BY day, month"
Переменным через форму какие значения надо назначить????
Пример: выбрал пользователь в форме имя (name) "Иванов", день(day) не стал выбирать, и выбрал месяц (month) "Январь", и надо, чтобы вывелись строки для Иванова за весь январь месец (весь).
Причем в базе поля name, day, month заполнены.
P.S. Не отсылайте меня руководства читать, все облазил, но ничего толкового не нашел. Вот-так!
Могу вкратце объяснить принцип того, что ты хочешь. Запрос формируешь динамически, в зависимости от переменных. Для начала присваиваешь главную часть запроса переменной.
Код:
$query = "SELECT * FROM `zakaz` WHERE 1=1 "
После этого обрабатываешь данные из формы.
Код:
if(!empty($name_filter)) {
$query.="AND name LIKE '%$name_filter%' ";
}
if(isset($day_filter)) {
$query.="AND day='$day_filter' ";
}
if(isset($month_filter)) {
$query.="AND month='$month_filter' ";
}
$query.="ORDER BY day, month";
$query.="AND name LIKE '%$name_filter%' ";
}
if(isset($day_filter)) {
$query.="AND day='$day_filter' ";
}
if(isset($month_filter)) {
$query.="AND month='$month_filter' ";
}
$query.="ORDER BY day, month";
Далее выполняешь запрос:
Код:
$result=mysql_query($query);
Это лишь принцип - логику выстраиваешь в коде сам.
Цитата:
Originally posted by mfender
Если не нужно выбирать по дню, то не надо и в запросе писать AND day LIKE '%'.
Всё же рекомендую ознакомится с литературой.
http://www.mysql.ru/docs/
Если не нужно выбирать по дню, то не надо и в запросе писать AND day LIKE '%'.
Код:
SELECT *
FROM zakaz
WHERE
name='Иванов' AND
month = 'Январь'
ORDER BY day, month
FROM zakaz
WHERE
name='Иванов' AND
month = 'Январь'
ORDER BY day, month
Всё же рекомендую ознакомится с литературой.
http://www.mysql.ru/docs/
Видимо суть вопроса совсем не поняли!!!!X)-
Цитата:
Originally posted by kasap
Могу вкратце объяснить принцип того, что ты хочешь. Запрос формируешь динамически, в зависимости от переменных. Для начала присваиваешь главную часть запроса переменной.
После этого обрабатываешь данные из формы.
Далее выполняешь запрос:
Это лишь принцип - логику выстраиваешь в коде сам.
Могу вкратце объяснить принцип того, что ты хочешь. Запрос формируешь динамически, в зависимости от переменных. Для начала присваиваешь главную часть запроса переменной.
Код:
$query = "SELECT * FROM `zakaz` WHERE 1=1 "
После этого обрабатываешь данные из формы.
Код:
if(!empty($name_filter)) {
$query.="AND name LIKE '%$name_filter%' ";
}
if(isset($day_filter)) {
$query.="AND day='$day_filter' ";
}
if(isset($month_filter)) {
$query.="AND month='$month_filter' ";
}
$query.="ORDER BY day, month";
$query.="AND name LIKE '%$name_filter%' ";
}
if(isset($day_filter)) {
$query.="AND day='$day_filter' ";
}
if(isset($month_filter)) {
$query.="AND month='$month_filter' ";
}
$query.="ORDER BY day, month";
Далее выполняешь запрос:
Код:
$result=mysql_query($query);
Это лишь принцип - логику выстраиваешь в коде сам.
А вот за этот ответ, спасибо, попробую по данной схеме, может сработает!
Цитата:
Originally posted by killer186
Видимо суть вопроса совсем не поняли!!!!X)-
Видимо суть вопроса совсем не поняли!!!!X)-
Видимо, вопросы задавать нужно корректно. А чтобы их задавать корректно, нужно хотя бы знать, о чём спрашивать. Для этого и существует литература, которую нужно читать, а не выдирать откуда-то строки и спрашивать "почему эта фигня у меня не работает", не разобравшись в том, что там вообще написано.