Comment compter les éléments d'un tableau ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Comment compter les éléments d'un tableau ?

par dogmongo » 12 sept. 2008, 00:28

donc finalement je me suis pas trop mal débrouillé, merci pour le temps que vous m'avez accordé :wink:

par phoeniix07 » 11 sept. 2008, 18:58

tu peut utiliser

mysql_num_rows si tu ah une requête ne sélectionnant que les pions d'une case mais la apparemment tu sélectionne tout les pions de l'aire de jeux, donc soit utiliser un nombre que tu incremente (comme actuelement) soit une requête pour chaque case soit un count avec group by par case.

perso j'utiliserais le count je pense mais bon on a pas tout ton code et juste un apercu de ta bd!

par dogmongo » 11 sept. 2008, 18:03

c'est vraiment pas simple à expliquer !

j'ai développé un jeu en ligne, php ajax html, sur ce jeu il y a une map avec 15 zones

sur chaque zone il y a des pions, mais il peut y en avoir plusieurs par zone

afin de connaître le nombre de pions dans chaque zone , j'exécute une requête sur une base de données où est indexé la position de mes pions.
$query = mysql_query("SELECT * FROM `matablepion` WHERE wolf_id_game=\"$idjeu\"  ");
	while($row = mysql_fetch_array($query)) {
	$DB_wolf_id_pion = $row['wolf_id_pion'];
	$DB_wolf_case = $row['wolf_case'];
	$DB_wolf_color = $row['wolf_color'];
	$DB_wolf_name = $row['wolf_name'];

$Gourpe_wolf_dog_name = $row['wolf_name'];
$Groupe[$DB_wolf_case].= "<img src=\"templade/".$DB_wolf_color."/4m.jpg\" width=\"25\" hspace=\"5\" border=\"0\"  align=\"absmiddle\" style=\"border: 1px solid #FFFFFF;\">".$Gourpe_wolf_name." <input type=\"radio\" name=\"pion\" id=\"pion\" value=\"$DB_wolf_id_pion\"><br>";
}
ensuite après une sélection de zones je génère un formulaire via Ajax, seulement il y a une condition sur le nombre de pions de la zone voulue, si je veux déplacer un seul pion un formulaire doit apparaître, sinon il apparaît différemment.

cette condition se vérifie par la variable que j'essaie de créer

la seule chose que j'ai réussie à faire pour l'instant s'est créé un autre tableau associatif, ça ne me gêne pas du moment où ça marche, mais si il y a une solution bien plus simple j'aimerais beaucoup la connaître.
$nb_pion_groupe[$DB_wolf_case] ++;

par phoeniix07 » 11 sept. 2008, 13:08

Tu veux compter le nombre de caractères de ta chaine ?

dans ce cas
strlen($Groupe[$lazone]);
sinon essaye d'être un poil plus clair.

par Berzemus » 11 sept. 2008, 12:02

Euh.. ben 8, c'est la taille du tableau $Groupe..

Je crois qu'on se comprend mal, tu cherches à faire quoi, au juste ? Si c'est le nombre de rangées dans une DB que tu veux, c'est par une requête SQL (genre 'SELECT count(*) FROM ma_table') qu'il faut passer.

par dogmongo » 11 sept. 2008, 11:16

voici le test suivant que j'ai fais
$test =  count($Groupe);
echo "test =".$test;
donne

Code : Tout sélectionner

test =8
8 semble être le nombre d'enregistrement groupés de ma base de donnée, mais j'avance rien c'est peu etre qu'un hasard

par Berzemus » 11 sept. 2008, 10:21

non aucune erreur je passe par AJAX
Oui mais tu peux quand même voire ce que te retourne ton script, non ?

par dogmongo » 11 sept. 2008, 00:24

non aucune erreur je passe par AJAX

par Berzemus » 10 sept. 2008, 21:54

Il affiche des erreurs, quand même ? Ce serait bizarre sinon..

par dogmongo » 10 sept. 2008, 19:58

oui j'ai essayé mais sans succès !

la seule méthode que j'ai trouvé c'est de créer un autre tableau associatif en sortie de requete mais si je pouvais faire mieu :? j'aimerai autant.
//requete 
$Groupe[$DB_case] ="ma chaine de car... $DB_case ";
$Nb[$DB_case] ++;
} // fin while

echo $Groupe[$lazone]."<br>";
echo "il y a ".$Groupe[$lazone]." éléments ";
merci Berzemus

Re: Comment compter les éléments d'un tableau ?

par Berzemus » 10 sept. 2008, 19:40

ben..
$nbc_gp =  count($Groupe); 
Sauf si $Groupe[$lazone] est en lui-même un tableau, mais je vois pas trop ce qui coince..

Comment compter les éléments d'un tableau ?

par dogmongo » 10 sept. 2008, 19:18

Bonjour,

Comment puis-je compter les éléments d'un tableau ?

Mon tableau $Groupe[] que j'ai récupéré en sortie de requête et je voudrai récupérer le nombre éléments

je me suis orienté sur count mais je pense que ma méthode est mauvaise

$nbc_gp =  count($Groupe[$lazone]); 
je me casse la tête dessus, j'ai jamais utilisé cette fonction si quelqu'un pourrai me donner un peu plus d'explication dessus je lui en serais reconnaissant :?

merci d'avance