php - MySql,将数据从另一个表行插入到一个表行(该行刚刚创建)

标签 php mysql insert

不确定如何描述我的问题,但让我们尝试一下..

我正在做一个小型新闻门户php + mysql项目 我的mysql数据库中有两个表。

1: news (
   n_id (primary key)
   n_title
   n_text
)

2: news_image (
   ni_id (primary key)
   n_id  (foreign key from news table)
   ni_name
   ni_caption
)

(n_ 前缀代表 new,ni_ 代表 news_image)

news 表将保存新闻报道,news_image 表将存储新闻图像的名称和标题。新闻图像的单独表格是因为在后期,我将为每个故事添加多个图像。该脚本工作正常(因为我已经通过 phpmyadmin 在数据库中输入数据来测试它。

问题: 我创建了一个 php 脚本来将数据添加到新闻表并将图像上传到文件系统。效果很好。我使用此查询将行添加到新闻表

INSERT INTO news
SET
n_title = '$title',
n_text = '$text'

n_id 是主键(整数并且是自动增量)..这工作正常,但我想要一个查询,该查询将在执行上述查询后立即执行,并自动在 news_image 表中插入一个新行,并获取该行的 n_id刚刚插入新闻表中。 news_image 表中的 ni_name 和 ni_caption 不是问题,我可以轻松获取它,但是从新插入行的新闻表中获取 n_id 是问题...我怎样才能获取 n_id...??????请提供详细的答案,因为我是 php + mysql 的新手。 感谢您的阅读...等待回复..

最佳答案

您是否尝试过获取最后插入的新闻项目的 ID?喜欢:

$lastItemID = mysql_insert_id();

然后您可以使用它来创建图像的条目:

INSERT INTO news_image
SET
n_id= '$lastItemID',
ni_name = '$name',
ni_caption  = '$caption'

关于php - MySql,将数据从另一个表行插入到一个表行(该行刚刚创建),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10868800/

相关文章:

php - PDO,错误更新依旧没有异常

mysql - 基准测试期间有趣的 MySQL 行为

mysql - SQL从不同数据库的多个表插入数据

php - 在PHP中访问YouTube yt:rating(喜欢/不喜欢)系统

php - 在文本文件php中的每一行添加一个字符

mysql - 数组中的 json_contains 返回空集

php - 如果一个查询包含 Null 结果,如何从多个查询打印?

arrays - 插入到具有复合类型数组的表中

c# - 在 INSERT 上返回 ID?

带 $ 的 PHP 对象访问语法问题