Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

PHP e MySql verificam se a tabela está vazia


mysqli_fetch_array irá buscar uma linha independentemente de as colunas nessa linha serem nulas. Você quer verificar se $row['description'] é definido em vez de se $row está definido:
$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>';
}

EDITAR: Ou, como alternativa, você pode não buscar linhas do banco de dados onde a descrição é 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>';
}

Agora você verificaria se conseguiu pegar uma linha ou não.