Comparer si une valeur est null

Résolu
cliquetde8
Messages postés
52
Date d'inscription
mercredi 23 février 2011
Statut
Membre
Dernière intervention
29 avril 2015
- Modifié par cliquetde8 le 23/10/2014 à 01:03
cliquetde8
Messages postés
52
Date d'inscription
mercredi 23 février 2011
Statut
Membre
Dernière intervention
29 avril 2015
- 23 oct. 2014 à 19:09
Bonjour,

je suis sur un projet et je rencontre un petit problème je ne m'y connais pas beaucoup en PHP du coup j'aurai besoin de votre aide , voila mon problème , j'aimerais vérifier si une entré existe dans ma base de donné SQL, j'utilise donc ceci , mais cela ne fonctionne pas , comment faire en sorte que cela fonctionne ?

$reponse = mysql_query("SELECT * FROM item WHERE id=1 AND name='ACE'") or mysql_error();

 // echo "Valeur : " .$donnees['count'];
 while($donnees = mysql_fetch_array($reponse))
 {
  if(empty($donnees))
  {
   echo "VIDE";
  }else{
   echo "N'est pas vide"
  }
 }


--

5 réponses

jordane45
Messages postés
35481
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
23 mai 2022
356
23 oct. 2014 à 01:30
Bonjour.
Il faut mettre le nom du champ...
$donnee ['nomfuchamp']

0
jordane45
Messages postés
35481
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
23 mai 2022
356
Modifié par jordane45 le 23/10/2014 à 01:35
Et si tu veux juste savoir si ta requête retourne quelque chose. .tu as pas besoin de la boucle. ..
Il suffit de faire :
If ($reponse){
//.....
}
0
cliquetde8
Messages postés
52
Date d'inscription
mercredi 23 février 2011
Statut
Membre
Dernière intervention
29 avril 2015

23 oct. 2014 à 01:51
Merci de votre aide je test cela de suite , il me semble avoir essayez avec $reponse et ça ne fonctionnait pas mais ça doit etre moi qui est mal écrit quelque chose ^^
0
cliquetde8
Messages postés
52
Date d'inscription
mercredi 23 février 2011
Statut
Membre
Dernière intervention
29 avril 2015

23 oct. 2014 à 02:03
Cela me renvoie page blanche :/
0
jordane45
Messages postés
35481
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
23 mai 2022
356
23 oct. 2014 à 09:17
$sql="SELECT * 
      FROM item 
     WHERE id=1 AND name='ACE'";
 $reponse = mysql_query($sql);

if($reponse ){
 while($donnees = mysql_fetch_array($reponse)) {
   echo "Valeur : " .$donnees['count'];
  }
}else{
echo "<br>La requête ne retourne aucune valeur ou est fausse";
echo "<br>".$sql;
}

0
cliquetde8
Messages postés
52
Date d'inscription
mercredi 23 février 2011
Statut
Membre
Dernière intervention
29 avril 2015

23 oct. 2014 à 14:19
Lorsque j'ai une valeur il me renvoie bien le count, mais dans le cas contraire lorsque je n'est rien il me renvoie page blanche:/
0
inwebo
Messages postés
381
Date d'inscription
lundi 12 novembre 2007
Statut
Membre
Dernière intervention
23 octobre 2014

23 oct. 2014 à 15:27
Bonjour,

Tout d'abord, je vous invite à ne plus utiliser les fonctions mysql_* qui sont marquées comme obsolètes dans le manuel PHP.

Ce sont des reliquats de mauvaises pratiques PHP.

A la place je vous conseil plutôt PDO, qui est portable, evolutif et plus sécurisé.

Sécurisé car les requêtes sont préparées càd que le problème de la sécurité des données entrantes est résolus.

Et pour en revenir avec votre problème, Jordane45 vous a donné la réponse.
0
cliquetde8
Messages postés
52
Date d'inscription
mercredi 23 février 2011
Statut
Membre
Dernière intervention
29 avril 2015

23 oct. 2014 à 15:50
Le code que Jordane45 m'a donné me renvoie la valeur lorsque elle existe, mais lorsque elle n'existe pas j'obtiens une page blanche.
0
cliquetde8
Messages postés
52
Date d'inscription
mercredi 23 février 2011
Statut
Membre
Dernière intervention
29 avril 2015

23 oct. 2014 à 17:24
Personne ne saurais pourquoi ?:/

--
0

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

Posez votre question
jordane45
Messages postés
35481
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
23 mai 2022
356
23 oct. 2014 à 17:29
Et avec ce code là ?

$sql="SELECT * 
      FROM item 
     WHERE id=1 AND name='ACE'";
 $reponse = mysql_query($sql);
 $Nb_reponses = mysql_num_rows($reponse);

//------------------------------------------------
// Le temps des tests :
//------------------------------------------------
 echo "<br> Nb  reponses = ".$Nb_reponses; 
//------------------------------------------------


if($reponse && $Nb_reponses>0){
 while($donnees = mysql_fetch_array($reponse)) {
    $count = isset($donnees['count'])?$donnees['count']:'no count';
    echo "Valeur : " .$count;
  }
}else{
	echo "<br>La requête ne retourne aucune valeur ou est fausse";
	echo "<br>".$sql;
}

avec celui là..Impossible que rien ne s'affiche sur la page......



0
cliquetde8
Messages postés
52
Date d'inscription
mercredi 23 février 2011
Statut
Membre
Dernière intervention
29 avril 2015

23 oct. 2014 à 19:09
Cela fonctionne merci beaucoup !
0