PHP中mysql_insert_id()函数获取最后插入记录ID编号

这个问题以前绝壁遇到过,太久没写不记得(貌似当时是CI框架直接有相关函数的),然后这次又遇到了,再次滚去查了一下,这里说的并非是PDO之类的情况,而是用过时的连接和执行方式之后怎么进行操作。

有什么SQL语句实现的,但明显不合适,当收到多人操作时,顿时就混乱不堪。

所以在此,用mysql_insert_id()函数搞定,他会返回AUTO_INCRESEMENT的值。

 代码如下 复制代码

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');

mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Last inserted record has id %d ", mysql_insert_id());
?>

刚开始我还在想这个函数不会遇到相同的问题么,然后小新告诉我是基于当前数据库连接的,顿时不怕不怕啦。

当然还有

 代码如下 复制代码

mysql_query("select max(id) from t1",$link);

当然,现在这种连接方式已经out的可以了,

这里也有说明:

Warning

This extension is deprecated as of PHP 5.5.0, and will be removed in the future. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information. Alternatives to this function include:

mysqli_insert_id()
PDO::lastInsertId()

时间: 2024-10-26 18:52:15

PHP中mysql_insert_id()函数获取最后插入记录ID编号的相关文章

PHP中substr_count()函数获取子字符串出现次数的方法_php技巧

本文实例讲述了PHP中substr_count()函数获取子字符串出现次数的方法.分享给大家供大家参考,具体如下: PHP中的substr_count()可用于计算指定字符串中子字符串出现的次数. substr_count()函数定义如下: substr_count(string,substring,start,length) 参数说明: string     必需.规定被检查的字符串. substring  必需.规定要搜索的字符串. start      可选.规定在字符串中何处开始搜索.

PHP获取MySql新增记录ID值的3种方法_php技巧

一.使用语句:  复制代码 代码如下: mysql_query("select max(id) from t1",$link); 使用此方法得到的是 id最大的值,确为最后一个值,但当多链接线程时,这个最大的id并不一定是我们插入数据的自增id值,因此不适用于多线程. 二,使用函数:msyql_insert_id(); 在PHP中,经常需要把插入数据库中的id值取出来,而正好有这么一个函数: 复制代码 代码如下: <?php //执行插入数据库的语句 //-- $getID=my

ThinkPHP写数组插入与获取最新插入数据ID实例_php实例

本文实例讲述了thinkphp写数组插入与获取最新插入数据ID的实现方法.分享给大家供大家参考.具体方法分析如下: 该实例讲述了thinkphp怎么自己写数组插入,此处是以注册用户为例. 具体实现代码如下: 复制代码 代码如下: public function insert2(){  header("Content-Type:text/html; charset=utf-8");  $Dao = M("User"); // 构建写入的数据数组  $data[&quo

LAST_INSERT_ID mysql_insert_id 获取插入记录自动编号

mysql教程 LAST_INSERT_ID() mysql_insert_id 获取insert数据的主键值自动编号 我们讲了关于mysql LAST_INSERT_ID() mysql_insert_id 获取insert数据的主键值自动编号那么来分析一下它们的区别吧  mysql_insert_id ()是直接获取当前session的insert_id,而LAST_INSERT_ID()是SQL函数,需要通过执行SQL来获得,如:SELECT LAST_INSERT_ID();显然这两个效

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

前言 最近在工作中又遇到了这个问题,PHP中如何获得刚插入数据的ID(或当前发布文章的ID)呢?觉得有必要整理下详细的解决方法,方便自己也给有需要的朋友们提供以帮助,那么话不多说了,来看看详细的解决介绍. 解决方法 其实用 mysql_insert_id() 函数就可以实现的. 定义和用法 mysql_insert_id() 函数返回上一步 INSERT 操作产生的 ID. 注意:如果上一查询没有产生 AUTO_INCREMENT 的 ID,则 mysql_insert_id() 返回 0. 语

.NET中获取Access新增记录Id怪现象解决方法_实用技巧

复制代码 代码如下: using System; using System.Data.OleDb; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Console.WriteLine(GetUserId("dnawo")); Console.ReadKey(); } /// <summary> /// 获取用户Id /// </summary> /

js中一个函数获取另一个函数返回值问题探讨_javascript技巧

复制代码 代码如下: //此种为异步,还不等ajax赋完值,函数就return了. function getCaseInfoForMap(){ var formInfo=$("#firstForm").serialize(); var dd; $.ajax({ type:"post", url:"<%=path %>/webmodule/constructionDecision/WjInfo/getCaseInfoForMap.do?timeT

求指教Global.asax中如何能获取登陆保存的ID

问题描述 现在在做一个微信的项目,需要定时同步微信那边传过来的用户信息,我在登陆的时候获取了公众号的ID,保存在Appliction中,求助我在Global.asax写了定时同步用户,求问我如何才能把登陆地时候保存在Appliction中的ID在Global.asax获取!! 解决方案 解决方案二:Appliction是全局的,登陆的用户信息存在Appliction里?!Global.asax提供了一些时间,包括applicationstart,end,sessionstartend等,但就是没

SQLServer2005 Output子句获取刚插入的ID值_mssql2005

语法很简单,比如 复制代码 代码如下: declare @t table (id uniqueidentifier default newid (), name varchar (100 )) insert into @t (name ) output inserted .id select 'jinjazz' union select 'sqlserver' /*输出类似 3880DB77-5ADF-472D-A68D-7518DD76F3B8 F478A3F5-A501-404E-A328-