php - 如何通过 Yii 2 将最后插入的 id 存储在变量中

标签 php mysql activerecord yii2

我想使用 Yii 2 存储我的一个数据库表的最后插入的 ID。

我尝试使用lastinsertID创建一个新函数,但它说数据库连接未激活

<?php

namespace app\models;
use Yii;
use yii\db\ActiveRecord;

// modelo para conectar la base de datos con el modelo

class Articulo extends ActiveRecord{

   public static function getDb()
   {
       return Yii::$app->db;
   }

   public static function getLastId(){

    $connection = Yii::$app->db;
    $last = $connection->lastInsertID;
    //Yii::$app->db->getLastInsertID('revista');
    return $last;
   }

   public static function tableName()
   {
    return 'articulo';
   }

}

我正在从 Controller 调用 getLastId()

我做错了什么?

最佳答案

enter code here




    if($model->load(Yii::$app->request->post())) 
    {


        if($model->validate() )
        {

            $table = new Articulo;

            $model1 = Articulo::getLastId();

            $table->titulo_articulo = $model->titulo_articulo;
            $table->resumen_articulo = $model->resumen;
            $table->autor_articulo = $model->autor
            $table->id_revista = $model1;

            $table->desc1_articulo = $model->descriptor_1;
            $table->desc2_articulo = $model->descriptor_2;
            $table->desc3_articulo = $model->descriptor_3;
            $table->desc4_articulo = $model->descriptor_4;


            }
            if($table->insert() )
            {

                $id = $table->id_articulo;
                $msg = "Has subido los datos de la revista con ID unica ".$id ." de manera correcta";
                $model-> titulo_articulo = null;
                $model-> resumen = null;
                $model-> autor = null;
                $model-> descriptor_1 = null;
                $model-> descriptor_2 = null;
                $model-> descriptor_3 = null;
                $model-> descriptor_4 = null;   

关于php - 如何通过 Yii 2 将最后插入的 id 存储在变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32939358/

相关文章:

php - Paypal IPN 返回空白 POST 或 GET

java - JPA Hibernate 两个外键指向同一个表

javascript - 如何提取 mysql 列值并将其放入同一页面的 <div> 中?

mysql在where子句中重复子查询

mysql - 高效的mysql全文索引

ruby-on-rails - ActiveRecord `.references` 加入比必要更多的表? (并导致错误)

php - 在 CodeIgniter Activerecord 中执行 WHERE !=

php - ORM 查询结果 : Arrays vs Result handle wrapped in Iterator interface

php - 通过 mysql 表中的主键命名 cytoscape 的节点

php - 当 WooCommerce 中提供免费送货时,仅禁用特定的固定费率送货方式