【问题标题】:How to get last inserted in database in Medoo framework如何在 Medoo 框架中最后插入数据库
【发布时间】:2016-06-23 05:50:15
【问题描述】:

请帮助我无法在 medoo 中获取最后插入的 ID

下面是我的代码:

 <?php
        header('Access-Control-Allow-Origin: *');
        header('Access-Control-Allow-Methods: GET,OPTIONS,POST,PUT,DELETE');
        header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
        require 'vendor/autoload.php';
        $app = new\Slim\Slim();
        $app->container->singleton('db',function () use ($app) {
            return new medoo([
            'database_type' =>'pgsql',
            'database_name' =>'emergency',
            'server'=>'localhost',
            'username' =>'postgres',
            'password' => 'root',
            'charset' => 'utf8',
            'option' =>[
                PDO::ATTR_CASE=>PDO::CASE_NATURAL
            ]
            ]);
        });
$app->db->post('/getinfo',function()
{
$body = $app->request->post();
 $app->db->insert("emergencymessages", [

            "message" =>$body["msg"],
            "createdby"=>$createdby
            ]); 
});

现在我想获取紧急消息表的最后插入 id 怎么能 我明白了吗??

【问题讨论】:

    标签: medoo


    【解决方案1】:

    根据文档 (http://medoo.in/api/insert),insert 函数返回最后一个插入 ID。

    $last_insert_id = $app->db->insert("emergencymessages", [
                  "message" =>$body["msg"],
                  "createdby"=>$createdby
                ]); 
    

    编辑:

    你可以尝试直接在medoo的pdo对象上调用lastInsertId();

    $last_insert_id = $app->db->pdo->lastInsertId();
    

    【讨论】:

    • 但这什么也没给我:(
    • 首先我这样做了,但我没有得到 id
    • 嗯,这很奇怪。数据是否正确插入?
    • 那么var_dump($app-&gt;db-&gt;error())的输出是什么?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-20
    • 2023-03-14
    相关资源
    最近更新 更多