我有以下代码在mysql中完美地命令我的数据:
<?php
$con = mysql_connect('localhost','root','password');
mysql_select_db("users");
$pop = mysql_query("
SELECT * FROM images ORDER BY pop DESC LIMIT 9
");
while($row = mysql_fetch_array($pop))
{
echo $row['imagefile'];
echo "<br />";
}
mysql_close($con);
?>
但是我希望每个“结果”然后自动被指定为变量。例如,“uploads / logo.png”作为上述代码的第一个“结果”出现。然后我希望将其分配为$ image_1 - 因此在代码中它会显示为$ image_1 =“uploads / logo.png”。然后,我希望将所有其他8个输出分配给变量,以便$ image_2对应于第二个输出,依此类推。这只是一个原型。我希望它最终输出100个结果。这是可能吗?非常感谢你的时间。
答案 0 :(得分:2)
使用数组。
$images = array();
while($row = mysql_fetch_array($pop))
$images[] = $row['imagefile'];
或保留关联数组:
$imageData = array();
while($row = mysql_fetch_array($pop))
$imageData[] = $row;
// $imageData[0]['imageFile'] will be "uploads/logo.png"
编辑以下评论:
上面的第一种方法:
<?php
foreach ($images as $image) {
echo <<<EOT
<div class="box"><img src= "$image" width="200" height="150"></a></div>
EOT;
}
?>
第二种方法可能涉及更多,具体取决于您的数据:
<?php
foreach ($imageData as $image) {
$imagePath = $image['imageFile'];
$imageWidth = $image['width'];
$imageHeight = $image['height'];
echo <<<HTML
<div class="box"><img src= "$imagePath" width=$imageWidth height=$imageHeight></a></div>
HTML;
}
?>