Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Поиск BEETWEN min and max

Сообщения:  [1-10]   [11-17] 

 
 автор: neadekvat   (07.11.2010 в 02:18)   письмо автору
 
   для: nazus   (07.11.2010 в 02:01)
 

Ох капец вы фигней занимаетесь.
Во-первых, лучше использовать код Trianon'а
Во-вторых, внимательно посмотрите, что получается в моем случаи - там при пустых значениях пришедших данных не "AND price <= 1", а просто единичка, т.е. она фактически не учитывается при поиске строк.
Собирайте запрос в отдельную переменную, а потом подставляйте ее в запрос.
А при отработке - выводите на экран свой запрос, вы же в слепую работаете.

<?php
$sql 
"Запрос";
echo 
$sql// выводим запрос, чтобы видеть, что от бд требуем
mysql_query($sql);

  Ответить  
 
 автор: nazus   (07.11.2010 в 02:01)   письмо автору
 
   для: Trianon   (07.11.2010 в 01:48)
 

Решил вот так

<?php
if (isset($_GET['min_price']) && !empty($_GET['min_price'])) $min_price =  (int) $_GET['min_price']; else $min_price 0
if (isset(
$_GET['max_price']) && !empty($_GET['max_price']))  $max_price =  (int) $_GET['max_price']; else  $max_pr =  mysql_query("SELECT MAX(price)  FROM data");
$temp mysql_fetch_array($max_pr);
$max_price=$temp[0];
?>

  Ответить  
 
 автор: Trianon   (07.11.2010 в 01:48)   письмо автору
 
   для: nazus   (07.11.2010 в 01:37)
 

в чем прайс-то?
В лирах чтоли?
Или Вы Землю оптом продаете?

  Ответить  
 
 автор: nazus   (07.11.2010 в 01:37)   письмо автору
 
   для: neadekvat   (07.11.2010 в 01:32)
 

ваш код работает если
else $max_price =100000000000;
но я точно не заю кокой может быть $max_price может быть больше.

  Ответить  
 
 автор: neadekvat   (07.11.2010 в 01:32)   письмо автору
 
   для: nazus   (07.11.2010 в 01:19)
 

А сейчас как?

  Ответить  
 
 автор: nazus   (07.11.2010 в 01:19)   письмо автору
 
   для: neadekvat   (07.11.2010 в 00:44)
 

Мне нужно если переменные пустие то достать все записи по этим полям
что-то типа

if(isset($_GET['min_price'])&& !empty($_GET['min_price'])){$min_price =  (int) $_GET['min_price']; } else {$min_price="MIN(price)";}
if(isset($_GET['max_price'])&& !empty($_GET['max_price'])){$max_price =  (int) $_GET['max_price']; } else {$max_price="MAX(price)";}
$result = mysql_query("SELECT * FROM data WHERE id LIKE '".$id."%'  AND price BETWEEN $min_price AND $max_price ORDER BY id");

плюс к этой веселухе я пытаюсь прикрутить постраничную навигацию

  Ответить  
 
 автор: psychomc   (07.11.2010 в 01:08)   письмо автору
 
   для: Trianon   (07.11.2010 в 01:02)
 

ай-яй-яй, всегда так серьезно относитесь к мелочам, а тут позволяете себе шутить)))

  Ответить  
 
 автор: Trianon   (07.11.2010 в 01:02)   письмо автору
 
   для: psychomc   (07.11.2010 в 01:01)
 

ofcourse Кэп :)

  Ответить  
 
 автор: psychomc   (07.11.2010 в 01:01)   письмо автору
 
   для: Trianon   (07.11.2010 в 00:53)
 

очипятка. в 3 строке в конце не $_GET['min_price'] должно быть, а $_GET['max_price']

  Ответить  
 
 автор: Trianon   (07.11.2010 в 00:58)   письмо автору
 
   для: neadekvat   (07.11.2010 в 00:55)
 

Если ставить задачу именно сократить код... Вы можете меня спокойно обскакать :))
Я как-то всё ж решил не усугублять краткостью в ущерб читабельности.

  Ответить  

Сообщения:  [1-10]   [11-17] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования