PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID

yipeiwu_com5年前Mysql基础

前言

最近在工作中又遇到了这个问题,PHP中如何获得刚插入数据的ID(或当前发布文章的ID)呢?觉得有必要整理下详细的解决方法,方便自己也给有需要的朋友们提供以帮助,那么话不多说了,来看看详细的解决介绍。

解决方法

其实用 mysql_insert_id() 函数就可以实现的。

定义和用法

mysql_insert_id() 函数返回上一步 INSERT 操作产生的 ID。

注意:如果上一查询没有产生 AUTO_INCREMENT 的 ID,则 mysql_insert_id() 返回 0。

语法

mysql_insert_id(connection)

参数描述

connection 可选。规定 MySQL 连接。如果未规定,则使用上一个连接。

说明

mysql_insert_id() 返回给定的 connection 中上一步 INSERT 查询中产生的 AUTO_INCREMENT 的 ID 号。如果没有指定 connection ,则使用上一个打开的连接。

提示和注释

注释:如果需要保存该值以后使用,要确保在产生了值的查询之后立即调用 mysql_insert_id()

例子

$con = mysql_connect("localhost", "hello", "321");
if (!$con)
 {
 die('Could not connect: ' . mysql_error());
 }

$db_selected = mysql_select_db("test_db",$con);

$sql = "INSERT INTO person VALUES ('Carter','Thomas','Beijing')";
mysql_query($sql,$con);
$id = mysql_insert_id()
echo "刚刚插入的数据ID是:".$id;

mysql_close($con);

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用php能有所帮助,如果有疑问大家可以留言交流。

相关文章

PHP实现将MySQL重复ID二维数组重组为三维数组的方法

本文实例讲述了PHP实现将MySQL重复ID二维数组重组为三维数组的方法。分享给大家供大家参考,具体如下: 应用场景 MYSQL在使用关联查询时,比如 产品表 与 产品图片表关联,一个产...

Can't create/write to file 'C:\WINDOWS\TEMP\...MYSQL报错解决方法

错误提示:Error: Can't create/write to file 'C:\WINDOWS\TEMP\#sql_738_0.MYD' (Errcode: 17) Errno....

php查询mysql大量数据造成内存不足的解决方法

本文实例分析了php查询mysql大量数据造成内存不足的解决方法。分享给大家供大家参考。具体分析如下: 一、问题 使用php查询mysql大数据量的时候,程序尚未执行完毕,跳出警告: F...

使用PHP实现Mysql读写分离

本代码是从uchome的代码修改的,是因为要解决uchome的效率而处理的。这个思维其实很久就有了,只是一直没有去做,相信也有人有同样的想法,如果有类似的,那真的希望提出相关的建议。封装...

PHP错误Warning:mysql_query()解决方法

php提示错误:Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localho...