我写了一个查询,它直接通过服务器上的 MySQL 工作,如下所示:
创建表 tmp_1 (user1 varchar(255), pid int(11));INSERT INTO
famgallery
。tmp_1
SETuser1
= (SELECTtitle
FROMcpg15x_albums
WHEREaid
= (SELECT aid FROM cpg15x_pictures WHERE pid=(select max(pid) from cpg15x_pictures))); 更新famgallery
。tmp_1
SETpid
= (SELECT MAX(pid) FROM cpg15x_pictures) ; 更新 cpg15x_pictures f, tmp_1 t SET f.user1 = t.user1 WHERE f.pid = t.pid; 删除表 tmp_1;
问题在于试图将其移至 PHP:
cpg_db_query("CREATE TABLE tmp_1 (user1 varchar(255), pid int(11));INSERT INTO
famgallery
.tmp_1
SETuser1
= (SELECTtitle
FROMcpg15x_albums
WHEREaid
= (SELECT aid FROM cpg15x_pictures WHERE pid=(select max(pid) from cpg15x_pictures))); UPDATEfamgallery
.tmp_1
SETpid
= (SELECT MAX(pid) FROM cpg15x_pictures) ; UPDATE cpg15x_pictures f, tmp_1 t SET f.user1 = t.user1 WHERE f.pid = t.pid; DROP TABLE tmp_1;")
经过一天的实验后,应用程序不断给我这个严重错误:
mySQL 错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以获取在以下位置使用的正确语法:
'INSERT INTO cpg15x_tmp_1 SET `user1` = (SELECT `title` FROM cpg15x_albums WHERE ' at line 1. File: /home/content/47/9243147/html/family/include/functions.inc.php - Line: 270
我开始认为应用程序代码中的某个地方存在冲突,因为我不明白为什么它直接在服务器上可以正常工作,但在经过这么多的修补后无法在 PHP 中工作。任何想法将不胜感激。
cpg_db_query
内置在应用程序中。据我所知,它执行与mysqli_query
.
相关文件: