使用PHP在mysql中插入数据时返回最后一个id

使用PHP在mysql中插入数据时返回最后一个id,php,mysql,function,mysqli,Php,Mysql,Function,Mysqli,在将数据插入mysql之后,我试图获取最后一个id。我已经尝试使用mysql\u insert\u id(),但它似乎不起作用 下面是PHP代码: function addPhoneContact($customername ,$address ,$email ,$comment,$remarks){ $connection = MySQLConnection(); $conf = new BBSupervisorConf(); $log =

在将数据插入mysql之后,我试图获取最后一个id。我已经尝试使用mysql\u insert\u id(),但它似乎不起作用

下面是PHP代码:

 function addPhoneContact($customername ,$address ,$email ,$comment,$remarks){

        $connection = MySQLConnection();
        $conf = new BBSupervisorConf();
        $log = new KLogger($conf->get_BBLogPath().$conf->get_BBDateLogFormat(),  $conf->get_BBLogPriority() );

        $query="INSERT INTO bb_customer 
                (customername,address ,email ,comment,remarks) 
                VALUES
               ('".$customername."','".$address."','".$email."','".$comment."','".$remarks."');";


            $customerid = mysql_insert_id();
        try {
        $log->LogDebug("Query[".$query."]");
        if (!mysql_query($query)){
            die (mysql_error());      
        }else{
    }
      }catch(Exception $e){
          $log->LogError($e->getMessage());
      }

        closeDB($connection);
        return $customerid;
    }
谢谢你的帮助。

排好这行

$customerid = mysql_insert_id();
在执行查询之后

mysql_query($query)
如果不执行mysql查询,它将不知道id

强烈考虑不要使用MySqL**函数。

把这条线放好

$customerid = mysql_insert_id();
在执行查询之后

mysql_query($query)
如果不执行mysql查询,它将不知道id

强烈考虑不要使用MySqL**函数。


您的$query是否正确执行?为什么在$query中有一个额外的分号?为什么在$query中有一个额外的分号?为什么在$query中有一个额外的分号?-1用于支持使用不推荐的
mysql\ucode>函数,而不是建议
mysqli
PDO
@Nikola我感谢您的想法。您还可以编辑答案。是什么阻止了你这么做?@chanchal118,没有什么阻止我,但我不明白为什么我要写这些信息,而这是你的答案。我投了反对票,因为我认为这个问题没有得到最好的回答(实际上比中立的回答更糟),因此我会给你一个如何改进的意见。如果你这样做,我可以很容易地改变我的投票。我相信否决票是正确的,因为不应该再使用
mysql\u
函数,即使
mysql\u insert\u id()
可以完成这项工作,你也应该建议更好的方法[替代方法],这样我们就不会参加考试了。这是一个社区。我们应该总是以最好的方式改进问题或答案。问
你为什么没有这样做?
不是最好的办法。@chanchal118问这种问题正是评论的目的,编辑不应改变答案的预期含义。-1对于支持使用不推荐使用的
mysql\uu
函数,并且不建议使用
mysqli
PDO
@Nikola,我感谢您的想法。您还可以编辑答案。是什么阻止了你这么做?@chanchal118,没有什么阻止我,但我不明白为什么我要写这些信息,而这是你的答案。我投了反对票,因为我认为这个问题没有得到最好的回答(实际上比中立的回答更糟),因此我会给你一个如何改进的意见。如果你这样做,我可以很容易地改变我的投票。我相信否决票是正确的,因为不应该再使用
mysql\u
函数,即使
mysql\u insert\u id()
可以完成这项工作,你也应该建议更好的方法[替代方法],这样我们就不会参加考试了。这是一个社区。我们应该总是以最好的方式改进问题或答案。问
你为什么没有这样做?
不是最好的办法。@chanchal118问这样的问题正是评论的目的,编辑不应该改变答案的意图。