クエリを作成しましたが、次のようにサーバー上の MySQL を介して直接動作します。
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=(cpg15x_pictures から max(pid) を選択))); 更新しfamgallery
ます。tmp_1
セットpid
= (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;
問題は、それを 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=(cpg15x_pictures から max(pid) を選択))); 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;")
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
ます。
関連ファイル: