我在 php 中使用原始(无更改)ezsql-mysql 类。我的数据库引擎是innodb。一切都很好,但一页中有一个查询。当我从其他一些工作页面复制代码库时,已经添加了类和函数等所需的一切。就在问题查询之前,还有另一个正常工作的查询。当我直接将其复制粘贴到 phpmyadmin 时,有问题的查询也在 php 文件之外工作。
$db->query("
BEGIN;
INSERT INTO places (name, latitude, longitude)
VALUES ('Place of $event_name', '$latitude', '$longitude');
INSERT INTO events (place_code, event_name, start_time, owner_id)
VALUES (LAST_INSERT_ID(),'$event_name', '$start_time', '$owner_id');
COMMIT;
");
//this echo part was just for copying to phpmyadmin
echo "
BEGIN;
INSERT INTO places (name, latitude, longitude)
VALUES('Place of $event_name', '$latitude', '$longitude');
INSERT INTO events (place_code, event_name, start_time, owner_id)
VALUES(LAST_INSERT_ID(),'$event_name', '$start_time', '$owner_id');
COMMIT;
";
每次我使用该页面时,我的服务器都会在该页面的目录中生成一个错误日志。错误是
[29-Sep-2013 12:58:00] PHP Warning: 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 places (name, latitude, longitude)
VALUES ('Place of asd', '39.76' at line 2 in /home7/eyselnet/public_html/business/injoin/demo/sql/ez_sql_mysql.php on line 233
当我在 phpmyadmin 中复制并粘贴相同的查询时,就会发生这种情况
BEGIN;# MySQL returned an empty result set (i.e. zero rows).
INSERT INTO places (name, latitude, longitude) VALUES('Place of asd', '39.7617657', '30.5056083');# 1 row affected.
INSERT INTO events (place_code, event_name, start_time, owner_id) VALUES(LAST_INSERT_ID(),'asd', '1357884000', '1');# 1 row affected.
COMMIT;# MySQL returned an empty result set (i.e. zero rows).
你能帮我找出问题所在吗?在最坏的情况下,我可以更改我的代码以使其以不同的方式工作。但我不是这样寻求帮助来理解的。因为它看起来很奇怪,在 phpmyadmin 上正常工作的查询在 php 文件中有问题。
提前致谢。