Comportement de deux for .....

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 : Comportement de deux for .....

par ryykko » 18 déc. 2007, 11:38

desole de n avoir pas repondu plus tot,
je suis parti sur autre chose.

c est clairement la conception du script.
j' ai passe les resultats en tableau donc plus de probleme
merci pour vos rep. :D


resolu :arrow:

par jojolapine » 18 déc. 2007, 11:10

Comme ça, au pif, je pense que ton problème vient du fait que tu cherches à exploiter deux fois le résultat d'une même requête, et cela sans remettre le curseur au début des résultats (voir mysql_data_seek() )...
Après je n'en sais rien... Mais je pense qu'il y a un petit problème de conception... à suivre

Re: Comportement de deux for .....

par d0m » 18 déc. 2007, 09:27

Mon probleme ici est que $j est dependant de $k
eh bien non, $j n'est pas dépendant de $k
Tes deux boucles ne sont pas imbriquées et il n'y a aucun lien entre $j et $k
for ($k = 0;$k < $NbC ;$k++) { 
  ...
}
for ($j = 0;$j < $NbC ;$j++) {
  ...
}
Tu as mal identifié ton problème.

par orgerix » 17 déc. 2007, 21:47

Tu oublies le principale... C'est censé faire quoi ?

Comportement de deux for .....

par ryykko » 17 déc. 2007, 21:23

Pas tres explicite mais bon

bonsoir
<?php
	include("lib/bdd.php");
	$ReqC = "SELECT * FROM comp";//requete simplifiee
	$CursC = mysql_query($ReqC);
	$NbC = mysql_numrows($CursC);
		
	//LANGUE
	echo'<div class="libelle">Langue</div>';	
	echo'<table width="100%"><tr>';
//PREMIERE BOUCLE
	for ($k = 0;$k < $NbC ;$k++) {	
	$IdC = mysql_result($CursC, $k, "IdComp");
    $LibelleC = mysql_result($CursC, $k, "LibelleComp");
	$TypeComp = mysql_result($CursC, $k, "TypeComp");
    $CatComp = mysql_result($CursC, $k, "CatComp");	
	
	if (($TypeComp=="1") AND ($CatComp=="1"))
		{			
			if ((($k % 4) == 0) AND ($k != 0)) //PERMET DE CREER UNE LIGNE
				{
				echo'</tr><tr>';
				} 
			echo'<td width="25%"><input type="checkbox" name="Type" value=""/>'.$LibelleC.'('.$k.')</td>';	
				
		}
	} 
	echo'</tr></table>';
	
	//BASE
	echo'<div class="libelle">base</div>';	
	echo'<table width="100%"><tr>';
	$j = 0;
//DEUXIEME BOUCLE
	for ($j = 0;$j < $NbC ;$j++) {	
	$IdC = mysql_result($CursC, $j, "IdComp");
    $LibelleC = mysql_result($CursC, $j, "LibelleComp");
	$TypeComp = mysql_result($CursC, $j, "TypeComp");
    $CatComp = mysql_result($CursC, $j, "CatComp");	
	
	if (($TypeComp=="1") AND ($CatComp=="2"))
		{			
			if ((($j % 4) == 0) AND ($j != 0)) 
				{
				echo'</tr><tr>';
				} 
			echo'<td width="25%"><input type="checkbox" name="Type" value=""/>'.$LibelleC.'('.$j.')</td>';					
		}
	} 
	echo'</tr></table>';
	
	?>
Mon probleme ici est que $j est dependant de $k: les valeurs ne s autoincrementent pas independamment. Et je ne comprends pas pourquoi????

merci pour vos reponses
:D