2014-07-14 2 views
-1

나는 차를 성공적으로 만들었고 차 이름도 성공적으로 검색했지만 특정 차 이미지를 검색하는 방법에 대해서는 잘 모릅니다. 중첩 된 foreach를 사용했지만 예상 한대로 작동하지 않았습니다. 대신에 특정 이미지를 자동차 ID로 표시하는 경우 모든 ID에 대해 마지막 폴더에서 동일한 이미지가 표시됩니다.중첩 된 foreach를 사용하는 방법

여기 내 코드입니다 : 또한 나는 foreach는 내부에 특정 자동차에 관한 다른 모든 정보를 검색 어떻게

while($row = mysql_fetch_array($result_name,MYSQL_ASSOC)) { 
    $car[$row['carMake_id']][] = $row['carName']; 
    //$car_name_id=$row['carName_id']; 
    $gallery=$row['gallery']; 
    //$car_make_id=$row['carMake_id']; 
    //$car_gallery[$row['carName_id']][]=$row['gallery']; 
} 

foreach ($car as $carmake => $carname) { 
    echo "<tr><td style='background-color:#0066cc;'><b>".$carmake ."</b></td></tr><tr>"; 
    foreach ($carname as $title) { 
     echo "<td>".$title . "<br/>&nbsp;"; 
     ?> 
     //this part displays image.. I want it to display according to the car name ($title) 
     <img src="management/uploads/<?php echo $carmake;?>/<?php echo $gallery;?>" width="100" height="100"></td> 
     <?php 
    } 
    echo'</tr>'; 
} 

?

감사합니다.

EDITED 부 :

$gallery[]=$row['gallery'];//inside while loop 


foreach ($car as $carmake => $carname) 
             { 

             echo "<tr><td style='background-color:#0066cc;'><b>".$carmake ."</b></td></tr><tr>"; 
foreach ($carname as $title) { 
echo "<td>".$title . "<br/>&nbsp;"; 

foreach($gallery as $g)//new foreach to retreive images 
{ 
echo $g; 
} 
?> 

<img src="management/uploads/<?php echo $carmake;?>/<?php echo $g;?>" width="100" height="100"></td> 
+0

단지 하나의'$ gallery' 변수가 있습니다. 마지막 행의 갤러리가 포함되어 있습니다. 자동차 이름에 고유하게하려면 배열에 입력해야합니다. – Barmar

+0

중첩 된 foreach가 필요하지 않은 것 같습니다. '$ row [ 'gallery']'의 값은 무엇입니까? – Havenard

+0

@Havenard, 나는 $ gallery = $ row [ 'gallery']의 실수를 범했습니다. 불행히도 배열을 사용하지 않은 이미지 이름입니다. – kNair

답변

2

당신은 배열에 gallery을 넣어해야합니다.

<?php 

while($row=mysql_fetch_array($result_name,MYSQL_ASSOC)) 
    { 
     $car[$row['carMake_id']][] = $row; 
    } 

foreach ($car as $carmake => $carname) 
    { 
     echo "<tr><td style='background-color:#0066cc;'><b>".$carmake ."</b></td></tr><tr>"; 
     foreach ($carname as $title) 
      { 
       echo "<td>{$title['carName']}<br/>&nbsp;"; 
       //this part displays image.. I want it to display according to the car name ($title) 
       echo "<img src='management/uploads/$carmake/{$title['gallery']}' width='100' height='100'></td>"; 
      } 
     echo'</tr>'; 
    } 

?> 
+0

그것은 작동합니다 ... {$ title [ 'gallery']}, 이것을 연관 배열이라고 부릅니까? 그리고 그 특정 carname_id의 다른 세부 사항을 호출하는 데 사용할 수 있습니까? – kNair

+0

예, 연관 배열입니다. 'carMake_id'를 자동차 이름 배열에 매핑하기 위해 이미 연관 배열을 사용하고있었습니다. 방금 다른 차원을 추가했습니다. – Barmar

+0

정말 고마워요. – kNair

관련 문제