Aide pour verifier requete

Fermé
thombou Messages postés 195 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 12 avril 2018 - 18 sept. 2011 à 19:58
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 21 sept. 2011 à 13:45
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


6 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
Modifié par Alain_42 le 18/09/2011 à 20:57
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 195 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 12 avril 2018 21
18 sept. 2011 à 21:13
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 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 475
18 sept. 2011 à 21:19
Peux-tu nous afficher les lignes précédentes?
0
thombou Messages postés 195 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 12 avril 2018 21
Modifié par thombou le 18/09/2011 à 21:27
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 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
18 sept. 2011 à 21:56
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 195 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 12 avril 2018 21
20 sept. 2011 à 18:07
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 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
20 sept. 2011 à 20:32
je ne savait pas que tu utilisait PDo Query il faut alors tester avec:

$resultat->nbr_entrees >0 
0
thombou Messages postés 195 Date d'inscription mercredi 19 mai 2010 Statut Membre Dernière intervention 12 avril 2018 21
21 sept. 2011 à 13:00
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 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
21 sept. 2011 à 13:45
if($requete->nbr_entrees >0){
affichage resultats
}else{
mesage pas de resultat
}
0