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

Форум MySQL

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Не выполняется SQL-запрос - как обработать ошибку?
 
 автор: goacher   (21.01.2008 в 12:32)   письмо автору
 
 

$result = mysql_query("SELECT 'id' FROM `producer` WHERE ='".$_GET['m']."' ORDER BY `parent`");
$i = 1;
while($ids = mysql_fetch_assoc($result)).... - и тут вылетает ошибка


опишите пожалуйстачто делает $result

   
 
 автор: olejek   (21.01.2008 в 12:39)   письмо автору
 
   для: goacher   (21.01.2008 в 12:32)
 

WHERE =
Наверное, в этом проблема.
А ошибка появилась, скорее всего, не там, где вы указали

Вместо
$result = mysql_query("SELECT 'id' FROM `producer` WHERE ='".$_GET['m']."' ORDER BY `parent`");


пишите:
$result = mysql_query("SELECT 'id' FROM `producer` WHERE ='".$_GET['m']."' ORDER BY `parent`") or die (mysql_error());

   
 
 автор: goacher   (21.01.2008 в 12:49)   письмо автору
 
   для: olejek   (21.01.2008 в 12:39)
 

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 '='2' ORDER BY `parent`' at line 1


ну и вот результат!

   
 
 автор: goacher   (21.01.2008 в 12:52)   письмо автору
 
   для: goacher   (21.01.2008 в 12:49)
 

да, была проблема с =

   
 
 автор: Faraon   (21.01.2008 в 12:52)   письмо автору
 
   для: goacher   (21.01.2008 в 12:49)
 

Это что за хрень???
WHERE ='".$_GET['m']."

не указано, что должно равняться $_GET['m']

   
 
 автор: elenaki   (21.01.2008 в 12:52)   письмо автору
 
   для: goacher   (21.01.2008 в 12:49)
 

WHERE = ...



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

   
 
 автор: THERAPYbrother   (21.01.2008 в 12:52)   письмо автору
 
   для: goacher   (21.01.2008 в 12:49)
 

дел

   
 
 автор: DJ Paltus   (21.01.2008 в 12:53)   письмо автору
 
   для: goacher   (21.01.2008 в 12:49)
 

Здесь ошибка в синтаксисе запроса Mysql
WHERE ='".$_GET['m'].... поглядите, нет названия поля
например, WHERE name='".$_GET['m'].... - значение какого поля содержится в переменной $_GET['m'], то и надо указать после WHERE

   
 
 автор: THERAPYbrother   (21.01.2008 в 12:54)   письмо автору
 
   для: DJ Paltus   (21.01.2008 в 12:53)
 

сначала тоже самое сказал,потом переклинило,заметил что все правильно сделано,и удалил свое сообщение)))

   
 
 автор: Loki   (21.01.2008 в 12:53)   письмо автору
 
   для: olejek   (21.01.2008 в 12:39)
 


 WHERE ='".$_GET['m']."

where равно переменной? поля - пофигу?

   
 
 автор: KPETuH   (21.01.2008 в 12:57)   письмо автору
 
   для: goacher   (21.01.2008 в 12:32)
 

интресующая вас строка делает sql запрос к базе по русски: выбрать все строки столбца id где (тут ошибка нужна указать столбец) = чемуто сортировать по столбцу parent...

   
 
 автор: goacher   (21.01.2008 в 13:02)   письмо автору
 
   для: KPETuH   (21.01.2008 в 12:57)
 

$result = mysql_query("SELECT 'id' FROM `producer` WHERE '".$_GET['m']."' ORDER BY `parent`");

вот это правильно, объясните что она делает?

   
 
 автор: THERAPYbrother   (21.01.2008 в 13:12)   письмо автору
 
   для: goacher   (21.01.2008 в 13:02)
 

SELECT id FROM producer WHERE="$_GET['m']"


ВЫБРАТЬ поля id ИЗ таблицы producer ГДЕ = $_GET['m']

поняли свою ошибку?

надо ВЫБРАТЬ поля id ИЗ таблицы producer ГДЕ что-то = $_GET['m']

короче, надо

$result = mysql_query("SELECT 'id' FROM `producer` WHERE name= '".$_GET['m']."' ORDER BY `parent`");


вместо name подставьте свое

P.S

сейчас за кавычками не наблюдал,так что сами расставьте как надо

   
 
 автор: olejek   (21.01.2008 в 13:13)   письмо автору
 
   для: goacher   (21.01.2008 в 13:02)
 

WHERE \'\".$_GET[\'m\'].\"\',
т.е. where \'\".$_GET[\'m\'].\"\'=true -
выбирает все данные, имеющие истинное значение, т.е. не NULL и не false

   
Rambler's Top100
вверх

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