Пропустить

Ошибка казалось бы простого запроса

Форум для авторов модов для phpBB 2.0.x.

Ошибка казалось бы простого запроса

Сообщение Доминион » 08.12.2005 0:53

Подобный запрос в bbcode.php, при подключении переменых для global выдает ошибку самого запроса:

$sql = 'SELECT username, user_id, user_level
		FROM ' . USERS_TABLE . '
		WHERE username . ' $text;
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, "Could not obtain user information.", '', __LINE__, __FILE__, $sql);
	}


Что такого страного? В переменную $text идет любое имя пользователя.
Последний раз редактировалось Доминион 08.12.2005 1:08, всего редактировалось 1 раз.
Для чего существую я? Для того чтобы править эти миром. Для чего существует этот мир? Для того чтобы им правил я...
Аватара пользователя
Доминион
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 06.04.2005 17:20
Откуда: Россия, город Москва
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение [R: R@m$e$ :U] » 08.12.2005 1:04

я дурак? 0_о
а разве не
WHERE username ' . $text;

?

Добавлено спустя 1 минуту 35 секунд:

и кстати... это только правильней закончить как для пхп... а для мускула...
$sql = 'SELECT username, user_id, user_level 
      FROM ' . USERS_TABLE . " 
      WHERE username = '" . $text . "'";
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1466
Зарегистрирован: 16.01.2005 14:04
Откуда: Novosibirsk,RU
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Доминион » 08.12.2005 1:06

[R: R@m$e$ :U] если бы.

Если присвоить WHERE user_id ' . $text; - все идет нормально.

Ладно поясню - $text - это текст BBCode, идущий из сообщений. При сравнивании с id пользователя все идет нормально и BBCode выполнят все функции, но как только сравнить (вписать в код) имя пользователя и попытатся выполнить такой же запрос, но для username, выводится ошибка.

Добавлено спустя 39 секунд:

[R: R@m$e$ :U], попробую :).
Для чего существую я? Для того чтобы править эти миром. Для чего существует этот мир? Для того чтобы им правил я...
Аватара пользователя
Доминион
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 06.04.2005 17:20
Откуда: Россия, город Москва
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение [R: R@m$e$ :U] » 08.12.2005 1:10

Доминион
смотрим мое добавление... =) там есть нюанс про ковычки... а это не маловажно при работе с текстом, а не числами...

Добавлено спустя 3 минуты 25 секунд:

Доминион
мдя... +) как плохо когда одновременно на форуме =))) пересекаемся постами =)))
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1466
Зарегистрирован: 16.01.2005 14:04
Откуда: Novosibirsk,RU
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Доминион » 08.12.2005 1:12

[R: R@m$e$ :U], пробую. Выдает критическую ошибку уже другого рода. Синтаксис.

Может быть:

WHERE username = '" . $text . "';


?

Добавлено спустя 1 минуту 24 секунды:

[R: R@m$e$ :U], это точно. Твой вариант тоже не работает.

Опять Parse error.
Для чего существую я? Для того чтобы править эти миром. Для чего существует этот мир? Для того чтобы им правил я...
Аватара пользователя
Доминион
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 06.04.2005 17:20
Откуда: Россия, город Москва
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение [R: R@m$e$ :U] » 08.12.2005 1:14

Доминион
а взять весь мой sql или только последняя строчка? =) тк прошу обратить внимание на
Доминион писал(а):FROM ' . USERS_TABLE . '

[R: R@m$e$ :U] писал(а):FROM ' . USERS_TABLE . "

это многое меняет... =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1466
Зарегистрирован: 16.01.2005 14:04
Откуда: Novosibirsk,RU
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Доминион » 08.12.2005 1:16

Сейчас попробую :D.
Для чего существую я? Для того чтобы править эти миром. Для чего существует этот мир? Для того чтобы им правил я...
Аватара пользователя
Доминион
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 06.04.2005 17:20
Откуда: Россия, город Москва
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение [R: R@m$e$ :U] » 08.12.2005 1:16

