douwan2664 2017-10-05 13:35
浏览 83
已采纳

从MYSQLI查询创建数组

I am updating all my code to Mysqli, before I did I had this code and it worked:

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

This is my SELECT statement:

$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";
}

The SELECT statement ends up echoing all of the correct information, but I want to make an array of only the Id's so that I can pick one at random each time a button is clicked.

I have tried multiple different copies and pastes of code to try and get what I want, but nothing seems to come out right.

Can someone point me in the right direction or explain what I'm doing wrong?

  • 写回答

1条回答 默认 最新

  • doubomudichen0832 2017-10-05 13:41
    关注

    In your while loop you can simply do this :-

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

    And then you can create a random number by "rand()" between the length of 0-$i and can get the job done.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部