MySQL コンソールで次を実行すると、正常に動作します。
INSERT INTO videos (embed_code) VALUES ('test code here');
SELECT LAST_INSERT_ID();
しかし、PHP 経由で上記のクエリを実行すると、結果は空になります。
データ抽象化の下で、私は という名前のデータベース アクセス クラスを使用していますDB
。これは、PHPを介して上記のクエリを試した方法です:
$embedCode = htmlentities($_POST['embed_code']);
//Insert video in database **WORKS**
DB::query("INSERT INTO videos (embed_code) VALUES ('$embedCode');");
//Retrieve id **DOES NOT WORK**
$row = DB::getSingleRow("SELECT LAST_INSERT_ID();");
$videoId = $row[0];
Embed_code は繰り返される可能性があるため、embed_code によって新しい ID を選択することは信頼できません。
ありがとう!