6
votes

Consultateur - Effectuer une action si la requête de base de données ne renvoie aucun résultat

Comment puis-je renvoyer une valeur de "Aucune donnée trouvée" si ma requête renvoie aucun résultat ???

Ceci est mon code: p>

    function getTerms($letter) {


    $this->db->select('term, definition');
    $this->db->from('glossary');
    $this->db->where(array('letter' => $letter));

    $query = $this->db->get();

    foreach ($query->result() as $row) {
        $data[] = array(
            'term' => $row->term,
            'definition' => $row->definition
        );
    }

    return $data;
}


0 commentaires

4 Réponses :


13
votes

Vérifiez simplement que la requête renvoie au moins une ligne: xxx

lire plus les docs


0 commentaires

3
votes

Il renvoie actuellement la variable $ de données, même si la requête ne renvoie aucun résultat qui me donne des erreurs PHP.

C'est une bonne habitude d'initialiser le tableau que vous avez l'intention de construire: xxx

S'il n'y a aucun résultat, vous obtiendrez une matrice vide retournée, puis vérifiez que Votre contrôleur.

De cette façon, au moins la variable est définie et que vous n'obtiendrez pas de notifications.


0 commentaires

2
votes

Qu'en est-il de donner une valeur de matrice vide initiale pour $ données Il suffit de mettre xxx

avant foreach


0 commentaires

1
votes
<?php

    return is_array($data) ? $data : array();
}

0 commentaires