Compter le nombre de résultats retournés par une requête de base de données dans Codeigniter
Je ne suis pas du avoir beaucoup de chance de détecter une requête de base de données dans Codeigniter renvoie des résultats nuls. J'ai eu une bonne lecture de la note sur le PHP fonction de comptage, mais je suis pas plus avancé!
J'appelle la requête comme suit à partir du contrôleur:
$data['result'] = $this->search_model->do_search(set_value('name'));
$data['title'] = "Search results";
$this->load->view('search_view',$data);
La vue génère un tableau de résultats pour moi OK, mais lorsque je tente de piéger un résultat vide, le comte retourne toujours 1:
J'ai essayé if count(array($result))
et juste if count($result)
Alors, quel est un bon moyen d'obtenir le comte? Je suis sous Fedora 13 avec PHP 5.3.3 sur mon dev ordinateur portable.
Vous devez vous connecter pour publier un commentaire.
Ont un coup d'oeil à
$query->num_rows
(<- cliquable).La meilleure chose à faire dans votre modèle est le suivant:
Puis dans votre contrôleur ou de la vue vous feriez la suivante:
Ce processus vous permet de vous répondre sur le résultat basé sur le type de résultat. Si les lignes ont pu être récupérées cela retourne un tableau dont les éléments peuvent être comptés par PHP avec la fonction count (). Depuis le deuxième bloc vérifie si le résultat est vide (à noter que le "FAUX" est considéré comme étant vide) vous ne serez pas cogner dans tous les problèmes (p. ex. lors de l'utilisation d'une boucle foreach) et vous pouvez spécifier que faire dans le cas où il n'y avait pas de résultats.
Essayer
if(isset($result) && count($result))
sur votre fichier de vue à l'intérieur de l'instruction si vous pouvez écrire le code que vous souhaitez exécutée lorsque l'insère dans votre base de données sont de plus de 0...bonne chance!Si vous mettez
count($result)
dansif
déclaration puis, quand il réussisse, elle renvoie uniquement1
.Vous pouvez essayer
$query->num_rows()
d'une manière différente.par exemple, je compte montrer admins connectés sna utilisateurs connectés
Base de données
dans utilisateurs-je ajouter de la table : [statut] [int] [1]
utilisateurs aussi j'ai : [rôle] [varchar] [255]
Mise à jour de statut à 1 (onligne) dans la connexion de validation()
et le modèle :
État de mise à jour hors ligne dans logout()
Déconnexion contrôleur :
Déconnexion modèle :
Compter Onligne :
Le Contrôleur :
Le Modèle :
Le Spectateur
je suis dowing et cela fonctionnait pour moi
Contrôleur
Utilisateurs Du Modèle