2014-12-15 5 views
-1

나는 마지막 요소 값을 얻고있다 마지막 레코드얻기 마지막 레코드의 값은

<?php 
    global $cat_id; 
    $dwnld_sql = "SELECT * FROM wp_dm_downloads"; 
    $dwnld_qry = mysql_query($dwnld_sql); 
     while($dwnld_row = mysql_fetch_array($dwnld_qry)){ 
      echo $link = $dwnld_row['link']; 
      echo $dwnld_name = $dwnld_row['name']; 
     $cat_id = $dwnld_row['category']; 
     } 
    ?>   

    <?php 
     $sql = "SELECT * FROM wp_dm_category"; 
     $myquery = mysql_query($sql); 
      echo '<ul>'; 
       while($row = mysql_fetch_array($myquery)){ 
        $x = $row['name']; 
        echo $x_id = $row['id']; 
     ?> 
      <li><a href="#"><?php echo $x; ?> 
      <?php if($x_id == $cat_id) { ?> 
       <ul> 
      <li><?php echo $dwnld_name; ?></li> 
       </ul> 
     <?php } ?> 
      </a></li> 
      <?php echo "<br/>"; 
       } 
      echo '</ul>'; 
      ?> 

답변

1

그것은 문자열의 루프에서 값을 가져 오기 때문입니다.

Everytime 루프가 실행되면 최근 값으로 값을 덮어 씁니다.

당신은 foreach

수정 코드를 사용하여 해당 배열을 통해 그와 루프 값을 배열을 생성하고 추가 할 수 있습니다 :

<?php 
global $cat_id; 
$dwnld_sql = "SELECT * FROM wp_dm_downloads"; 
$dwnld_qry = mysql_query($dwnld_sql); 
$downloads = array(); 
while($dwnld_row = mysql_fetch_array($dwnld_qry)){ 
     $downloads['link'] = $dwnld_row['link']; 
     $downloads['dwnld_name'] = $dwnld_row['name']; 
    $downloads['cat_id'] = $dwnld_row['category']; 
} 
?> 

이제 루프 배열 $downloads을합니다.

참고 : mysql_function은 더 이상 사용되지 않으며 이후 버전의 PHP에서는 삭제 될 예정입니다.

+0

mysql_ * api의 사용을 권장하지 않습니다. 사용되지 않는 wordpres는'$ wpdb'를 사용합니다 – Saqueib

0

루프에 $dwnld_name을 반향 시키거나 배열에 이름을 저장해야합니다.

이 솔루션을 사용하면 루프마다 $dwnld_name 변수를 덮어 쓸 수 있으며 결과적으로 루프 이후에 마지막 레코드가 생깁니다.