PHP MySQL Multi-Statement работает на моей веб-странице, но не на XAMPP - PullRequest
0 голосов
/ 30 сентября 2011

Поэтому я использую этот код для подключения к MySQL и выполнения нескольких операторов:

$connect=@mysql_connect($host,$user,$pass,false,65536) or die("Can't connect");
mysql_select_db($base,$connect);

При подключении я делаю:

mysql_query("CREATE TABLE IF NOT EXISTS tablename ...;\nINSERT INTO tablename ...;");

Я использую этот код для выполнения файлов резервных копий, содержащихтот же код выше (\ n = новая строка).Когда я запускаю этот скрипт на моей веб-странице (размещенном сервере), он работает, но на моем локальном компьютере, где я использую XAMPP, он показывает ошибку:

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 tablename' at line 2

Я проверил php.ini, у меня есть safe_mode = Off иsql.safe_mode = Off тоже.

Есть идеи, что мне не хватает?

1 Ответ

0 голосов
/ 30 сентября 2011

Согласно руководству по PHP, mysql_query не поддерживает множественные запросы.Тем не менее, в комментариях есть парень, заявляющий, что это возможно:

Тем не менее, кажется, что несколько запросов поддерживаются.Вам просто нужно передать флаг 65536 в качестве параметра 5 mysql_connect (client_flags).( Источник )

С другой стороны, руководство упоминает только два параметра функции, поэтому мне интересно, что мы должны передать как 3-й и 4-й параметры, если эти 5один действительно делает свое дело!

...