【发布时间】:2013-12-03 07:13:18
【问题描述】:
我正在尝试在循环外使用$description 变量。请帮我做。
<?php
$sql_album = "SELECT * FROM albums";
$res_album = mysql_query($sql_album) or die(mysql_error());
$albums = array();
$description = "";
while ($row_album = mysql_fetch_assoc($res_album)) {
$description = $row_album['description'];
$albums[$row_album['title']] = array(
'images/albums/'.$row_album['title'].'/1.jpg',
'images/albums/'.$row_album['title'].'/2.jpg',
'images/albums/'.$row_album['title'].'/3.jpg',
'images/albums/'.$row_album['title'].'/4.jpg'
);
}
foreach ($albums as $name => $a) {
?>
<div id="album">
<a href="view_album.php?name=<?php echo $name; ?>" data-images="<?php echo implode('|', array_slice($a,1))?>" class="album">
<img src="<?php echo $a[0]?>" alt="<?php echo $name?>" />
<span class="preloader"></span>
</a>
<div class="album_info">
<a href="view_album.php?name=<?php echo $name; ?>"><h4><?php echo $name?></h4></a>
<p><?php echo $description; ?></p>
</div>
</div>
<?php
}
?>
我应该先创建一个数组,还是先定义它,我完全糊涂了,需要帮助。
【问题讨论】:
-
访问
$description对您没有帮助。想想看,它只有while循环的last 迭代的值。您将无法获取相应图像的值。 -
mysql_*函数不再维护,不应在任何新代码库中使用。它正在逐步淘汰,以支持更新的 API。相反,您应该将prepared statements 与PDO 或MySQLi 一起使用。
标签: php arrays variables loops while-loop