Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите составить запрос, нет ошибки в phpMyAdmin, ошибка в php 
:(
    Опции темы
FiRe
Дата 1.7.2009, 11:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 30.6.2006

Репутация: нет
Всего: нет



Выполняю в phpMyAdmin такой запрос:
Код

SELECT @npr:= cat_priority FROM pr_categories WHERE cat_parent_id=0 AND cat_priority>0 LIMIT 1; 
INSERT INTO pr_categories SET cat_name='newCat', cat_parent_id=0, cat_priority=((@npr+2)/2); 


и никаких проблем. 
пользуюсь mysql_query(). Выдает ошибку:

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 ';INSERT INTO pr_categories SET cat_name='ererewr', cat_parent_id=0, cat_priority' at line 1

В чем проблема и как ее можно решить?
PM MAIL   Вверх
lelik133
Дата 1.7.2009, 11:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 517
Регистрация: 5.2.2003
Где: Москва

Репутация: 3
Всего: 14



проблема в том что вы пытаетесь выполнить сразу 2 запроса. 
разбейте на два mysql_query()
PM ICQ   Вверх
gta4kv
Дата 1.7.2009, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 4
Всего: 91



Или сделайте вложенный SELECT. (Хотя так конечно лучше не делать  smile)
PM MAIL   Вверх
MoLeX
Дата 1.7.2009, 12:27 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 7
Всего: 140



mysqli вроде умеет два выполнять


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
skyboy
Дата 1.7.2009, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 14
Всего: 260



mysql_query выполняет только один запрос.
потому:
а) встреченный разделитель ";" приводит к ошибке синтаксиса.
б) после разбития на два запроса, переменная @npr не будет передаваться между запросами.
решения два:
а) разбираться с mysqli
б) сменить логику и передавать значение переменной через PHP.
PM MAIL   Вверх
FiRe
Дата 1.7.2009, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 30.6.2006

Репутация: нет
Всего: нет



skyboy,  после разбития все нормально работает(все передается)))))!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0478 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.