我有以下代码应该生成两个随机数,如果之前已经生成过它们,则永远不要重复它们。$ticket_number1 和 $ticket_number2 分别保存在 'ticket1' 和 'ticket2' 字段中的数据库表 'tickets' 中。但是有些问题,我测试了脚本,生成的数字在 1 到 6 之间,我得到了一个结果,其中 $ticket_number1 和 $ticket_number2 是相同的数字(在这种情况下为 4),这不应该发生。之后我再次测试,我得到了两个不同的数字(1和4),但它们之前已经给出,所以它们不应该再次出现。这意味着整个脚本除了生成随机数之外没有做任何事情。我已经被告知mysql_
已被弃用,但这不是脚本不起作用的原因,对吧?关于这应该如何正常工作的任何想法?我在这里先向您的帮助表示感谢。
function getTicket(){
$count=1;
while($count){
$ticket_number = mt_rand(01990, 32000);
$query = "SELECT ticket1 FROM `tickets`
WHERE `ticket1` == '$ticket_number' or `ticket2` == '$ticket_number'";
$count = mysql_num_rows(mysql_query($query));
}
return $ticket_number;
}
$ticket_number1 = getTicket();
$ticket_number2 = getTicket();