2012-07-21 2 views
1

두 열로 여러 열 값 표를 표시하는 응용 프로그램을 작성해야합니다 (이전에 관한 질문을 게시했지만 일부 연구를 수행했습니다. 내 관점을 예리하게). 각 개인은 테이블에 단일 항목을가집니다.이 열의 값을 두 개의 열 테이블에 표시하는 작업입니다.mysql_field_name 또는 mysqli_fetch_field를 사용하여 열 이름과 값을 표시하는 방법 나란히보기

개인이 등록한 과목입니다. 예.

 MATH111,MATH112,ENG111,ENG112 

기타 이러한 열은 데이터베이스에로드되는 Excel 시트의 열 머리글을 기반으로하기 때문에 동적 특성을 갖습니다. 이러한 관점에서, 나는

  <th>MATH111</th><th>MATH112</th>........ 

내가 ""값을 런타임에 열 이름을 잡아 열의 이름을 표시해야 내 HTML 테이블의 이름을 "하드 코딩"할 수 없습니다 그것에 포함되어 있습니다. 표의 유일한 고정 값은 학생의 reg_no입니다. 다른 모든 값은 임의입니다 (테이블의 열 수 포함).

테이블의 기본 구조는 다음과 같다 : 위의 줄 안

 id int auto_increment primary key, 
     reg_no varchar(25), 
     arbitrary col1 int, 
     arbitrary col2 int, 
     arbitrary col3 int, 
     arbitrary col4 int, 
     arbitrary colx.... 

가 나는 임의 COL1 표현하는 과정에서 얻어지는 점수를 얻을 것이다 임의 COL1 쿼리 경우. 내가 아는 것입니다

 echo '<table><tr><th>Course</th><th>Score</th></tr>'; 

테이블에서 데이터를 얻을 내 쿼리

  $sql="select * from '.$table_name.' where reg_no='.$reg_no.'; 
    ...................................(blah...) 

좋은 일부입니다

은 내가 follwing을 형식으로 웹 페이지를 표시해야 테이블의 열 수 (이 수치는 테이블을 만드는 동안 저장되므로). 약간의 연구는 내가 'mysql_field_name'함수를 사용할 수 있다는 결과를 낳았습니다. 또는 mysqli_fetch_field 함수.

mysql_field_name는 (제 생각에 쉽게하는) 이런 식으로 사용됩니다

내가 "를 표시하려면 :

 $result=mysql_query($sql, $link); 
     $row=mysql_fetch_array($result); 

여기부터 ... 내가 몇 가지 요령이 필요합니다 BOTH "필드 이름과 필드 값. 그래서 이것이 내가 어떻게 할 작정인가. 내가 틀렸다면 나를 바로 잡아주세요.

$ numberofcolumnsintable = $ numberofcolumnsintable ++;

while(int i=1;i<=$numberofcolumnsintable;$i++) 
     (I am starting from the index 1(second column because i do not want to display the reg_no or its data) 
    { echo"<tr><td>".mysql_field_name($result,$i)."</td>"<td>".$result[$i]."</td></tr>"; 
     } 
echo "</table>"; 

나는 제대로하고있다. 나는 mysqli 함수에 익숙하다 ... 그러나 mysqli_fetch_field 함수를 사용한다.이 함수는 컬럼의 속성을 가진 객체를 반환하는데, 접근하는 방법을 아직 찾지 못했다. 그것에 대한 도움도 감사 할 것입니다. 그래서 내 주요 질문으로 돌아 가라. 위에 표시된 코드로 열 이름과 그 값을 나란히 표시 할 수 있습니까? 감사합니다.

답변

2

mysql(i)_fetch_array 대신 mysql(i)_fetch_assoc을 사용하십시오. 그렇게하면 열 이름과 값을 모두 사용하여 associative array이됩니다.간단한 foreach 문은 다음을 수행합니다

$rows = mysqli_query('select * from tbl'); 
foreach($rows as $column => $value) { 
    echo $column . ": " . $value . "<br />"; 
} 

$rows이 같은 보일 수 있습니다 :

array(
    array('reg_no' => '321', 'col1' => 'foo'), 
    array('reg_no' => '654', 'col1' => 'knox') 
); 
+0

감사합니다 !!!!! .... 내가 그 생각을하지 않았다을 ..... – ewom2468

+0

@ ewom2468 문제 없음 :) – alexn

관련 문제