我到处搜索都没有找到答案。
我正在尝试为我的用户插入一个介于 9999,99999999 之间的随机 ID 号。问题是它们必须是独一无二的。我已设置好所有内容,但为 id 设置了自动增量。我想我会保留自动递增字段并为唯一 ID 添加另一行。
这是我到目前为止得到的:
$id = mt_rand(9999,99999999);
$query = "SELECT * FROM accounts";
$result = mysql_query($query) or die(mysql_error());
while($account = mysql_fetch_array($result)){
if ($id == $account['id']){
$id = mt_rand(9999,99999999);
} else {
$sql = "INSERT INTO accounts (id, username, email, password, sex)
VALUES ('$id', '$username', '$email', '$password', '$sex')";
mysql_query($sql);}}
现在我想如果我创建一个随机数,检查数据库是否存在创建另一个,否则插入它,但它不起作用,如果它是一个简单的解决方案我很抱歉。
再次感谢:)
最佳答案
这似乎是一个愚蠢的答案:
如果您已经在唯一键上使用auto_increment
,则无需添加另一个唯一键
关于php - 使用php为mysql数据库生成一个随机id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5504270/