[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Запрос в MySQL
MaximGQ
Помогите плиз с запросом. Буду очень признателен!

код:

<?php
if ($_POST['size'] == 'all')
$colname_size_collection = "'2x4','3x5','4x6','5x8','6x9','9x12','overs ized','runner','indef'";
else $colname_size_collection = "'".$_POST['size']."'";

mysql_select_db($database_Rugs, $Rugs);
$query_collection = sprintf("SELECT * FROM rugs WHERE col_id = %s AND `size` IN ($colname_size_collection) ORDER BY `index` ASC", GetSQLValueString($colname_collection, "int"));
$collection = mysql_query($query_collection, $Rugs) or die(mysql_error());
$row_collection = mysql_fetch_assoc($collection);
$totalRows_collection = mysql_num_rows($collection);
?>


Если $_POST['size'] равно 2х4, 3х5, или другое цифровое значение, то все ок. А если oversized или runner, то Запрос выдает все подряд записи....



Спустя 9 минут, 38 секунд (19.12.2011 - 10:00) sergeiss написал(а):
Какого типа поле size в таблице (целое, строка или еще что)?

Спустя 58 минут, 43 секунды (19.12.2011 - 10:59) MaximGQ написал(а):
text
utf8_unicode_ci

Спустя 4 минуты, 19 секунд (19.12.2011 - 11:03) inpost написал(а):
MaximGQ
Ну для начала, текстовое значение надо брать в кавычки, вспоминаем в какие smile.gif

Спустя 16 минут, 51 секунда (19.12.2011 - 11:20) MaximGQ написал(а):
так там же и так кавычки! Еще одни?

<?php
else $colname_size_collection = "'\"".$_POST['size']."\"'";
?>

Так вообще не ищет, а для оператора IN ($colname_size_collection) все должно быть в одинарных кавычках

Спустя 6 минут, 1 секунда (19.12.2011 - 11:26) inpost написал(а):
MaximGQ
Занеси запрос в PMA, и покажи запрос, запись, и то, что записи нужные не выбрались! Сделай скрин-шоты.

Спустя 4 минуты, 49 секунд (19.12.2011 - 11:31) MaximGQ написал(а):
что такое пма blink.gif

Спустя 2 минуты, 8 секунд (19.12.2011 - 11:33) inpost написал(а):
PhpMyAdmin.

Спустя 1 минута, 20 секунд (19.12.2011 - 11:34) MaximGQ написал(а):
кстати еще маленькие вопросик по ходу. Как сделать так, что искалось все в нужной колонке?
Например, чтоб не перечислять все - "'2x4','3x5','4x6','5x8','6x9','9x12','overs ized','runner','indef'", а какой то символ один поставить?

Спустя 1 минута, 51 секунда (19.12.2011 - 11:36) MaximGQ написал(а):
я уже забыл как запрос показывать...
Вот на этой странице форма для запроса http://nycrugs.net/test/collection_sizes.p...=12&col=Chinese

Спустя 21 секунда (19.12.2011 - 11:36) inpost написал(а):
MaximGQ
Все записи? Тогда не указывай WHERE вообще, будет браться все данные.

Спустя 36 секунд (19.12.2011 - 11:37) inpost написал(а):
MaximGQ
Это всё не надо, нужен запрос в БД, и показать, какие записи там есть.

Спустя 1 минута, 51 секунда (19.12.2011 - 11:39) MaximGQ написал(а):
Все получилось! Ура!
<?php
else $colname_size_collection = '"'.$_POST['size'].'"';
?>
Но вопросы выше остались открытыми еще. Поскажите как запрос чере PMA выводить. и переменная которая будет заменять любое значение

Спустя 1 минута, 29 секунд (19.12.2011 - 11:40) inpost написал(а):
MaximGQ
Я же ответил...

Спустя 10 секунд (19.12.2011 - 11:40) MaximGQ написал(а):
Цитата (inpost @ 19.12.2011 - 08:36)
MaximGQ
Все записи? Тогда не указывай WHERE вообще, будет браться все данные.

Дело в том что переменная либо имеет определенное значение, либо любое. В зависимости от ситуации. Не составлять же два запроса для каждой ситуации

Спустя 2 часа, 38 минут, 45 секунд (19.12.2011 - 14:19) inpost написал(а):
$search = '';
if(isset())
$search = "AND `cell` = 'value'"
...
SELECT * FROM `table` WHERE x=1 $search
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.