0

我有这个代码,基本上我需要从最近插入的行中获取新 ID...我有这个代码,但它对我不起作用...

$sql = "INSERT INTO `cd_photo` (id, album, date) VALUES (NULL, '" .mysql_real_escape_string($_POST['album']) . "', '" . $date . "')";

if (@mysql_query($sql)) {
$result = $sql->fetch(PDO::FETCH_ASSOC);
$pageid = $result['id'];
echo $pageid;
echo header('Location: newimg.php?id=' .$pageid);
}

有任何想法吗?

4

1 回答 1

0

您正在混合两种不同的 PHP-MySQL API。我建议你使用 PDO,因为 mysql_ 已被淘汰。这是您在PDO中的操作方式:

$dsn = 'mysql:dbname=dbname;host=dbhost';
$user = 'dbusername';
$pass = 'dbpass';
$pdo = new PDO($dsn, $user, $pass);

$sql = "INSERT INTO `cd_photo` (album, date) VALUES (:album,:date)"
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':album', $album);
$stmt->bindParam(':date', $date);
$stmt->execute();
$pageid = $pdo->lastInsertId();
于 2013-01-11T23:21:27.060 回答