0

PHP PDO からテーブルに挿入しようとしていますが、select と別のデータを同時に使用しようとしているため、いくつかの問題があります。

$stmt = $db->prepare("INSERT INTO subscriptions(id_Event,pushToken,os)
                                                        :idOfEvent, (Select pushToken,os FROM users WHERE deviceUDID = :deviceUDID)");
            $stmt->execute(array(':deviceUDID' => $deviceUDID,':idOfEvent' => $idOfEvent));

しかし、クエリに問題があると書かれています。選択とデータを同時に使用して挿入する方法がわかりません。

4

1 に答える 1

2

問題は SQL クエリ構文にあり、これは間違っています。これを試して:

$stmt = $db->prepare("INSERT INTO subscriptions (id_Event, pushToken, os) 
                        SELECT :idOfEvent, pushToken, os 
                        FROM users 
                        WHERE deviceUDID = :deviceUDID");
$stmt->execute(array(':idOfEvent'   => $idOfEvent,
                     ':deviceUDID'  => $deviceUDID  ));

編集: PDO パラメーターについて明確にするために、クエリを PHP コードにラップしました。

于 2013-09-02T10:41:42.733 に答える