gpt4 book ai didi

php - 如何在后续的 MULTIPLE 插入语句(在 PHP 和 MYSQL 中)中使用使用 mysql_insert_id 的最新插入的值?

转载 作者:行者123 更新时间:2023-11-30 23:31:31 25 4
gpt4 key购买 nike

我想将来自 TABLE1 的最新插入值添加到包含多个条目的 TABLE2 中的后续 MULTIPLE 插入语句 - 但是在 MySQL 中,我只是为添加到 TABLE2 中的每个条目获得 0(零)。

我知道我需要在第一个 MySQL 查询执行后将 mysql_insert_id 存储在一个变量中。所以我在第一个 mysql_query() 语句之后包含了一个名为 $post_id 的变量,如下所示:

// If the submit button is pressed in the HTML form
if (isset($_POST['submit_event'])) {
// First SQL Statement
if (!mysql_query($sql1,$con))
{
die('Error: ' . mysql_error());
}
echo "SQL 1 SUCCESS! 1 record added<br/>";

// A variable to store the id from the last MySQL query
// This is the first time I have declared this variable
$post_id = mysql_insert_id();

// Second SQL Statement which utilises the variable
if (!mysql_query($sql2,$con))
{
die('Error: ' . mysql_error());
}
echo "SQL 2 SUCCESS! 1 record added<br/>";
echo "Finito!<br/>";
mysql_close($con);
}

我写的这个SQL multiple insert statement into TABLE2如下:

$sql2="INSERT INTO TABLE2 (post_id, meta_key, meta_value)
VALUES
($post_id,'key 1','value 1'),
($post_id,'key 2','value 2'),
($post_id,'key 3','value 3')
";

然而,尽管所有这些(看起来正确)当我实际查看 MySQL 时,表 2 中每个条目的 post_id 都显示为 0(零)?

我哪里错了?!帮助!

最佳答案

这可能是一个愚蠢的问题,但从您的代码中并不清楚:您是否将 $post_id 值插入到 $sql2 字符串中?

$sql2="INSERT INTO TABLE2 (post_id, meta_key, meta_value)
VALUES
(" . $post_id . ",'key 1','value 1'),
(" . $post_id . ",'key 2','value 2'),
(" . $post_id . ",'key 3','value 3') ";

关于php - 如何在后续的 MULTIPLE 插入语句(在 PHP 和 MYSQL 中)中使用使用 mysql_insert_id 的最新插入的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10383397/

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