[Php/Sql] Affichage du résultat d'un count.

Résolu
ReddInTheAbyss Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   -  
ReddInTheAbyss Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai cherché un petit bout de temps sans trouver de réponse à ce problème... Donc voilà :

Je travaille sur un site qui aide les étudiants à organiser des voyages à l'étranger, et je cherche à compter le nombre d'utilisateurs qui valident le fait qu'ils ont trouvé un logement avant la date de départ.

Pour ça :
- Je me sers de 2 tables différentes : 'SEJOUR' et 'ANNONCES_SAUVEGARDEES'. Les deux contiennent le champ 'id_sejour'.
- Dans la table 'ANNONCES_SAUVEGARDEES', il y a un champ 'VALIDE' qui contient la valeur '1' si le logement a été trouvé, et un champ 'DATE_VALIDATION' qui contient la date de validation du logement
- Dans la table 'SEJOUR', il y a la date de début du séjour dans le champ 'DATE_DEBUT'

Et je veux donc compter le nombre de séjours pour lesquels 'DATE_VALIDATION' est antérieure à 'DATE_DEBUT' pour ensuite en faire un pourcentage sur le nombre total de séjours.

Pour le moment, j'ai ça en code :

	<?php
		//Comptage du nombre de séjours validés dont la date de validation est avant la date de départ
			 $reponse = mysql_query('SELECT ALL, COUNT(*) AS nbrLignes FROM SEJOUR, ANNONCES_SAUVEGARDEES WHERE SEJOUR.ID_SEJOUR = ANNONCES_SAUVEGARDEES.ID_SEJOUR AND ANNONCES_SAUVEGARDEES.VALIDE = 1 AND SEJOUR.DATE_DEBUT > ANNONCES_SAUVEGARDEES.DATE_VALIDATION');
			 $data = $reponse->fetch();
			 

                        echo $data['nbrLignes'];
			 
			
		?>
		


Voilà ! Un peu d'aide serait la bienvenue.

Bonne journée !


A voir également:

2 réponses

maka54 Messages postés 698 Date d'inscription   Statut Membre Dernière intervention   80
 
alors dans le premier exemple

tu mélange 2 choses

mysql_query('ta requete SQL');

c'est la fonction standard

et tu utilises ->fetch(); qui est du PDO

donc çà ne peux pas marcher

dans la seconde

tu remplace fetch par mysql_fetch_array, c'est bien çà qu'il faut utiliser

par contre $nbr = $rg2['COUNT(*)']; est faut et est à remplacer par

$nbr = $rg2['nbrLignes '];
1
ReddInTheAbyss Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Super ça marche ! Merci beaucoup !
0
ReddInTheAbyss Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Bon, je viens de trouver quelque chose dans le fond du net...

Je n'ai plus d'erreur, par contre rien ne s'affiche à l'endroit où c'est sensé s'afficher.

Voici ce que j'ai maintenant :


<?php
		//Comptage du nombre de séjours validés dont la date de validation est avant la date de départ
			 $reponse = mysql_query('SELECT COUNT(*) AS nbrLignes FROM SEJOUR, ANNONCES_SAUVEGARDEES WHERE SEJOUR.ID_SEJOUR = ANNONCES_SAUVEGARDEES.ID_SEJOUR AND ANNONCES_SAUVEGARDEES.VALIDE = 1 AND SEJOUR.DATE_DEBUT > ANNONCES_SAUVEGARDEES.DATE_VALIDATION');
			 
			 $rg2 = mysql_fetch_array($reponse) ; 
			 $nbr = $rg2['COUNT(*)']; 
			

                         echo $nbr;

		?>
		

0