0

そのため、クライアントがどのような種類の PDO にもアップグレードさせてくれない非常に古いサイトで作業しています。とにかく、私はmysqlクエリを使用する必要があり、それは本当に私を憂鬱にし始めています. これを機能させることができないようです:

$array = array('1' => 1, '2' => 2);

$values = "({$array['1']}, 2, 'data3', 4, 5)";

if ($moreData){
    $values = $values.", ({$array['6']}, 7, 'data8', 9, 10)";
}

$this->db->query("INSERT INTO " . DB_PREFIX . "customer_reward ".
                 "('field1','field2','field3','field4','field5') ".
                 "VALUES ".$values);

どんな助けでも大歓迎です。

アップデート:

エラーメッセージは次のとおりです。

Error: 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 ''field1','field2','field3','field4','field5') VALUES (1, 2, 'data3' at line 1<br />Error No: 1064<br />INSERT INTO table ('field1','field2','field3','field4','field5') VALUES (1, 2, 'data3', 4, 5)
4

1 に答える 1

2

クエリのフィールド名は、一重引用符で囲まないでください。引用符を付けないか、バックティックで囲む必要があります。

また、いくつかの整数値を入力しようとしているので、フィールド タイプがデータ タイプと一致していることを確認する必要があります。

于 2012-10-01T19:54:01.410 に答える