gpt4 book ai didi

php - INSERT INTO 表值 - mysql_query 到 PDO

转载 作者:行者123 更新时间:2023-11-30 00:24:48 24 4
gpt4 key购买 nike

尝试使用新的 PDO 从旧的 mysql_query 插入值,但似乎无法获取它。这是使用旧方法的旧代码:

$query = mysql_query("INSERT INTO videos VALUES ('','$title',time(),'0','$length','','$name','$cat','$reciter','$genre')");

我已经尝试了从堆栈上的另一个问题中获取的以下代码的变体,但没有任何对我有用的。

$query = "UPDATE people 
SET price=?,
contact=?,
fname=?,
lname=?
WHERE id=? AND
username=?";
$stmt = $dbh->prepare($query);
$stmt->bindParam(1, $price);
$stmt->bindParam(2, $contact);
$stmt->bindParam(3, $fname);
$stmt->bindParam(4, $lname);
$stmt->bindParam(5, $id);
$stmt->bindParam(6, $username);
$stmt->execute();

要插入的第一个值是数据库中的自动增量值。我不知道如何用新的 PDO 来编写它。然后第三个是尝试时间戳。所有其他值都是脚本中已经存在的值。

所以这更符合我正在寻找的内容。这是我现在拥有的,但不起作用。

$sql = "INSERT INTO videos (id, title, timestamp, views, length, image, vid_url, cetegory, reciter, genre)
VALUES (:id, :title, :timestamp, :views, :length, :image, :vid_url, :category, :reciter, :genre)";

$query = $DBH->prepare($sql);
$results = $query->execute(array(
":id" => '',
":title" => $title,
":timestamp" => time(),
":views" => '0',
":length" => $length,
":image" => '',
":vid_url" => $name,
":category" => $cat,
":reciter" => $reciter,
":genre" => $genre
));

最佳答案

如果 id 是自动增量,请勿将其传递给您的查询。如果您指定要插入到自动增量表的值,sql 将尝试插入该值。所以不要将其包含在查询中,让 SQL 来完成。

其次,如果第三个字段是时间戳,则设置默认为

CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP

SQL 将在更新或插入时自动更新时间戳(如果您只想在插入时更新时间戳,只需输入 CURRENT_TIMESTAMP。那么您也可以删除该行。

如果您没有在其中插入任何内容,您也可以删除图像行,如果您不使用它,则没有必要在查询中添加内容!

此外,PDO 查找的键没有冒号 (:),因此如果您的项目是 :title,则数组键将只是 '标题'。因此,您的代码应该类似于:

$sql = "INSERT INTO videos ( title, views, length,, vid_url, cetegory, reciter, genre)
VALUES (:title, :views, :length, :vid_url, :category, :reciter, :genre)";

$query = $DBH->prepare($sql);
$results = $query->execute(array(
"title" => $title,
"views" => '0',
"length" => $length,
"vid_url" => $name,
"category" => $cat,
"reciter" => $reciter,
"genre" => $genre
));

关于php - INSERT INTO 表值 - mysql_query 到 PDO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22970191/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com