创建从mysqli的查询的Array

问题描述:

我更新我的所有代码到mysqli的,之前我做了我有这个代码和它的工作:创建从mysqli的查询的Array

while($row = mysql_fetch_assoc($WildHorses)){ 
    $InWild[] = $row['id']; 
    } 
$RandomWild = array_rand($InWild); 
$RandomHorse = $InWild[$RandomWild]; 

这是我的SELECT语句:

$sql = "SELECT Horse.id, Horse.Name, Horse.Age, Horse.Image_name, Horse.Owner, Horse.Barn, Images.Image_path, Images.Image_name FROM Horse, Images WHERE Horse.Owner = '$colname_WildHorseList' AND Images.Image_name = Horse.Image_name"; 

$result = mysqli_query($con,$sql); 

if (mysqli_num_rows($result) > 0) { 
// output data of each row 
while($row = mysqli_fetch_assoc($result)) { 
    echo "id: " . $row["id"]. " Name: " . $row["Name"]. " ImageName: " . $row["Image_name"]. "<br>"; 
} 
} else { 
echo "0 results"; 
} 

的SELECT语句最终会回显所有正确的信息,但是我想只创建一个Id的数组,以便每次点击一个按钮时随机选择一个。

我已经尝试了多种不同的副本和代码粘贴来尝试获取我想要的内容,但似乎没有任何结果。

有人能指出我正确的方向或解释我做错了什么吗?

+0

Juust使用你以前的代码阵列我不知道为什么它不应该工作 –

+0

@VelimirTchatchevsky我也没有。这就是为什么我迷路了。当我尝试回显$ RandomHorse时,我什么也得不到,当我执行if语句来查看显然有什么错误时,$ row不会= mysqli_fetch_assoc($ result),因为当我测试它时它总是给我“else” –

在while循环,你可以简单地这样做: -

$i=0; 
$animals=array(); 
$animals[$i]=$row["id"]; //puts id in array 

然后你就可以创建一个随机数“RAND()”的0- $我 长度之间,并能得到这份工作完成。

+0

是否有一个特定的顺序,所有这些都应该去,因为当我添加,我仍然没有看到任何东西。我试图回显数组中的随机ID。 –

+0

尝试回显你的数组,你是否得到每个索引上的每个ID? – Asim

+0

当我回应任何它,没有任何工作,显然$行不= mysqli_fetch_assoc($结果) –