亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使 PHP Ticker 編號分配更健壯?

如何使 PHP Ticker 編號分配更健壯?

PHP
守候你守候我 2021-09-05 22:02:13
我正在創建一個票務系統。我希望每個條目都是指定范圍之間的唯一數字。我已經創建了函數,我將包含這些函數以展示我是如何處理事物的。如果我一口氣買完所有的票,這個功能一般會有3個或4個重復的號碼。我已經嘗試過這個,但如果一個人一次購買了所有的票,就會以一些重復的結果告終。我認為如果一次購買一些也會發生這種情況。這需要更加健壯。已取票返回一組已取數字function takenNumbers($drawID){    $connect = new mysqli("localhost", "root", "", "dream");    $stmt = $connect->prepare("SELECT * FROM transaction WHERE DrawID = ?");    $stmt->bind_param("i", $drawID);    $stmt->execute();    $result = $stmt->get_result();    $tickets = array();    while($row = $result->fetch_assoc()){        $id = $row['ID'];        $tickets[] = $row['TicketNumber'];    }    return $tickets;}未被采用的數字也以數組形式返回function freeNumbers($drawID){    $minTickets = 1;    $maxTickets = totalTickets($drawID);    $takenNumbers = takenNumbers($drawID);    $freeNumbers = array();    $allTickets = range(1, $maxTickets);    $freeNumbers = array_values(array_diff($allTickets, $takenNumbers));    return $freeNumbers;  }然后我有一個基于這些功能的隨機票生成器function randomTicket($drawID){    $num = freeNumbers($drawID);    $random = array_rand($num, 1);    return $random;}付款處理后,我調用此函數與 randomTicket 一起插入數據庫。for($i = 0; $i < $quantity; $i++){    echo paymentMade($paymentId, $token, $payerID, $drawID) . "<br>";}我收到重復。這不會發生在實時應用程序中。我已經嘗試了很多東西,發現這是一個相當大的編程問題。任何和所有輸入將不勝感激。在此先感謝各位。
查看完整描述

1 回答

  • 1 回答
  • 0 關注
  • 127 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號