foreach

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 : foreach

par ichiro » 13 févr. 2008, 11:32

YEAH ca roule merci bien :P
Pour info c'était la dernière entrée qui était vide. Merci pour ta réponse ultra rapide ^^.
a+

par d0m » 13 févr. 2008, 11:27

Salut à toi,

le compteur $i n'est pas utile, il suffit de faire
while($prod[]=mysql_fetch_array($req,MYSQL_ASSOC))
Cela incrémentera automatiquement.
Et quand je fais print_r($prod) j'ai 6 entrées dont une completement vide
quelle entrée, la première ou la dernière?

Essaie de remplacer
while($prod[]=mysql_fetch_array($req,MYSQL_ASSOC)){
}
par
while($produit=mysql_fetch_array($req,MYSQL_ASSOC)){
  $prod[] = $produit;
}
Le problème est toujours là?

foreach

par ichiro » 13 févr. 2008, 11:16

Bonjour a tous, après une recherche sur le fofo je me tourne vers vous pour vous demander votre aide :wink:

J'aimerai réaliser un affichage de produit relié à une base de donnée.
J'ai d'abord mis toute les informations de chaque produit dans un tableau et ensuite je vais un foreach sur le tableau en question pour afficher mes produits mise en forme (bloc_cata.php).
Ce que je comprend pas c'est que dans mon exemple j'ai 5 produits qui correspondent à la requête.
Et quand je fais print_r($prod) j'ai 6 entrées dont une completement vide. du coup j'ai un div vide qui s'affiche.

Le code pour le contenu de la requete dans le tableau
if($titre_categorie=="produit"){
$sql="select * from produit where categorie_prod=$rubrique and promo=0";
$req=mysql_query($sql);
//echo $sql;

// tableau a double dimension $i designant chaque produit===================================
$i=0;
//resultat de la requete dans un tableau
while($prod[$i]=mysql_fetch_array($req,MYSQL_ASSOC)){
	$i++;
}
print_r($prod)."<br>";
//fixer la taille de la div pour la largeur
echo "<div style='width:600px;' align='center'>";

//On passe en revu les tableaux
$fiche= 0; //compteur du tableau pour  tous les champs du produit

//print_r($prod);
foreach($prod as $value){
	include('fonction/bloc_cata.php');
	//$html .=$prod[2]['nom_prod'];
	echo $html;
	$fiche++;
//fin foreach
}
echo "</div>";
}
Je pense que le problème viens du while mais je vois pas ...Un petit coup de main svp :oops: