Mysql
 sql >> Base de données >  >> RDS >> Mysql

PHP et MySql vérifient si la table est vide

mysqli_fetch_array récupérera une ligne, que les colonnes de cette ligne soient nulles ou non. Vous voulez vérifier si $row['description'] est défini au lieu de if $row est défini :

$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>';
}

MODIF : Ou, comme alternative, vous pouvez ne pas récupérer les lignes de la base de données où la description est 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>';
}

Maintenant vous vérifieriez si vous pouviez saisir une rangée ou non.