PHP는

2012-12-12 7 views
2

완벽PHP는

작품을 해결 HTML 테이블 헤더에 대한 MySQL의 테이블 열 이름을 에코!

<table> 
    <thead> 
    <tr> 
     <?php 
     $row = mysql_fetch_assoc($result); 
      foreach ($row as $col => $value) { 
       echo "<th>"; 
       echo $col; 
       echo "</th>"; 
      } 
     ?> 
     <th>Edit</th> 
    </tr> 
    </thead> 
    <tbody> 
    <?php 
    // Write rows 
    mysql_data_seek($result, 0); 
    while ($row = mysql_fetch_assoc($result)) { 
     ?> 
    <tr> 
     <?php   
    foreach($row as $key => $value){ 
     echo "<td>"; 
     echo $value; 
     echo "</td>"; 
    } 
    ?> 
     <td><button id="edit_project_button(<?php echo $row['ID']; ?>)" class="edit-project-button edit button" onclick="editproject(<?php echo $row['ID']; ?>)">Edit</button></td> 
    </tr> 
    <?php } ?> 
    </tbody> 
</table> 

내가 적절하게 mysql_fetch 기능을 사용하여 HTML 테이블을 에코 할 : 여기 내 마지막 코드입니다. thead에 mysql 테이블 열 이름을 포함시키고 tbody에 mysql 테이블 결과 집합을 포함시킬 계획입니다. SQL 쿼리는 테이블에서 기본 제한이 설정된 두 개의 열을 선택합니다.

문제 : 테이블 데이터의 첫 번째 행을 인쇄하지 않는 것, 모든 다른 디스플레이 (기록 # 1 누락은)

그것은, 그것은 각에서 echo'd 열 이름으로 표시 은 첫 번째 레코드 인을 건너 뛰고 두 번째 행을 성공적으로 에코합니다. 예를 들면 다음과 같습니다.

| id | firstname | lastname | date_start | date_end | clientid | members | edit   | 
| 2 | Cal  | Clark | 2012-12-12 | 2012-12-12 | 22  | Rob  | (edit button) | 
| 3 | Rob  | Robin | 2012-12-12 | 2012-12-12 | 33  | Cal  | (edit button) | 

첫 번째 레코드가 phpmyadmin의 내 검색어에 표시 될 것임을 100 % 확신합니다. 내가 지금 너무 모른다는 느낌이

<table> 
    <thead> 
    <tr> 
     <?php 
     $row = mysql_fetch_assoc($result); 
      foreach ($row as $col => $value) { 
       echo "<th>"; 
       echo $col; 
       echo "</th>"; 
      } 

     ?> 
     <th>Edit</th> 
    </tr> 
    </thead> 
    <?php 
    // Write rows 
    while ($row = mysql_fetch_array($result)) { 
    ?> 
    <tr> 
    <td><?php echo $row[0]; ?></td> 
    <td><?php echo $row[1]; ?></td> 
    <td><?php echo $row[2]; ?></td> 
    <td><?php echo $row[3]; ?></td> 
    <td><?php echo $row[4]; ?></td> 
    <td><?php echo $row[5]; ?></td> 
    <td><?php echo $row[6]; ?></td> 
    <td><button id="edit_project_button(<?php echo $row[0]; ?>)" class="edit-project-button edit button" onclick="editproject(<?php echo $row[0]; ?>)">Edit</button></td> 
    </tr> 
    <?php } ?> 
</table> 

=/

+0

당장 의문점에 대해 잘 모르겠지만 while 루프가 있음을 알고 있습니다. 실제로 각 행을 $ row [x]로 명시 적으로 호출 할 필요가 없으므로 그렇게해야합니다. 주어진 지점에서 얼마나 많은 레코드를 가지는지 모른 채 HTML을 설정하는 것을 의미합니다. 증분 값을 사용하거나 배열을 $ row에 출력 한 다음 그것에 foreach를 수행하십시오. –

+0

감사합니다. 의미가 있으며 그 부분을 수정할 것입니다. –

답변

6

먼저 데이터의 되감기을! :

여기 내 코드입니다

mysql_data_seek($result, 0); 
while ($row = mysql_fetch_array($result)) { 
... 
+0

감사합니다. 이것은 매력처럼 작동했습니다! –