2013-03-16 7 views
0

이미지를 표시하는 간단한 코드를 작성했습니다. 이미지는 폴더에 저장되고 이름은 mysql에 저장됩니다. 그러나 문제는 첫 번째 이미지가 db로 총 이미지가있는 것처럼 여러 번 표시된다는 것입니다.첫 번째 이미지 만 표시됩니다.

$query = "Select * from admin_images"; 
$result = mysql_query($query) or die(mysql_error()); 
$rows = mysql_fetch_array($result) or die(mysql_error()); 
$i=mysql_num_rows($result); 
while($i>=1) 
{ 
    $img = $rows['my_image_name']; 
    echo '<img src="../admin_images/$img">'; 
    $i--; 
} 

이미지 이름이 my_image_name 필드에 admin_images 테이블에 저장되고 실제 이미지가 admin_images 폴더에 저장됩니다 여기에 표시하는 이미지에 대한 내 간단한 코드입니다.

답변

1

시도합니다.
프로그램 흐름을 더 잘 이해하려면 아래 코드를 살펴보십시오.

//Query to select the image url from database. 

$query = "Select * from admin_images"; // Try to use proper column name instead of * 
$result = mysql_query($query) or die(mysql_error()); // mysql_* functions are depreciated. So try to avoid using this function. 
$i=mysql_num_rows($result); 

if($i >=1) 
{ 
while($rows=mysql_fetch_array($result)) 
{ 
    $img = $rows['my_image_name']; 
    echo '<img src="../admin_images/$img">'; 

}// The above loop will terminate when the condition becomes false. And hence, till now you will have printed all your images. 
} else { 
echo'No image record found!'; 
} 
2

당신은 행을 하나씩 가져가 : 루프를 통해 이미지 URL을 가져올

$query = "Select * from admin_images"; 
$result = mysql_query($query) or die(mysql_error()); 
while($row = mysql_fetch_array($result) or die(mysql_error())) 
{ 
    $img = $row['my_image_name']; 
    echo '<img src="../admin_images/$img">'; 
    $i--; 
} 
관련 문제