Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Запрос тупит :(
Форумы портала PHP.SU » PHP » Программирование на PHP » Запрос тупит :(

Страниц (1): [1]
 

1. mark2009 - 20 Сентября, 2009 - 10:17:49 - перейти к сообщению
Запрос вида:

CODE (text):
скопировать код в буфер обмена
  1.  
  2. SELECT * FROM xls2mysql WHERE prod_type='Аксессуары' AND brand='Разное' LIMIT 0, 10
  3.  


прекрасно отрабатывает в phpmyadmin.

Но на странице выводится ошибка вида:

CODE (text):
скопировать код в буфер обмена
  1.  
  2. 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
  3.  


Кто-нибудь может сказать где зарыта собака??

Да, забыл. Данный запрос получается следующим кодом:

PHP:
скопировать код в буфер обмена
  1.  
  2.     $sql = "SELECT * FROM ".TBL." WHERE prod_type='".$_GET['prod_type']."' AND brand='".$_GET['brand']."' LIMIT ".$start.", ".$pg->items_per_page;                                                                                    
  3.  
2. Ch_chov - 20 Сентября, 2009 - 11:11:36 - перейти к сообщению
Посмотри что даёт echo $sql
3. mark2009 - 20 Сентября, 2009 - 11:13:02 - перейти к сообщению
Ch_chov пишет:

Посмотри что даёт echo $sql


CODE (text):
скопировать код в буфер обмена
  1.  
  2. SELECT * FROM xls2mysql WHERE prod_type="Аксессуары" AND brand="Разное" LIMIT 0, 10
  3.  
4. Ch_chov - 20 Сентября, 2009 - 11:21:20 - перейти к сообщению
Может быть что то с кавычками напутано. Попробуй так.
PHP:
скопировать код в буфер обмена
  1. $sql = "SELECT * FROM `".TBL."` WHERE `prod_type`='{$_GET['prod_type']}' AND `brand`='{$_GET['brand']}' LIMIT $start, ".$pg->items_per_page;
5. mark2009 - 20 Сентября, 2009 - 11:36:13 - перейти к сообщению
Выдал следующее:

CODE (text):
скопировать код в буфер обмена
  1.  
  2. 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
  3.  

(Добавление)
Меня другое интересует - почему один и тот же запрос нормально отрабатывает в phpmyadmin но выдаёт ошибку на сервере?
6. Ch_chov - 20 Сентября, 2009 - 11:41:03 - перейти к сообщению
Чудес не бывает. Попробуй выполнить запрос из php без подстановки переменных
PHP:
скопировать код в буфер обмена
  1. mysql_query('SELECT * FROM xls2mysql WHERE prod_type="Аксессуары" AND brand="Разное" LIMIT 0, 10');
7. mark2009 - 20 Сентября, 2009 - 11:48:58 - перейти к сообщению
Ха-ха Ха-ха Ха-ха

CODE (text):
скопировать код в буфер обмена
  1.  
  2. 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
  3.  
Ха-ха
8. JustUserR - 20 Сентября, 2009 - 15:01:53 - перейти к сообщению
mark2009 Вы не забываете проэкранировать кавычки-то внутри строки? Да и там где вы пишите TBL это либо константа либо если это переменная то вы забыли знак доллара
9. Nestor - 20 Сентября, 2009 - 20:53:33 - перейти к сообщению
Какая кодировка базы?
10. Champion - 21 Сентября, 2009 - 08:42:43 - перейти к сообщению
Строковые константы возьми в одинарные кавычки.

 

Powered by ExBB FM 1.0 RC1