我有一个系统,可以一次生成一批随机代码,最多 100 个。然后将它们插入到数据库中。我正在使用代码生成器,不太可能再次创建类似的代码,但为了确保我想检查数据库是否有重复的代码。我的理论..
$amount_of_codes
while ($x != $amount_of_codes)
{
$code = gencode();
$mysql_check = "SELECT code FROM data WHERE code = '$code'";
$mysql_check_result = mysql_query($mysql_check);
$check = mysql_num_rows($mysql_check_result);
if (!$check)
{
mysql_query("INSERT INTO data(code) values('$code')")
$x++
}
}
看起来很乱,有更好的想法吗?
最佳答案
给Code
列一个唯一的约束:
CREATE TABLE Code
(
Code ..
..
CONSTRAINT Code_Unique UNIQUE (Code),
..
);
插入时您只需要捕获数据库异常/错误,而不用担心代码是否已经存在。
关于php - 检查密码的有效方法在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12911810/