
mysqli_result::fetch_row 함수는 MySQLi 쿼리 결과에서 한 행을 가져오는 함수입니다. 이 함수는 결과셋에서 한 행을 가져와서 배열로 반환합니다.
fetch_row 함수가 결과셋에서 행을 가져오지 못하는 경우에는 다음 이유가 있습니다.
1. 쿼리 결과가 비어있는 경우: 쿼리 결과가 비어있는 경우 fetch_row 함수는 NULL을 반환합니다. 이 경우에는 쿼리 결과가 비어있는지 확인하고, 비어있는 경우에는 데이터가 없는지 확인해야 합니다.
2. 결과셋이 닫힌 경우: 결과셋이 닫힌 경우 fetch_row 함수는 에러를 발생시킵니다. 이 경우에는 결과셋을 닫지 않은 상태에서 fetch_row 함수를 호출해야 합니다.
3. 쿼리 결과가 한 행만 있는 경우: 쿼리 결과가 한 행만 있는 경우 fetch_row 함수는 한 행만 반환합니다. 이 경우에는 fetch_row 함수를 반복적으로 호출하여 결과셋의 모든 행을 가져올 수 있습니다.
fetch_row 함수를 사용할 때 에러가 발생하는 경우 해결 방법은 다음과 같습니다.
1. 쿼리 결과가 비어있는지 확인하고, 비어있는 경우에는 데이터가 없는지 확인합니다.
2. 결과셋을 닫지 않은 상태에서 fetch_row 함수를 호출합니다.
3. 쿼리 결과가 한 행만 있는 경우 fetch_row 함수를 반복적으로 호출하여 결과셋의 모든 행을 가져옵니다.
예를 들어, 다음과 같은 코드를 사용할 수 있습니다.
#hostingforum.kr
php
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) == 0) {
echo "데이터가 없습니다.";
} else {
while ($row = mysqli_fetch_row($result)) {
// 데이터 처리
}
}
이 코드는 쿼리 결과가 비어있는지 확인하고, 비어있는 경우에는 데이터가 없는지 확인합니다. 그리고, 쿼리 결과가 한 행만 있는 경우 fetch_row 함수를 반복적으로 호출하여 결과셋의 모든 행을 가져옵니다.
2025-08-10 18:40