php - 寻求帮助创建唯一 ID 并确保它不存在于数据库中

标签 php mysql function compare

我正在尝试创建一个函数,该函数在运行时创建数字 ID,检查该 ID 是否存在于数据库中,如果存在,则创建另一个 ID 并再次检查,直到它具有唯一 ID。我一直在研究如何使用函数循环函数

function createUniqueID() {

function buildUnique() {
    $uniqueID = rand(100000000000,999999999999);
    return $uniqueID;
}

function compareWithDB($uniqueID) {
    $s = "SELECT id FROM table WHERE id='{$uniqueID}'";
    $r = mysql_query($s);
    return $r;
}

function countDBRows($r) {
    if(mysql_num_rows($r) >0){
        $f = false; // found   
    } else{
        $f = true;
    }
}

$uniqueID = buildUnique();
$r = compareWithDB($uniqueID);
$f = countDBRows($r);

if (!$f) {
    $uniqueID = 'nope';
}

return $uniqueID;

}

最佳答案

你最好调用 MySQL 的 UUID()函数,并存储并返回它的值,除非该值绝对必须是数字。

SELECT UUID();

关于php - 寻求帮助创建唯一 ID 并确保它不存在于数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8777805/

相关文章:

php - 准备好的查询字符串

php - 如何将端口 80 的 Node.js 本地主机与端口 90 的 apache mysql 连接?

php - 在开关外部访问数据库数组键/值

javascript - 我不知道为什么 JavaScript 中的函数 Flip() 没有返回任何内容。我希望它返回,无论是正面还是反面

php - Unix 时间戳和 JavaScript 时间;太大!

php - mysql_fetch 无法收集数据库中的所有数据

Mysql - 合并 2 个 SQL 查询

python - 从函数返回数组索引

javascript - ES6解构函数参数-命名根对象

MySQL触发器跨表匹配字段