player というテーブルがあり、そこにデータを挿入すると正常に機能し、自動インクリメントされた主キーの値を取得する次のコードがあります。
$one = $pdo->lastInsertId();
次に、この変数に格納されている値を取得し、それを値として別のテーブルに挿入します。私はいくつかの方法を試しましたが、役に立ちませんでした。下記を参照してください:
試行 1
try
{
$sql = "INSERT INTO links SET
link = :link,
playerid = '$one'";
$s = $pdo->prepare($sql);
$s->bindValue(':link', $_POST['link']);
$s->bindValue(':playerid', $_POST[':playerid']);
$s->execute();
}
catch (PDOException $e)
{
$error = 'Error adding link for player.' . $e->getMessage();
include 'error.html.php';
exit();
}
試行 2
try
{
$sql = 'INSERT INTO links SET
link = :link,
playerid = :playerid';
$s = $pdo->prepare($sql);
$s->bindValue(':link', $_POST['link']);
$s->bindValue(':playerid', $_POST['$one']);
$s->execute();
}
catch (PDOException $e)
{
$error = 'Error adding link for player.' . $e->getMessage();
include 'error.html.php';
exit();
}
コードは実際にはエラーをスローしませんが、データベースを見ると、値が渡されていません。
誰が何が間違っているのか説明できますか?
お時間をいただきありがとうございます。