[MySql] Problème de "count(*)" lors de
Fermé
Sébastien724
-
31 déc. 2008 à 15:02
Yoan Messages postés 11795 Date d'inscription mardi 1 février 2005 Statut Modérateur Dernière intervention 10 décembre 2023 - 31 déc. 2008 à 18:17
Yoan Messages postés 11795 Date d'inscription mardi 1 février 2005 Statut Modérateur Dernière intervention 10 décembre 2023 - 31 déc. 2008 à 18:17
A voir également:
- [MySql] Problème de "count(*)" lors de
- Mysql community server - Télécharger - Bases de données
- Mysql fatal error ✓ - Forum MySQL
- Mysql error 1 ✓ - Forum Réseaux sociaux
- Access vs mysql - Forum Webmastering
- Count php mysql - Forum PHP
3 réponses
Yoan
Messages postés
11795
Date d'inscription
mardi 1 février 2005
Statut
Modérateur
Dernière intervention
10 décembre 2023
2 331
31 déc. 2008 à 15:20
31 déc. 2008 à 15:20
Yep,
mysql_num_rows($myreq); demande à MySQL de renvoyer le nombre de "lignes" renvoyées par la requête $myreq.
Or la requête $myreq demande à MySQL de compter le nombre d'enregistrements du membre X pour la date Y. Celui-ci répond par exemple 1450. '1450' correspondant à une ligne, mysql_num_rows renvoie donc 1 même s'il y a 1450 enregistrements de X à la date Y, c'est normal.
Ce que tu veux faire c'est :
mysql_num_rows($myreq); demande à MySQL de renvoyer le nombre de "lignes" renvoyées par la requête $myreq.
Or la requête $myreq demande à MySQL de compter le nombre d'enregistrements du membre X pour la date Y. Celui-ci répond par exemple 1450. '1450' correspondant à une ligne, mysql_num_rows renvoie donc 1 même s'il y a 1450 enregistrements de X à la date Y, c'est normal.
Ce que tu veux faire c'est :
$mysql = "SELECT count(*) AS nb_denreg_de_X_a_la_date_Y FROM cf_grattage WHERE id_membre = '".$_SESSION['idmembre']."' AND date = ".$dt."'"; $myreq = mysql_query($mysql); //Exécuter la requête $row=mysql_fetch_array($myrequ); //Mettre le résultat de la requête dans un tableau echo $row['nb_denreg_de_X_a_la_date_Y FROM cf_grattage']; //Afficher la colonne du tableau qui nous intéresse
Euh merci mais j'ai pas tout compris ton code
Moi ce que je cherche à faire comme je l'ai dis c'est récupéré de ma table cf_grattage c'est le nombre de fois qu'apparait le membre X pour la date Y.
Genre c'est pour un ticket à gratter où j'offre 3 parties gratuite par jour et donc à chaque fois que le membre charge la page, ça enregistre dans la table cf_grattage
et au chargement de la page je veux vérifier si le membre à déjà chargé 3 fois le ticket, l'interdire de participer...
Moi ce que je cherche à faire comme je l'ai dis c'est récupéré de ma table cf_grattage c'est le nombre de fois qu'apparait le membre X pour la date Y.
Genre c'est pour un ticket à gratter où j'offre 3 parties gratuite par jour et donc à chaque fois que le membre charge la page, ça enregistre dans la table cf_grattage
et au chargement de la page je veux vérifier si le membre à déjà chargé 3 fois le ticket, l'interdire de participer...
Yoan
Messages postés
11795
Date d'inscription
mardi 1 février 2005
Statut
Modérateur
Dernière intervention
10 décembre 2023
2 331
31 déc. 2008 à 18:17
31 déc. 2008 à 18:17
Oui, et bien ça va marcher comme ça.
Ou alors si tu veux tu peux faire ça, ça marche aussi et il y a même moins de trucs à modifier (remplacer le count(*) par *) et ça peut servir si tu as besoin des champs en question :
Ou alors si tu veux tu peux faire ça, ça marche aussi et il y a même moins de trucs à modifier (remplacer le count(*) par *) et ça peut servir si tu as besoin des champs en question :
$mysql = "SELECT * FROM cf_grattage WHERE id_membre = '".$_SESSION['idmembre']."' AND date = '".$dt."'";
$myreq = mysql_query($mysql); //Exécuter la requête $mysql='sélectionner tous les n-uplets où id_membre=X et date=Y'
echo mysql_num_rows($myreq); //Afficher le nombre de n-uplets où id_membre=X et date=Y'
C'est quoi que t'as pas compris ? Le code en lui-même ? Les commentaires ? Ou le problème qu'il y a dans ton code-à-toi ?