0
我有一個名爲player的表,在將數據插入到那裏後,成功工作,我有以下一段代碼來捕獲自動遞增的主鍵。使用lastInsertId()值填充另一個表中的列
$one = $pdo->lastInsertId();
然後我想要做的是取出存儲在此變量中的值,並將其作爲值插入到另一個表中。我嘗試了幾種方法,但無濟於事。請看下面:
未遂ONE
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();
}
未遂兩個
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();
}
實際上並沒有引發任何錯誤,但代碼時,我看在數據庫中,該值爲沒有得到通過。
任何人都可以解釋發生了什麼問題嗎?
感謝您的時間和幫助。
爲什麼'$ one'在'$ _POST'? – jammypeach 2012-08-21 10:46:52
Ermmmmmmmm我不知道爲什麼我認爲這會工作?因此,當使用method ='post'發送表單時,$ _POST數組會自動創建並用於收集值。顯然這個價值並不來自提交的表單。我確實嘗試了許多不同的方式來做到這一點,認爲我只是變得絕望,並沒有花時間正確地閱讀代碼。感謝讓我花時間評估爲什麼這不起作用。 – Johnny 2012-08-21 10:50:16
沒問題 - 我會像@Mihai lorga一樣回答,試試看他的答案,看看是否有幫助。 – jammypeach 2012-08-21 10:55:31