0

fetch-methodで問題が発生しています。コードは次のとおりです。

        $stmt = $db->prepare("INSERT INTO x (name) VALUES (:username)");
        $stmt->bindParam(':username', $username);
        $result = $stmt->execute();
        if ($result == '1') {
            $id = $stmt->fetch();
            return $id;
        }

クエリが実行され、データが挿入され、$resultは「1」です。ただし、結果を取得しようとすると、falseが返されます。

任意のヒント?

4

2 に答える 2

0

MySQLででき$db->lastInsertId()ます(明らかに信頼性はありませんが、問題が発生したことはありません)。それまたは別のクエリを実行します:SELECT LAST_INSERT_ID()そしてそれをフェッチします。

于 2013-02-07T06:21:36.517 に答える
-1

挿入された行数を取得する場合は、次のクエリを実行します。

$rows_inserted = $db->query("SELECT FOUND_ROWS()")->fetchColumn();
于 2013-02-06T03:54:45.167 に答える