我创建了一个while循环,为用户生成随机图像。每次我加载页面时,while循环产生一个随机数的图像。我希望它显示10,但它会产生3-10图像的任何地方。我检查了数据库,并且user_id
对每个条目都是独一无二的。我不知道为什么这样做。代码有什么问题?我还会接受一个答案,指出一个方向(教程链接)以更好的方式重写此代码。循环结果不稳定
<?php
$query = mysql_query("SELECT `user_id` FROM `users` ORDER BY RAND() LIMIT 0, 10");
$r = 1;
while ($results_row = mysql_fetch_assoc($query))
{
$var_1 = $results_row['user_id'];
$getting_essentials = mysql_query("SELECT
`band_name`,`donated_money`,`donated_time` FROM `create_project` WHERE `user_id` =
$var_1");
$getting_results = mysql_fetch_assoc($getting_essentials);
$bandsname = $getting_results['band_name'];
if (isset($bandsname) === true) {
$donatedmoney = $getting_results['donated_money'];
$donated_time = $getting_results['donated_time'];
$var_2 = username_from_user_id($var_1);
$image_name = 'images/' . md5($var_2) . '_' . $var_1;
echo '<a href="' . $var_2 . '"><img src="' . $image_name . '" class="'.$r.'"
width="300" height="185"/></a>';
}
$r++;
}
?>
如果'user_id'是唯一的,那么你就不需要'DISTINCT'。 – staticsan
谢谢。尽管如此,我仍然会遇到同样的错误行为。 – jason328
$ var_2的用途是什么,我的意思是$ var_2被赋值,$ image_name不包含任何图像扩展名,代码会生成类似'images/jdgjkgdfkgf234/5'的东西。所以它不应该显示图像。 –