Пожалуй, для меня самая больная тема при написании запросов с помощью mysql_connect - это правильная расстановка кавычек. В Miicrosoft SQL Server проблем никаких нет, но здесь - сущий ад.
Теперь конкретный пример, который никак не получается реализовать. В общем необходимо просто использовать оператор like.
$result = mysql_query("select * from `shop` where `addr` like '['{$dano}']%' ");
Значение переменной $dano берется из окна браузера.
Есть какие-нибудь общие правила расстановки кавычек?
И еще: в Delphi, при использовании ADOQuery.SQL.add() правила расстановки кавычек остаются теми же??
Спустя 12 минут, 2 секунды (4.06.2011 - 22:02) inpost написал(а):
$result = mysql_query("
SELECT *
FROM `shop`
WHERE `addr` LIKE '[{$dano}]%'
");
Обращаю внимание, кавычки не являются обязательными для имени таблиц либо ячеек, в данном примере (shop,addr), но рекомендовано. Так же рекомендовано команды писать большими буквами, чтобы не сбивались.
Спустя 20 минут, 14 секунд (4.06.2011 - 22:22) lovetolaugh написал(а):
inpost
Спасибо за ответ. Однако ж приведенный вариант толком не работает - не выводится никакого результата!
Спасибо за ответ. Однако ж приведенный вариант толком не работает - не выводится никакого результата!
Спустя 1 минута, 20 секунд (4.06.2011 - 22:24) Игорь_Vasinsky написал(а):
а такой
$result = mysql_query("
SELECT *
FROM `shop`
WHERE `addr` LIKE '%{$dano}%'
");
Спустя 55 секунд (4.06.2011 - 22:25) lovetolaugh написал(а):
Игорь_Vasinsky
Этот работает как часы...
Этот работает как часы...
Спустя 1 минута, 47 секунд (4.06.2011 - 22:26) Игорь_Vasinsky написал(а):
ну потому что [] было излишне

Спустя 1 минута, 22 секунды (4.06.2011 - 22:28) lovetolaugh написал(а):
Игорь_Vasinsky
Сразу же возникает вопрос почему (из-за того что $dano - переменная?)...
Сразу же возникает вопрос почему (из-за того что $dano - переменная?)...
Спустя 6 минут, 44 секунды (4.06.2011 - 22:35) Игорь_Vasinsky написал(а):
Я в MySQL (в запросах) не встречал [], но уверен что они могут использоваться в тех случаях - когда не хватает круглых().
[] - массивы, POST, GET больше ни чё на ум не идет.
Как и сказал Инпост - в SQL принято название полей и имён таблиц обрамлять апострофами `` (ё), а php либо для строк
либо
[] - массивы, POST, GET больше ни чё на ум не идет.
Как и сказал Инпост - в SQL принято название полей и имён таблиц обрамлять апострофами `` (ё), а php либо для строк
'".$var."'
для чисел достаточно ".$int."
либо
{$var}
Спустя 1 час, 27 минут, 16 секунд (5.06.2011 - 00:02) allplayer написал(а):
$result = mysql_query("select * from `shop` where `addr` like ".$dano."");
Так проканает. ;)
Спустя 8 часов, 47 минут, 12 секунд (5.06.2011 - 08:49) Игорь_Vasinsky написал(а):
неа, я бы не рисковал, сделал бы вот так:
$result = mysql_query("select * from `shop` where `addr` like '".$dano."'");
Спустя 8 минут, 14 секунд (5.06.2011 - 08:57) inpost написал(а):
allplayer
А теперь $dano = "Пивовар Вася" и запусти свой запрос
А теперь $dano = "Пивовар Вася" и запусти свой запрос
