foreach et for

Mammouth du PHP | 725 Messages

28 juin 2012, 08:40

Bonjour,

Je coincide par foreach et for sur le meme code, pour:

+ Extraire les donnees d'une table
+ Incrementer un champs
foreach($resultmem as $mK=>$mV)
	{
		$texte = $mV['texte'];		


		for($commentNumber == 1; $commentNumber <= $total_com; $commentNumber++)
		{
		// the comment number
		echo $commentNumber.' ';
               echo ' '.$texte.'<br />';
} // end for
} // end foreach
resultat:
12345: toto
12345: tata
12345: tati
12345: tonton
12345: tantan
resulat souhaitable
1: toto
2: tata
3: tati
4: tonton
5: tantan

j'ai essaye avec l'inverse:
for(){

foreach(){

}
}
ca retourne une erreur de date:
Warning: date() expects parameter 2 to be long, string given in /home/rime/www/Admins
// convert timestamp to day name: Sunday, Monday ... Friday
		$day_name = date('l', $date_posted);
merci

Eléphant du PHP | 267 Messages

28 juin 2012, 09:50

salut,

voila ton script :
$i = 0;
foreach ( $resultmem as $mV ) {
    $i++;
    echo($i.': '.$mV['texte'].'<br />');
}
@+
dix2

Mammouth du PHP | 2278 Messages

28 juin 2012, 10:10

Si la question était clairement posée, ça irait mieux.
[quote="rimie"]Bonjour,
+ Extraire les donnees d'une table
Dans cette table, il y a des enregistrements qui ont quelle forme? en particulier, au vu du résultat attendu, on peut supposer qu'il y a un seul 'comment' par ligne.
+ Incrementer un champs
/* on parcourt toutes les lignes du résultat*/
foreach($resultmem as $mK=>$mV)
{
    $texte = $mV['texte'];		
    /* le $comment_number est incrémenté et $texte ne change pas*/
    for($commentNumber == 1; $commentNumber <= $total_com; $commentNumber++)
    {
           // the comment number
	  echo $commentNumber.' ';
           echo ' '.$texte.'<br />';
     } // end for
} // end foreach
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Petit nouveau ! | 9 Messages

28 juin 2012, 11:04

Eventuellement, essayer ceci pourrait aider à comprendre ce qui se passe...
foreach($resultmem as $mK=>$mV) {
  var_dump($mV);

  // Et même peut-être
  var_dump($mK);
}

Eléphanteau du PHP | 33 Messages

28 juin 2012, 11:16

La structure foreach te donne tout pour travailler !
foreach ($resultmem as $mK => $mV) {
    echo($mK . ':' . $mV['texte']);
}

Eléphant du PHP | 267 Messages

28 juin 2012, 11:52

La structure foreach te donne tout pour travailler !
foreach ($resultmem as $mK => $mV) {
    echo($mK . ':' . $mV['texte']);
}
ça ne donne pas le résultat voulu si $resultmem est un tableau associatif (de même s'il y a des trous dans les clefs ou si les clefs ne sont pas ordonnées)

dix2

Mammouth du PHP | 725 Messages

28 juin 2012, 12:48

dix2:
resultat:

Code : Tout sélectionner

112345
sirakawa: il ya plusieurs donnees, et il y a 5 enregistrements

Mammouth du PHP | 2278 Messages

28 juin 2012, 14:06

et à chaque enregistrement un seul commentaire?
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Mammouth du PHP | 725 Messages

28 juin 2012, 14:21

5 enregistrements = 5 commentaires et chaque commentaire aura un num incremente 1, 2, 3, 4, 5

Code : Tout sélectionner

1 commentaire 1 2 commentaire 2 3 commentaire 3 4 commentaire 4 5 commentaire 5

ViPHP
ViPHP | 2577 Messages

28 juin 2012, 14:46

Il faut savoir ce que contient $resultmem pour pouvoir afficher son contenu.

Mammouth du PHP | 725 Messages

28 juin 2012, 14:52

Il faut savoir ce que contient $resultmem pour pouvoir afficher son contenu.
je veux juste afficher l'incrementation, pour le foreach() ca s'affiche bien

ViPHP
ViPHP | 2577 Messages

28 juin 2012, 15:35

C'est juste que sans connaitre le contenu de cette variable, je ne pouvais pas t'aider.

Mammouth du PHP | 2278 Messages

28 juin 2012, 16:39

C'est juste que sans connaitre le contenu de cette variable, je ne pouvais pas t'aider.
même question : resultmem comprend le texte et quoi ?
J'ai l'impression qu'on va se retrouver avec array_keys()...
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Mammouth du PHP | 725 Messages

28 juin 2012, 16:56

il comprend: le commentaire, la date complete (y compris l'heure), l'avatar

Mammouth du PHP | 2278 Messages

28 juin 2012, 18:40

si je ne me trompe pas:
$numero = 1;
foreach ($resultmem as $mK => $mV)
{
echo($numero." : ".$mK . ':' . $mV['texte']);
$numero++;
}
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD