2014-10-29 1 views
0

초보자입니다. 내 데이터베이스에서 여러 필드를 표시해야합니다. 그러나 어쨌든이 코드는 첫 번째 행만 표시합니다. 코드에서여러 필드 표시 중 오류가 발생했습니다.

if(mysql_num_rows($result)>0) 
{ 
$output .= "<p>Table: $tbl</p><p>"; 
// BUG - SHOULD LOOP THRU MULTIPLE rows 
$row = mysql_fetch_row($result); 
$i = 0; 
while ($i < mysql_num_fields($result)) 
{ 
    //echo "Information for column $i:<br />\n"; 
    $fieldN = mysql_field_name($result, $i); 
    if (!$fieldN) { $output .= "No info available<br />\n"; } 
    if ($row[$i]) { 
     $fieldN = mysql_field_name($result, $i); 
     if (!$fieldN) { $fieldN = "No_field_name"; } 
     $output .= " $tbl F: $fieldN V: $row[$i]<br />\n"; 
    } 
    $i++; 
} // end while 
    $output .= "</p>"; 
} // end if number of rows > 0 

답변

0

당신은 숫자 배열로 레코드에서 단 하나의 행을 반환 $row = mysql_fetch_row($result);와 결과를 가져 오는 있습니다.

중위 결과 집합의 모든 레코드를 얻기 위해, 당신은 코드를 시도 $row = mysql_fetch_row($result);

를 사용하여 결과 집합의 각 레코드를 가져올 수 있습니다

while ($row = mysql_fetch_row($result)) // while there are results 
{ 
    // get each field values inside this loop 
} 
+0

표시하려는 표를 선택하려면 옵션/드롭 다운 양식을 사용하고 각 표의 필드 값은 다릅니다. – Beginner

0

당신은 사용해 볼 수 있습니다

while ($row = mysqli_fetch_array($result)) { 

while ($i < mysql_num_fields($result)) 
01 대신

mysqli_fetch_array()를 사용하면 데이터를 숫자 배열 및 연관 배열로 가져올 수 있습니다. 데이터베이스 테이블의 첫 번째 행에있는 데이터베이스 필드라는 ID가있는 경우

, 당신은 다음과 같이 사용할 수 있습니다

$id = $row[0]; 
$id = $row['ID']; 
fetch_row에 비해

및 fetch_assoc에서만 가져올 수 있습니다 무엇을 수 (숫자 배열 및 연관 배열 각각).

+0

실제로 표시 할 테이블을 선택하려면 옵션/드롭 다운 폼을 사용하고 필드 값은 각 테이블마다 다릅니다. – Beginner

+0

예. 이것으로 할 수 있습니다. 비교할 값을 기반으로 데이터베이스를 쿼리하고 while 루프를 실행하기 만하면됩니다. 그것은 당신의 요구 사항 (이 경우 테이블의 이름)을 만족시키는 데이터베이스에서 발견되는 모든 단일 행을 반복합니다. – FortMauris

0
// LOOP THRU MULTIPLE rows 
while ($row = mysql_fetch_row($result)) { 
    $i = 0; 
    while ($i < mysql_num_fields($result)) { 
     //echo "Information for column $i:<br />\n"; 
     if ($row[$i]) { 
      $fieldN = mysql_field_name($result, $i); 
      if (!$fieldN) { $fieldN = "No_field_name"; } 
      $output .= " $tbl F: $fieldN V: $row[$i]<br />\n"; 
     } 
     $i++; 
    } // end while loop thru fields in each row 
    $output .= "</p>"; 
    } // end while there is a row