반응형
나는 약간 멍청하고 힘들어 ...
$ id 변수와 일치하는 행을 찾기 위해 db 테이블을 검색하는 코드가 필요합니다. 그 테이블 '설명'에 내가 잡아야 할 필드가 있습니다. null이면 다른 메시지가 아니라면 하나의 메시지를 표시해야합니다. 내가 가지고있는 코드는 다음과 같습니다.
$query = "SELECT description FROM posts WHERE id = $id";
$result = mysqli_query($dbc, $query);
$row = mysqli_fetch_array($result, MYSQLI_ASSOC) ;
if(!$row){
echo "<p>'No description'</p>";
} else {
echo '<p>' . $row['description'] . '</p>';
}
해결 방법
mysqli_fetch_array
는 해당 행의 열이 null인지 여부에 관계없이 행을 가져옵니다. $ row
가 설정된 경우 대신 $ row [ 'description']
이 설정되었는지 확인하려고합니다.
$query = "SELECT description FROM posts WHERE id = $id";
$result = mysqli_query($dbc, $query);
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
if(isset($row['description'])) {
echo "<p>No description</p>";
} else {
echo '<p>' . $row['description'] . '</p>';
}
수정 : 또는 대안으로 설명이 NULL 인 데이터베이스에서 행을 가져올 수 없습니다.
$query = "SELECT description FROM posts WHERE id = $id AND description IS NOT NULL LIMIT 1";
$result = mysqli_query($dbc, $query);
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
if(! $row) {
echo "<p>No description</p>";
} else {
echo '<p>' . $row['description'] . '</p>';
}
이제 행을 잡을 수 있는지 여부를 확인합니다.
참조 페이지 https://stackoverflow.com/questions/4854148
반응형
'MySql' 카테고리의 다른 글
MySQL mysql.sock은 OSX가 생성되지 않았습니다. (0) | 2020.10.20 |
---|---|
MySQL 특정 값을 가진 일치하는 레코드가없는 레코드를 찾기위한 SQL JOIN (0) | 2020.10.20 |
MySQL SELECT id WHERE COUNT (*)> X? -테이블에 X 개 이상의 레코드가있는 사용자로부터 레코드를 가져 오는 방법은 무엇입니까? (0) | 2020.10.20 |
MySQL Can't connect to MySQL server on MySQLCC ERROR 1043 Bad Handshake (0) | 2020.10.20 |
MySQL 데이터베이스에서 동시 쿼리는 어떻게 처리됩니까? (0) | 2020.10.20 |
댓글