2011-03-10 7 views
1

PHP를 사용하는 데 비교적 익숙하며 데이터베이스에서 데이터를 가져 오기 위해 PHP를 사용하고 있습니다. 작성하려는 I는 다음과 같이 내가 필요한 열 수를 알고있을 때 아주 쉽게 테이블에서 쿼리를 플롯 할 수 있었다 :PHP : 테이블에 쿼리 결과를 플롯하는 함수

 echo "<table border='1'>"; 
      echo "<tr><td align='center' colspan='6'><b>All ".$catDesc." CD's</b></td></tr>"; 

      while ($row = mysql_fetch_array($result)){ 
       echo "<tr bgcolor='#fff'> 
         <td>".$row['catDesc']."</td> 
         <td>".$row['CDTitle']."</td> 
         <td>".$row['CDYear']."</td> 
         <td>".$row['artistName']."</td> 
         <td>£".$row['CDPrice']."</td> 
         <td>".$row['PubName'].", ".$row['location']."</td> 
        </tr>"; 
      } 
     echo "</table>"; 

별도의 기능에 몇 가지 코드를 작성하는 어떤 방법이 있는지 궁금 해서요 이는 쿼리 결과가 보유한 필드/열의 수에 관계없이 주어진 쿼리의 결과를 플롯합니다.

공유하고 싶은 조언이나 코드를 이용해 주셔서 감사합니다.

조니는 $ 행 변수를 반복하고 새로운 TD-요소마다 만들 수있는 반면 루프 내에서

답변

4

:

while($row = mysql_fetch_assoc($result)) 
{ 
    echo "<tr bgcolor='#fff'>"; 

    foreach($row AS $key => $value) 
    { 
     echo "<td>$value</td>"; 
    } 

    echo "</tr>"; 
} 
+0

을 사용할 http://php.net/manual /en/function.array-keys.php 열 이름의 첫 번째 행 – n00b

+1

이렇게하면됩니다. 확실히 mysql_fetch_assoc()의 사용에 주목하라. mysql_fetch_array()는 각 값에 숫자와 문자열 색인을 제공하기 때문에 이중 값을 제공한다. –

+0

네 말이 맞아. 나는 mysql_fetch_array를 수정했다! 더 이상 확인하지 않고 질문에서 원시 몸체를 복사했습니다. 고마워요 :) –

관련 문제