php - 如果名称存在则另存为 name(1) name(2) 等等

标签 php mysql

有一个存储 id 和名称的 mysql 数据库,当用户使用表单创建名称时,他们可以创建现有名称,因为唯一的 id 是 ids,例如:

d49f2c32f9107c87c7bb7b44f1c8f297 name
2fa9c810fbe082900975f827e8ed9408 name

我想要做的是在插入数据库时​​保存第二个“名称”->“名称(1)”。

到目前为止我所得到的就是这个想法

假设输入的名称是“name”

$input = 'name';

选择我们要从mysql数据库中检查的名称

mysql_query(SELECT * FROM  `table` WHERE  `name` =  '$input');

如果结果存在,则插入为 $input.'(1)'

我的问题是,如果名称存在,并且名称(1​​)也存在,那么我如何在其中添加名称(2)...

最佳答案

您可以返回数据库中具有该名称的人数,然后将该数字加 1。

SELECT COUNT(id) FROM table WHERE name LIKE '$input(%)');

关于php - 如果名称存在则另存为 name(1) name(2) 等等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5978739/

相关文章:

php - Laravel 5.5 - 如何检查查询生成器是否已成功插入数据?

php - 在 php 模板中将对象居中。如何?

php - Laravel 'User' 模型没有 id 列

PHP 5.4 ForEach 疯狂吗?

php - Mod 重写模式问题

mysql - PHP MySQL 插入查询未按预期工作

php - 如何将XXXX/XX/XX等数据插入表字段?

MySQL `INSERT INTO SELECT` 子句在唯一字段上生成重复条目错误

Java JPA - 内部联接查询不起作用

mysql - 从 CSV 导入部分数据到 MySQL