Rechercher Liste des Membres S'enregistrer Profil Se connecter pour vérifier ses messages privés Connexion



Recherche rapide :


Requête et PHP

   
 
Poster un nouveau sujet   Répondre au sujet    ALV Basket - Le forum NBA et Aide Informatique -> Aide à la création de site internet
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
Chouls
Membre discret
Membre discret


Inscrit le: 23 Avr 2005
Messages: 6

MessagePosté le: 23 Avr 2005 15:00    Sujet du message: Répondre en citant

Bonjour,

j'aimerai savoir comment peut on tester si une rquete en php ne renvoit rien du tout?

Ex si ma table ne contient rien ci dessous:

$reponse = mysql_query("SELECT * from table");

if (ma reponse n'est pas vide ){
/*blabla*/
}


Que dois je mettre dans mon test?

Merci.
_________________

Vendez vos objets sur eBay !
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
r23o
Administrateur
Administrateur




Inscrit le: 04 Mai 2003
Messages: 5262
Localisation: lille

MessagePosté le: 23 Avr 2005 16:38    Sujet du message: Répondre en citant

Code:
$nbre=mysql_num_rows($reponse);


d'habitude je fais comme ça :

dans $nbre tu auras le nombre de "ligne" de resultats retournés, si c'est egale à 0, c'est qu'il a rien trouvé Clin d'oeil

Plus d'infos sur la fonction : mysql_num_rows()

A+
_________________
Eddyhalftime.com votre magazine de la mi-temps !
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Chouls
Membre discret
Membre discret


Inscrit le: 23 Avr 2005
Messages: 6

MessagePosté le: 24 Avr 2005 0:03    Sujet du message: Répondre en citant

J'ai essayé cette technique, mais je me retrouve avec une erreur du type:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/free.fr/c/7

Mon code:

$reponse = mysql_query("SELECT * from A_vote where IP = '$ip' AND Date = $jour AND NomCandidat = '$id_candidat'");

if(mysql_num_rows($reponse)==0){ ... }
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
r23o
Administrateur
Administrateur




Inscrit le: 04 Mai 2003
Messages: 5262
Localisation: lille

MessagePosté le: 24 Avr 2005 0:06    Sujet du message: Répondre en citant

A quoi ressemble ta variable $jour ?

essai de le mettre aussi entre quote ( '$jour' )
_________________
Eddyhalftime.com votre magazine de la mi-temps !
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Chouls
Membre discret
Membre discret


Inscrit le: 23 Avr 2005
Messages: 6

MessagePosté le: 24 Avr 2005 0:11    Sujet du message: Répondre en citant

Je pensais que pour les entiers il ne fallait pas de cotes!?

$jour = date("d");//Numero du jour

Je test entre cote et je te dis.

Merci de répondre si vite.
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
Chouls
Membre discret
Membre discret


Inscrit le: 23 Avr 2005
Messages: 6

MessagePosté le: 24 Avr 2005 0:14    Sujet du message: Répondre en citant

Zut!!! Ca n'a pas marché!!! Ce qui est étrange c'est que ce code en local avec easyphp fonctionnait!!!
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
r23o
Administrateur
Administrateur




Inscrit le: 04 Mai 2003
Messages: 5262
Localisation: lille

MessagePosté le: 24 Avr 2005 0:16    Sujet du message: Répondre en citant

pour coder plus proprement :
fais comme ceci :

Code:

$requete=" SELECT * from A_vote where IP = \"".$ip."\" AND Date = \"".$jour."\" AND NomCandidat = \"".$id_candidat."\" ";

$reponse = mysql_query($requete);

$num=mysql_num_rows($reponse);

if($num){ ... }



Ensuite rajoute cette ligne :

Code:


echo $requete;




Et copie colle la requete affichée dans phpmyadmin, excecute et regarde les erreurs sql que ça t'envoi...
_________________
Eddyhalftime.com votre magazine de la mi-temps !
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Chouls
Membre discret
Membre discret


Inscrit le: 23 Avr 2005
Messages: 6

MessagePosté le: 24 Avr 2005 0:25    Sujet du message: Répondre en citant

Je suis désolé!!! Mon problème venait du fait que ma variable a l'interieur de ma base de données n'était pas Date mais Jour!!!
Donc, si d'autres ont cette erreur, il faut bien faire attention aux noms des tables et des variables...
Merci beaucoup de ton aide en tous cas... J'aurais sans doute d'autres problemes, je reviendrais.
Merci et bonne soirée.
bravo
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
r23o
Administrateur
Administrateur




Inscrit le: 04 Mai 2003
Messages: 5262
Localisation: lille

MessagePosté le: 24 Avr 2005 0:27    Sujet du message: Répondre en citant

de rien A+ Clin d'oeil
_________________
Eddyhalftime.com votre magazine de la mi-temps !
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Chouls
Membre discret
Membre discret


Inscrit le: 23 Avr 2005
Messages: 6

MessagePosté le: 24 Avr 2005 0:27    Sujet du message: Répondre en citant

Je me demandais quand même!!! Y'a pas quelque chose de plus propre que de calculer la taille du tableau pour savoir si une requête renvoi quelque chose... C'est un peu du bidouillage... Sur le net je n'ai rien trouvé d'autre. T'as une idée?
_________________

Vendez vos objets sur eBay !
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
r23o
Administrateur
Administrateur




Inscrit le: 04 Mai 2003
Messages: 5262
Localisation: lille

MessagePosté le: 24 Avr 2005 0:34    Sujet du message: Répondre en citant

non pas à ma connaissance.

mais je pense que le nombre de resultats retournés est une variable contenu dans la ressource $reponse.

Donc mysql_num_rows ne refait pas de calcul il lit juste dans $reponse et te sort le nombre de resultats trouvés.

Donc je pense que mysql_num_rows() ne requestionne pas le serveur sql, et ne prend presque pas de ressource si c'est ce que tu voulais savoir...

Moi j'trouve ça assez propre...
_________________
Eddyhalftime.com votre magazine de la mi-temps !
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Montrer les messages depuis:   

Poster un nouveau sujet   Répondre au sujet    ALV Basket - Le forum NBA et Aide Informatique -> Aide à la création de site internet Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1

 

Powered by phpBB © 2007, 2008 phpBB Group
Nos partenaires :




©copyright 2006/2007 : rafr23oalv : Alvoltaire.com