1
我正在創建一個簡單的拖放jQuery遊戲,它需要從我的數據庫表中10行的洗牌結果集。我能夠通過重複10個獨立的查詢塊來實現這一目標,但我相信必須有一種更優雅的方式來實現這一點。我嘗試了很多東西,循環和追加等,但我無法獲得循環方式的工作。從數據庫表結果創建一個隨機關聯數組
我不能讓這個循環版本的工作:
<script type="text/javascript">
<?php
// first create list of 10 fake id's and shuffle them
$id_array = range(0, 9);
shuffle($id_array);
/*
// then loop to fetch all data from MySql table with spanish, english
// CANNOT GET THIS WORKiNG ?
for (i = 0; i < 10; i++) {
$query = "SELECT id, english, spanish FROM colors WHERE id = $id_array[i]";
$result = mysqli_query($link, $query);
$row = mysqli_fetch_array($result);
$rand_value.append(i) = $row['english'];
$name.append(i) = strtoupper($row['spanish']);
}
*/
寫出來的作品,但必須有一個更簡單的方法...
<script type="text/javascript">
<?php
// create all input from MySql table for drag and drop area with spanish, english
$query = "SELECT id, english, spanish FROM colors WHERE id = $id_array[0]";
$result = mysqli_query($link, $query);
$row = mysqli_fetch_array($result);
$random_key0 = $row['id'];
$rand_value0 = $row['english'];
$name0 = strtoupper($row['spanish']);
$query = "SELECT id, english, spanish FROM colors WHERE id = $id_array[1]";
$result = mysqli_query($link, $query);
$row = mysqli_fetch_array($result);
$random_key1 = $row['id'];
$rand_value1 = $row['english'];
$name1 = strtoupper($row['spanish']);
// and so on to run 10 queries total
?>
我剛剛對您的問題進行了重大修改。我知道你想解釋你的項目,但是如果所有不相關的內容都從你的問題中刪除,它對未來的讀者更有幫助。我修改了你的標題,內容和標籤(試圖改進你的問題),如果你不喜歡我所做的,你可以重新編輯你的問題,但請理解,創建一個最小和明確的問題是目標。 – mickmackusa