PDA

Просмотр полной версии : Запрос MySQL через PHP


Chukcha
19.05.2007, 23:16
Есть:
$entry = $_GET['entry'] ? $_GET['entry'] : '';
$query = "SELECT * FROM `itate` WHERE en = '$entry'";
$res = mysql_query($query) or die(mysql_error());

Добился, что запрос выглядит так:
SELECT * FROM `itate` WHERE en = '200' LIMIT 2;\nGRANT ALL PRIVILEGES ON *.* TO 'mynew3'@'localhost' IDENTIFIED BY 'some_pass' WITH GRANT OPTION;\nSELECT * FROM `user` WHERE `v`='g'

Но на выходе получаю:
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 '; GRANT ALL PRIVILEGES ON *.* TO 'mynew3'@'localhost' IDENTIFIED BY 'some_pass' ' at line 1

Slon
19.05.2007, 23:31
Не вижу вопроса.

MySQL не держит двойные запросы. Поэтому ошибка. Ты это хотел узнать?

Chukcha
19.05.2007, 23:37
Не вижу вопроса.

MySQL не держит двойные запросы. Поэтому ошибка. Ты это хотел узнать?
Хм... через MySQL Query Browser этот запрос проходит, а через функцию Пыха нет.

Можно это все привратить в один запрос для MySQL 5?

Slon
19.05.2007, 23:41
Думаю у тебя не получиться совместить GRANT и SELECT. ищи другой выход.
Совсестить можно только 2 SELECT-a через UNION

Isis
19.05.2007, 23:43
$entry = $_GET['entry'] ? $_GET['entry'] : '';
$query = "SELECT * FROM `itate` WHERE en = '$entry'";
Скуль

Helios
20.05.2007, 01:54
через MySQL Query Browser этот запрос проходит, а через функцию Пыха нет.

MySQL Query Browser Автоматически разбивает такие впросы на несколько и выполняет их по одному. Можешь разбить в пхп эту строку на несколько подстрок с разделителем ; и выполнить их по очереди. Результат будет тот же, что и в MySQL Query Browser.