Aide pour verifier requete

thombou Messages postés 226 Statut Membre -  
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,
Pour mon site je voudrais faire une requete de recherche de personnes par nom, donc ca ca marche par contre je voudrais pouvoir afficher un petit message si jamais il n'y a aucun nom en correspondance...
J'ai pour cela fatt un test avec un if(!empty($mavariable)) mais elle n'est jamais vide parce mon message ne s'affiche jamais.
Comment faire ??
merci d'avance
Cordialement
Thombou


A voir également:

6 réponses

Alain_42 Messages postés 5413 Statut Membre 894
 
il ne faut pas faire le test ainsi pour le cas ou aucun nom trouvé

il faut faire par exemple

$query="SELECT..............."; 
$result=mysql($query); 
//on teste combien trouvé 
if(mysql_num_rows($result) >0){
 //il y a des résultats donc tu les affiches 
}else{ 
//il n'y a pas de résultats donc message 
echo "Pas de noms correspondant a votre requette"; 

} 
0
thombou Messages postés 226 Statut Membre 21
 
Il me répond ca :

Warning: mysql_num_rows() expects parameter 1 to be resource, object given in C:\wamp\www\ssvp\recherche.php on line 53

la ligne 53 est la ligne avec : if(mysql_num_rows($result) >0)

Que faire ??
bien cordialement
Thombou
0
arthezius Messages postés 3756 Statut Membre 475
 
Peux-tu nous afficher les lignes précédentes?
0
thombou Messages postés 226 Statut Membre 21
 
Voila la requete en entier
Ce qu'il y a avant n'est pas interessant, c'est des vérifications de variables et du texte.
Merci d'avance
Thombou

$recherche = $num_fix; 
    $requete = $bdd->prepare('SELECT id_inscrit, nom, prenom, num_tel_fix FROM inscrits WHERE num_tel_fix LIKE :recherche'); 
    $requete->execute(array( 
    'recherche' => '%'.$recherche.'%')); 
    if (mysql_num_rows($requete) > 0) // <-- ligne 53
    {  
     echo "<ul>"; 
     while($donnees = $requete->fetch()) 
     { 
     ?> 
     <li><a href="consultation-fiche.php?id=<?php echo $donnees['id_inscrit'];?>"><?php echo strtoupper($donnees['nom']);?> <?php echo ucfirst(strtolower($donnees['prenom']));?> : <?php echo $donnees['num_tel_fix'];?></a></li> 
     <?php 
     } 
     echo "</ul>"; 
    }//fin if 
    else // requete vide 
    { 
     echo "Aucun résultat trouvé pour le numéro : " . $recherche; 
    } 
    }//fixe 

L'informatique est un monde dont on a jamais fini de faire le tour.
0
Alain_42 Messages postés 5413 Statut Membre 894
 
il me semble que tu as une erreur dans ta requette la :LIKE :recherche'

ça serait plutot:

LIKE $recherche

à voir aussi les guillemets
0
thombou Messages postés 226 Statut Membre 21
 
Il n'y a aucun problème pour le LIKE, parce que ca marchait très bien avant de mettre la fonction mysql_num_rows.
Ce n'est donc pas un problème de ca.
Merci d'avance
Thombou
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5413 Statut Membre 894
 
je ne savait pas que tu utilisait PDo Query il faut alors tester avec:

$resultat->nbr_entrees >0 
0
thombou Messages postés 226 Statut Membre 21
 
Je fais donc un
if($requete->nbr_entrees >0)
{mon message}

Est ce bien cela ?
Merci d'avance
Thombou
0
Alain_42 Messages postés 5413 Statut Membre 894
 
if($requete->nbr_entrees >0){
affichage resultats
}else{
mesage pas de resultat
}
0