в общем чувствую, что вся эта дискусия только запутала...
заменяй свой код на этот...
$sql = 'SELECT username, user_id, user_level 
      FROM ' . USERS_TABLE . " 
      WHERE username = '" . $text . "'"; 
   if ( !($result = $db->sql_query($sql)) ) 
   { 
      message_die(GENERAL_ERROR, "Could not obtain user information.", '', __LINE__, __FILE__, $sql); 
   }

и пробуй... =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1466
Зарегистрирован: 16.01.2005 14:04
Откуда: Novosibirsk,RU
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Доминион » 08.12.2005 1:17

Огромное спасибо! Вышло наконец-то.

Блин - это все из-за специфики bbcode.php :).
Для чего существую я? Для того чтобы править эти миром. Для чего существует этот мир? Для того чтобы им правил я...
Аватара пользователя
Доминион
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 06.04.2005 17:20
Откуда: Россия, город Москва
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение [R: R@m$e$ :U] » 08.12.2005 1:18

OFFTOP
Доминион писал(а):Для чего существую я? Для того чтобы править эти миром. Для чего существует этот мир? Для того им правил я...

ошибка в последнем предложении... пропущено "чтобы"... =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1466
Зарегистрирован: 16.01.2005 14:04
Откуда: Novosibirsk,RU
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Доминион » 08.12.2005 1:18

:oops: ... Рассеян. Грешен. Каюсь.
Для чего существую я? Для того чтобы править эти миром. Для чего существует этот мир? Для того чтобы им правил я...
Аватара пользователя
Доминион
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 06.04.2005 17:20
Откуда: Россия, город Москва
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение [R: R@m$e$ :U] » 08.12.2005 1:23

Доминион
а где ббкод? это специфика пхп и мускул =)
а проблема потому что...
[R: R@m$e$ :U] писал(а):есть нюанс про ковычки... а это не маловажно при работе с текстом, а не числами...


Добавлено спустя 50 секунд:

Доминион писал(а): ... Рассеян. Грешен. Каюсь.

да ладно =) кто не промахивается? =))
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1466
Зарегистрирован: 16.01.2005 14:04
Откуда: Novosibirsk,RU
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Доминион » 08.12.2005 1:27

[R: R@m$e$ :U], BBCode выше, если ты про мой код. Он не нужен. Не работал только запрос :(. ЭТо кстати для модификации, которая мне понадобилась - BBCode имени пользователя - вводишь тэг [n]Имя[/n], и получаешь ссылку на профиль, цвет и прочее.

[R: R@m$e$ :U] писал(а):Доминион писал(а):
... Рассеян. Грешен. Каюсь.

да ладно =) кто не промахивается? =))

Согласен =).
Для чего существую я? Для того чтобы править эти миром. Для чего существует этот мир? Для того чтобы им правил я...
Аватара пользователя
Доминион
phpBB 1.4.2
 
Сообщения: 56
Зарегистрирован: 06.04.2005 17:20
Откуда: Россия, город Москва
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение Xpert » 08.12.2005 8:32

Доминион писал(а):Блин - это все из-за специфики bbcode.php

Это все из-за попытки программировать, не зная как это делается, просто копируя чужие фрагменты и пытаясь заставить их работать... С кавычками еще можно списать на то что это не самые легкоотлаживаемые ситуации, но вот это
Доминион писал(а):WHERE username . ' $text;

... говорит о том, что автор плохо себе представляет что такое SQL-запрос по выборке данных.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Xpert
phpBB Guru
phpBB Guru
 
Сообщения: 5492
Зарегистрирован: 13.03.2004 22:27
Откуда: msk.ru
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Сообщение [R: R@m$e$ :U] » 08.12.2005 18:01

поддерживаю Ксперта =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
 
Сообщения: 1466
Зарегистрирован: 16.01.2005 14:04
Откуда: Novosibirsk,RU
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

След.

Вернуться в Для авторов (phpBB 2.0.x)

 

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

Бессрочный конкурс phpBB-ориентированных материалов
FastVPS — надёжный и доступный хостинг для phpBB
Место для вашей рекламы