我想返回随机值。我不知道为什么它会工作。像这样的代码。
我的表有3个字段:id,items,color。
值为:
1-bicycle-blue
2-car-black
3-phone-blue
查询
$a="SELECT items FROM table WHERE color = 'blue'";
$b=mysql_query($a);
$c=mysql_num_rows($b);
for($d=0; $d<$c; $d++){$e[]=mysql_fetch_array($b); $f[]=$e[$d][0].'<br>';}
,然后
echo array_rand($f);
当我刷新时,它不会返回自行车或手机而是返回索引号 0 - 1 。
我尝试将像$a=[bicycle,phone]; echo array_rand($a);
这样的手册放在其中。这是怎么回事?
答案 0 :(得分:1)
我认为你的循环应该像
for($d=0; $d<$c; $d++){
$e[] = mysql_fetch_array($b);
$f[] = $e['items'].'<br>';
}
修改强>
我认为Cbroe给出了这个问题的关键。 mysqli中的完整示例代码,我不做mysql,sry:)
//Connnection
$con = mysqli_connect( "somedbase", "dbuser", "dbpass", "dbscheme");
//Query string
$sql = "SELECT items FROM table WHERE color = 'blue'";
//Get results from DB
$result = mysqli_query($con, $sql);
//Loop through result set
while($row = mysqli_fetch_array($result)){
//put each row into arr
$arr[] = $row['items'];
}
//output random array item
echo $arr[array_rand($arr)];
答案 1 :(得分:1)
您可以使用MySQL
按兰德订购()
在你的查询中。这将直接为您提供所需的结果。