php - 从特定表中获取 id 并更改它

标签 php mysql sql

如何从特定表中获取上次使用的索引并向其添加+1?

database login, table cars

我想我需要在这里添加它####

protected function handle_file_upload($uploaded_file, $name, $size, $type, $error,
            $index = null, $content_range = null) {
        $file = parent::handle_file_upload(
            $uploaded_file, $name, $size, $type, $error, $index, $content_range
        );
        if (empty($file->error)) {
            $sql = 'INSERT INTO `'.$this->options['db_table']
                .'` (`carID`,`name`, `size`, `type`, `title`, `description`)'
                .' VALUES (#############,?, ?, ?, ?, ?)';
            $query = $this->db->prepare($sql);
            $query->bind_param(
                'sisss',
                $file->name,
                $file->size,
                $file->type,
                $file->title,
                $file->description
            );
            $query->execute();
            $file->id = $this->db->insert_id;
        }
        return $file;
    }

编辑: 我应该更详细地讨论这个问题。我正在做一个汽车经销网站。有这种大形式的汽车信息,还有 ajax 图像上传。所以我需要将图像与汽车的其余信息联系起来。我的汽车信息表单在数据库中有一个自动递增 id 行。所以我试图通过汽车 ID 将图像与汽车联系起来(我希望每个上传的图像都有汽车 ID)。我有这个 mysql 插入代码,我想添加最后更新的表 id 的值(来自 car 表)并向其添加 +1。这是不是一个好主意?或者我应该走另一条路?

最佳答案

如果 carID 是一个自动递增值,那么您无需执行任何操作。数据库将为您做这件事。只需将值留空 (null),如下所示

INSERT INTO `'.$this->options['db_table']
            .'` (`carID`,`name`, `size`, `type`, `title`, `description`)'
            .' VALUES (null,?, ?, ?, ?, ?)

或者从插入语句中删除该列

INSERT INTO `'.$this->options['db_table']
            .'` (,`name`, `size`, `type`, `title`, `description`)'
            .' VALUES (?, ?, ?, ?, ?)

关于php - 从特定表中获取 id 并更改它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22828892/

相关文章:

php - 将文本框值传递给复选框值

MySql查询: ordering by two fields in two tables

php - 在 PHP 中将 XSD 模板转换为 XML 实例

php - (403) 您的项目无权访问此功能

mysql - 无法添加或更新子行外键约束失败

mysql按日期和用户ID选择行对

java - 列出数据库中的表

mysql - 用于从表中选择的 SQL

mysql - 如何构建具有多个连接表的数据库

php - 如何使用 MYSQL "LIKE"正确检查关键字