2014-02-06 4 views
0

PHP와 MYSQL 프로그래밍에 익숙해 지려고 시도했지만, 예제를보고 난 후에 어떤 행이 반환되는지 알 수는 없다.mysql_fetch_row : 어떤 행을 어떻게 알 수 있습니까?

<?php 

$query = "SELECT * FROM classics"; 
$result = mysql_query($query); 

$row = mysql_fetch_row($result); //gets the rows refering to the query 

echo $row[0]; //returns the data in column 1 

?> 
표의 첫 번째 열에서 데이터를 반환 echo $row[0]; 위의 코드에서는

하지만, 어떻게 (쿼리가 하나 개 이상의 행을 반환 가정)에서이 데이터를 가지고있는 행을 알고 않습니다 예를 들면? I는 루프의 코드를 넣으면

또한 :

<?php 

$query = "SELECT * FROM classics"; 
$result = mysql_query($query); 

for ($j = 0 ; $J < 4 ; ++$j) 
{ 
$row = mysql_fetch_row($result); 
echo $row[0]; 
} 

?> 

반향 값 (ROW1, 컬럼 1) (ROW2, 컬럼 1) (row3, 컬럼 1)의 값이다. 증가 된 값 $jmysql_fetch_row 함수에 직접 영향을 미치지 않으면 어떻게됩니까?

답변

5

그것은 그것이 일반적으로 while 루프에 사용하면 nust

+1

확인 아!, 반환 된 쿼리가 10 행 및 루프에서 함수 않네 말할 경우에만 반환되도록 1 행입니다 고전에서 모든 데이터를 선택 데이터베이스에서? – Giovanni

+0

루프없이 여러 번 호출 할 수 있습니다. 첫 번째 호출은 첫 번째 행을 반환하고 두 번째 호출은 두 번째 행을 반환합니다. – Barmar

+1

아니요, 1 등이 아니라 단 하나입니다. 쿼리에서 행을 순서 지정하지 않으면 어느 것이 정의되지 않습니다. 그러면 순서에 따라 1, 2 등이 생길 것이고 가져 오기는 이제 첫 번째 행을 반환합니다. – pid

0

이에 "여기서"추가 할 필요가 왜이다, 다음 행으로 당신이 그것을 호출 할 때마다 전진 당신의 선택 :

예를 들어

:

$ value = "mozart";

$ query = "SELECT * FROM classics where author = '$ value'";

문장은 다음과 같습니다 저자가 모차르트

관련 문제