1
我正在製作一個腳本,當玩家人數爲4時,我將給出玩家號碼。現在我有一個玩家表,我將用玩家號碼更新,但我無法看到適合既獨特數生成和更新表圈起來......在腳本中,我將讓所有玩家數3的這個條件......如何爲玩家提供唯一的號碼
我到目前爲止是這樣的:
<?PHP
include '../config.php';
$con = mysql_connect($hostip, $mysqluser, $mysqlpass);
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db($mysqldatabase, $con);
$gameid = '08e893ac1c4446758ee44423c173c5aa';
/////////////////////////// mysq connect end
$sql=mysql_query("SELECT DISTINCT username FROM table");
$pn = array();
while (count($pn) < 4) {
$random = mt_rand(1,4);
if (!in_array($random,$pn)) {
$pn[] = $random;
$rr = $random;
while ($rowx = mysql_fetch_array($sql)) {
echo $rr.' '.$rowx['username'].' ';
}
}
}
print_r($pn); ?>
輸出爲
3 user1 3 user2 3 user3 3 user4 Array ([0] => 3 [1] => 1 [2] => 4 [3] => 2)
我想它只能得到第一個數字...我也嘗試過其他方式,但這似乎是一個更好的目前找到解決方案。
//編輯解決方案
$randoms = range(1, 4);
shuffle($randoms);
while ($rowx = mysql_fetch_array($sql)){
$random = array_shift($randoms);
echo $random.' '.$rowx['username'].' ';
}
$隨機量=範圍(1,4); shuffle($ randoms); 而($一行x = mysql_fetch_array($ SQL)){ \t \t $隨機= array_shift($隨機量); \t echo $ random。' '$一行x [ '用戶名'。' 「; \t} – Logan 2011-05-16 11:30:24
工作感謝! – Logan 2011-05-16 11:30:41