compter

marvllt
Invité n'ayant pas de compte PHPfrance

19 févr. 2006, 19:20

slt a tous

voila j'ai crée une table 'erreur' où sont sont envoié toutes les erreurs avec le type lurl .. de l'erreur et maintenant je voudrais créer un script qui classe toutes ces erreurs donc je voudrais faire un truc <option> qui montre par exemple toutes les url mais comme j'ai bcp d'erreur je voudrais régrouper les erreurs par url

exemple: 15erreurs sur xxxxxx.php
12erreurs sur xx2.php
et ect

c'est la que je bloque car je connais COUNT mais la comme les url sont variable je sais pas quoi compter


merci de m'aider

Mammouth du PHP | 19672 Messages

19 févr. 2006, 19:27

J'ai pas compris grand chose: il faudrait que tu nous mettes la structure de ta table et que tu illustres avec les parties pertinentes de code que tu as essayé d'utiliser
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

marvllt
Invité n'ayant pas de compte PHPfrance

19 févr. 2006, 19:43

ok

je pe pa tro mettre la table c'est pour un site jeu gratuit en php qui n'est pas encore en ligne

mais imaginons un exemple

la table

url type ligne
a.php x 14
a.php y 15
f.php x 3
ect


puis j'ai envie de faire un formulaire avec <select><option value="??">??</select>
en compta a.php f.php et toutes les autres pages
sa deneré 2 erreur en a.php
1 erreur en f.php

en sachant que pour compter je sais pasles pages ou il va y avoir d'erreur donc je pe pas faire COUNT where url="a.php"

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

19 févr. 2006, 19:54

Salut,

il faut les regrouper depuis la requete:
SELECT COUNT(url) as nb, url FROM table GROUP BY url

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 90 Messages

19 févr. 2006, 19:58

merci de ta réponse masi je compren pas :D

regouper ou le truc c'est que je connais pas a lavance lurl

voila moi code

$aze = $db->query("SELECT * FROM erreur ");
echo '<br><select>';
while($donnees = $db->fetch_array($aze))
{
$file=$donnees['url'];
echo '<option value="'.$url.'">'.$url;
}
echo'</select>';
echo'<br><br>';

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

19 févr. 2006, 20:00

justement pas besoin de connaitre a l'avance en regroupant avec "GROUP BY"

dans la requete proposé il y a un regroupement par url, donc toutes les url identiques seront regroupées avec le nombre total contenu dans l'alias "nb".

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

19 févr. 2006, 20:06

les balises <option> doivent être fermées.
$aze = $db->query("SELECT COUNT(url) as nb, url FROM erreur GROUP BY url ");
echo '<br /><select>';
while($donnees = $db->fetch_array($aze))
{
   $file=$donnees['url'];
   $nb=$donnees['nb'];
   echo '<option value="'.$url.'">'.$url.' ('.$nb.')';
}
echo'</select>';
echo'<br /><br />';

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 90 Messages

19 févr. 2006, 20:09

ok merci beucoup Truc

a une prochaine fois

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

19 févr. 2006, 20:30

de rien :wink:

quelle est cette manie de s'inscrire apres avoir posté le 1er message :o :roll:

Comptons sur un Modo pour le tag [Résolu], étant donné que tu as posté en invité tu ne peux le faire toi meme :wink:

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute