синтаксис SELECT в MySQL

12
N
На сайте с 30.11.2010
Offline
31
1129

Подскажите что у у меня в коде не так

писал для dle такой файлик

<?php

$str=mysql_query("SELECT name FROM dle_category WHERE id='3' LIMIT 0,1",$db)

echo($str);

?>

этот файлик включал в шаблон dle

у меня выдает ошибку

Error Number: 1064

The Error returned was:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1

SQL query:

SELECT name FROM dle_category WHERE id='3' IN ()

что у меня не так?

задача была выводить название третьей(категории) в текст

IL
На сайте с 20.04.2007
Offline
435
#1
nocenzru:
что у меня не так?

разные запросы.. в первом нет IN () - т.е. либо ошибка в другом месте, либо запрос изменяется..

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
N
На сайте с 30.11.2010
Offline
31
#2
ivan-lev:
разные запросы.. в первом нет IN () - т.е. либо ошибка в другом месте, либо запрос изменяется..

ошибки в другом месте маловероятны, т.к. мои нововведения представляют собой этот файлик с именем 123.php в папке модулей и оператор include file="http://полный путь/123.php" в фигурных скобках в файле фаблона DLE. И больше ничего не менял, все остальное стандартное, родное. версия dle 9.7

DV
На сайте с 01.05.2010
Offline
644
#3

Уберите всё в конце, сначала просто селект. Потом добавляйте условие, а далее лимит.

VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )
N
На сайте с 30.11.2010
Offline
31
#4
DenisVS:
Уберите всё в конце, сначала просто селект. Потом добавляйте условие, а далее лимит.

вроде намечается решение проблемы

удалил выражение WHERE id='3' IN(5) LIMIT 0,1

ошибка та же, слово в слово

даже про id='3' ругается , которого нет

видимо код остался тот же который я писал еще в самом начале, там действительно была инструкция IN, от которой я потом отказался, потомучто на нее ругалась sql

переменял много чего а ошибка все таже, кеш внизу админки я сбрасывал, с другого компа загодил токочто ситуация та-же. как скинуть кеш гарантировано?

DV
На сайте с 01.05.2010
Offline
644
#5

У вас там xCache какой-нибудь, или eAccelerator не стоят?

N
На сайте с 30.11.2010
Offline
31
#6
DenisVS:
У вас там xCache какой-нибудь, или eAccelerator не стоят?

не знаю, но решил проблему кеша переименованием файла🤪

щас ошибок нет

токо чтото на экран ничего не выводится, по крайней мере пока. может я не так делаю вывод? Усиленно ищу причину....

DV
На сайте с 01.05.2010
Offline
644
#7

Точно акселератор закешировал, они глючат иногда.

N
На сайте с 30.11.2010
Offline
31
#8
DenisVS:
Точно акселератор закешировал, они глючат иногда.

скорее всего

я пока решаю эту проблему уникальными именами файлов с изменениями кода

DV
На сайте с 01.05.2010
Offline
644
#9

Может, лучше на локалхосте тогда мудрить? Намного сподручнее.

N
На сайте с 30.11.2010
Offline
31
#10

но почемуто код в файле

<?php

$str=mysql_query("SELECT name FROM dle_category WHERE id='3' LIMIT 0,1",$db)

echo($str);

?>

ничего не выводит(((

ошибок тоже нет

в phpadmin набираю SELECT name FROM dle_category WHERE id='3' LIMIT 0,1

мне выдает все как надо, а в php ничего

можно было предположить что я не сделал какихто предварительных операций, типа подключить базу, но, я думаю, она по умолчанию включена, иначе не было бы ошибок в самом начале

---------- Добавлено 08.02.2013 в 14:14 ----------

DenisVS:
Может, лучше на локалхосте тогда мудрить? Намного сподручнее.

возможно и сподручнее, но я пока боюсь возможных подводных камней, да и локалхост пока не установлен, если совсем зайду в тупик логикой работы моего хостера то возможно так и сделаю

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий