2012-12-20 4 views
3

이것은 내가 지금까지 가지고있는 것입니다. 데이터베이스를 호출하고 하나의 주석과 모든 값을 받지만 같은 ID로 여러 개의 주석을 얻고 싶습니다. 배열을 설정하여 여러 주석을 얻으려면 어떻게해야합니까?데이터베이스 요청에서 여러 행을 얻는 방법

function get_comment_by_id($lake_id) { 

     global $connection; 
     $query = "SELECT * "; 
     $query .= "FROM comments "; 
     $query .= "WHERE lakeId=" . $lake_id ." "; 
     //$query .= "LIMIT 1"; 
     $result_set = mysql_query($query, $connection); 
     confirm_query($result_set); 

     // REMEMBER: 
     // if no rows are returned, fetch_array will return false 
     if ($comment = mysql_fetch_array($result_set)) { 
      return $comment; 
     } else { 
      return NULL; 
     } 
    } 

답변

2

그냥 while 루프에 넣으면됩니다. 대신

if ($comment = mysql_fetch_array($result_set)) { 
    return $comment; 
} else { 
    return NULL; 
} 

$rows = array(); 
while($comment = mysqli_fetch_array($result_set)) 
    $rows[] = $comment; 

return $rows; 

을하고 당신은 또한 mysql_* 기능이 deprecacted 때문에 mysqli_* 기능을 사용해야합니다.

호출 함수에서 null 값 대신 빈 배열을 확인해야합니다.

+0

감사합니다. Omar! – user1551909

+0

질문에 답하면 문제가있는 것 같습니다. –

+0

이제이 오류가 있습니다. mysqli_query()는 매개 변수 1이 mysqli가 될 것으로 예상합니다. – user1551909

관련 문제