我仍然在学习函数以及它们是如何工作的。我知道我在做什么错,而不是如何解决它。我正在写一个函数,将图像数据从数据库中提取出来并返回到屏幕上。它可以工作,但如果有多个图像,它将只返回最后一张图片。我知道问题是$project_image
只返回最后一个图像,因为while循环的工作方式,但我的问题是我怎么可能不使用一个while循环或使它添加多个图像到$project_image
变量。在函数中使用循环
摘编功能
function get_project_image($id,$type="thumb",$src="false",$limit=1){
if($type =="main"){
$project_image_qry = mysql_query(" SELECT i_name FROM `project_images` WHERE i_project_id = '$id' AND i_type= '2' LIMIT $limit ") or die(mysql_error());
$project_image="";
while($project_image_row = mysql_fetch_array($project_image_qry)) {
$project_image_result = mysql_fetch_array ($project_image_qry);
if($src=="true"){
$project_image .= '<img src="'.admin_settings('site_url').admin_settings('image_main_dir').'/'.$project_image_result['i_name'].'" alt="project_image"/>';
}
else{
$project_image .= $project_image_result['i_name'];
}
}
}
return $project_image;
}
非常感谢你!这很好,我相信你在上面例子中'while'循环中使用'$ project_image_result'而不是'$ project_image_row' 此外,关于您对默认限制的评论,我的函数调用看起来像'echo get_project_image($ project_row ['p_id'],“main”,“true”,2);'我将其限制为默认为1两种图像类型每种类型只有一个图像。再次感谢 – BandonRandon 2010-06-26 00:45:27
@Bandon的确,接得好;它现在已经修复了 – 2010-06-26 01:46:48