Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1632 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Bonsoir tt le monde, G un pb de boucles dans des boucles..

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Bonsoir tt le monde, G un pb de boucles dans des boucles..

n°276559
chrono
Ne m'appelez plus Dieu...
Posté le 27-12-2002 à 17:35:23  profilanswer
 

dites moi... pkoi ca marche pas ca?
 
...
else
{  
$id[$y]=$row3['Type'];
$designation[$y]=$row3['Designation'];
 
$reqB=mysql_db_query('bddd',"SELECT Id_Poste, Libelle_Menu FROM ParamMenu WHERE Id_Poste!='$id[$y]' AND Libelle_Menu!='$designation[$y]'",$db_link);
 
while ($row4= mysql_fetch_array($reqB))
{
 
$Id2=$row4['Id_Poste'];
$Libelle2=$row4['Libelle_Menu'];
...
 
C pas evident à comprendre kom ca mais si je commence à expliquer on y est encore demain.. :sweat:

mood
Publicité
Posté le 27-12-2002 à 17:35:23  profilanswer
 

n°276563
djok_fb
C'était mieux avant!
Posté le 27-12-2002 à 17:36:49  profilanswer
 

???
 
c'est quoi ton erreur? ca boucle et ca fait rien? ou y a un message?

n°276565
samuelp
Posté le 27-12-2002 à 17:37:36  profilanswer
 


$reqB=mysql_db_query('bddd',"SELECT Id_Poste, Libelle_Menu FROM ParamMenu WHERE Id_Poste!='".$id[$y]."' AND Libelle_Menu!='".$designation[$y]."'",$db_link);
 

n°276567
chrono
Ne m'appelez plus Dieu...
Posté le 27-12-2002 à 17:38:34  profilanswer
 

ben y me prend plein de fois des resultat de boucles antérieures... et ne me prend pas tous les resultats de la dernière boucle..
 
Je peux pas mettre le code entier, c un peu long..

n°276568
chrono
Ne m'appelez plus Dieu...
Posté le 27-12-2002 à 17:40:01  profilanswer
 

samuelp a écrit :


$reqB=mysql_db_query('bddd',"SELECT Id_Poste, Libelle_Menu FROM ParamMenu WHERE Id_Poste!='".$id[$y]."' AND Libelle_Menu!='".$designation[$y]."'",$db_link);
 
 


 
Ca doit etre ca, je V voir, je crois ke je V te remercier dans pas lgpts..

n°276570
chrono
Ne m'appelez plus Dieu...
Posté le 27-12-2002 à 17:44:36  profilanswer
 

Ca marche pas...
 
Y fo pas ke je fasse une concaténation également au niveau de l'affectation des résultats dans les variables?

n°276579
djok_fb
C'était mieux avant!
Posté le 27-12-2002 à 18:04:27  profilanswer
 

normalement, ca doit marcher tel quel

n°276588
chrono
Ne m'appelez plus Dieu...
Posté le 27-12-2002 à 18:15:02  profilanswer
 

Je V peter un cable la... :fou:  :pt1cable:  
Ou peux bien se trouver cette P... d'erreur de M....!!!?
 :heink:  
 
 
echo"<center><h3>Demande d'autorisations</h3></center>";
 
$requeteFORM=mysql_db_query('bddd',"SELECT Id_Poste, Libelle_Menu FROM ParamMenu",$db_link);
 
while ($row2=mysql_fetch_array($requeteFORM))  
{ //============================1
 
$Id=$row2['Id_Poste'];
$Libelle=$row2['Libelle_Menu'];
 
 
$requeteCount=mysql_db_query('bddd',"SELECT COUNT(Id_Poste) FROM ParamMenu",$db_link);
$resultat=mysql_result($requeteCount,0,"COUNT(Id_Poste)" );
 
for($y==1;$y<$resultat;$y++)
{ //==============================2
 
$reqA=mysql_db_query('bddd',"SELECT Designation, Type FROM Menu_U WHERE Code_UTPR='$Code_UTPR' AND Designation='$Libelle' AND Type='$Id'",$db_link);
 
while ($row3= mysql_fetch_array($reqA))
{ //=============================3
 
if(mysql_num_rows($reqA)==0)  
{  
echo "Pour le moment, ce client ne possède aucune autorisation d'accès à ses documents.";
}
else
{ //=============================4
 
$id[$y]=$row3['Type'];
$designation[$y]=$row3['Designation'];
 
// for($x==0;$x<1;$x++)
// { //=============================5
 
//$reqB=mysql_db_query('bddd',"SELECT Id_Poste, Libelle_Menu FROM ParamMenu WHERE Id_Poste!='".$id."' AND Libelle_Menu!='".$designation."'",$db_link);
 
$reqB=mysql_db_query('bddd',"SELECT Id_Poste, Libelle_Menu FROM ParamMenu WHERE Id_Poste!='".$id[$y]."' AND Libelle_Menu!='".$designation[$y]."'",$db_link);
 
while ($row4= mysql_fetch_array($reqB))
{ //=============================6
 
$Id2=$row4['Id_Poste'];
$Libelle2=$row4['Libelle_Menu'];
 
?>
Voulez vous autoriser l'accès aux
<?
echo $Libelle2;
?>
?
<input type="checkbox" name="checkbox[<? echo $Id2; ?>]" value="1"><br><br>
<?
 
 
} //=============================6
// } //=============================5
 
} //=============================4
} //=============================3
} //=============================2
} //=============================1
 
?>
<input type="hidden" name="action" value="select"><br><br>
<input type="submit" value="Envoyer"></center></form><br><br>
<?
 
break;

n°276589
samuelp
Posté le 27-12-2002 à 18:15:51  profilanswer
 

Chrono a écrit :

Ca marche pas...
 
Y fo pas ke je fasse une concaténation également au niveau de l'affectation des résultats dans les variables?


 
Mets un echo "Bonjour" dans ta boucle voir si ça passe ou pas.
 
 Sinon opte pour mysql_fetch_row plutot que mysql_fetch_array

n°276593
chrono
Ne m'appelez plus Dieu...
Posté le 27-12-2002 à 18:21:20  profilanswer
 

Attention!!!
Ceux ki ont mal à la tête doivent s'abstenir de lire..

 
En fait, G une table avec tous les types de dossiers possibles et existants... (un ID et un Libelle) 15 types..
 
Et une autre table qui me sert à faire un Menu d'autorisation d'accès pour chaque user...
Celui ci à son "code relation user/projet) associé à un type de document dans cette table...
 
Moi je veux afficher le Menu user mais sans reafficher les types de dossier deja autorisés...
 
Le con, il marche bien pour le premier resultat, puis il me sort la liste complete! puis il saute le resultat suivant (k'il fo sauter) puis me redonne la liste complète, puis saute le bon...etc..
 
relou hein?

mood
Publicité
Posté le 27-12-2002 à 18:21:20  profilanswer
 

n°276595
chrono
Ne m'appelez plus Dieu...
Posté le 27-12-2002 à 18:34:24  profilanswer
 

Bon je l'ai fait marché..mais du coup la dernière requete n'est plus ds aucune boucle...
 
Si j'arrive à concatener les variables Id et Designation ca devrait marcher...
 
Mais ca marche pas.. :cry:  :(  :fou:  :pt1cable:  :heink:  :sweat:


Message édité par chrono le 27-12-2002 à 20:08:32
n°276667
chrono
Ne m'appelez plus Dieu...
Posté le 27-12-2002 à 22:03:06  profilanswer
 

euh ca marche pas ca??
 
echo"<center><h3>Demande d'autorisations</h3></center>";
 
$z==0;
 
$reqF=mysql_db_query('bddd',"SELECT COUNT(Type) FROM Menu_U WHERE Code_UTPR='$Code_UTPR'",$db_link);
 
$NbResult2=mysql_result($reqF,0,"COUNT(Type)" );
 
echo"NBRESULT: ($NbResult2)";
 
$requeteFORM=mysql_db_query('bddd',"SELECT Id_Poste, Libelle_Menu FROM ParamMenu",$db_link);
 
while ($row2=mysql_fetch_array($requeteFORM))  
{ //============================1
 
$Id=$row2['Id_Poste'];
$Libelle=$row2['Libelle_Menu'];
 
 
$reqA=mysql_db_query('bddd',"SELECT Designation, Type FROM Menu_U WHERE Code_UTPR='$Code_UTPR' AND Designation='$Libelle' AND Type='$Id'",$db_link);
 
while ($row3= mysql_fetch_array($reqA))
{ //=============================2
 
if(mysql_num_rows($reqA)==0)  
{  
echo "Pour le moment, ce client ne possède aucune autorisation d'accès à ses documents.";
}
else
{ //=============================3
 
while($z<$NbResult2)
{ //=============================4
 
$id[$z]=$row3['Type'];
$designation[$z]=$row3['Designation'];
 
echo"ID: ($id[$z])";
 
$z++;
 
} //=4
} //=3
} //=2
} //=1
 
 
ca me marque ID: (1) ID: (1) ID: (1)
j'ai effectivement 3 enregistrements correspondants dans la BDD mais pkoi $z s'incremente pas?

n°276672
samuelp
Posté le 27-12-2002 à 22:16:50  profilanswer
 

Chrono a écrit :

euh ca marche pas ca??
 
echo"<center><h3>Demande d'autorisations</h3></center>";
 
$z==0;
 
$reqF=mysql_db_query('bddd',"SELECT COUNT(Type) FROM Menu_U WHERE Code_UTPR='$Code_UTPR'",$db_link);
 
$NbResult2=mysql_result($reqF,0,"COUNT(Type)" );
 
echo"NBRESULT: ($NbResult2)";
 
$requeteFORM=mysql_db_query('bddd',"SELECT Id_Poste, Libelle_Menu FROM ParamMenu",$db_link);
 
while ($row2=mysql_fetch_array($requeteFORM))  
{ //============================1
 
$Id=$row2['Id_Poste'];
$Libelle=$row2['Libelle_Menu'];
 
 
$reqA=mysql_db_query('bddd',"SELECT Designation, Type FROM Menu_U WHERE Code_UTPR='$Code_UTPR' AND Designation='$Libelle' AND Type='$Id'",$db_link);
 
while ($row3= mysql_fetch_array($reqA))
{ //=============================2
 
if(mysql_num_rows($reqA)==0)  
{  
echo "Pour le moment, ce client ne possède aucune autorisation d'accès à ses documents.";
}
else
{ //=============================3
 
while($z<$NbResult2)
{ //=============================4
 
$id[$z]=$row3['Type'];
$designation[$z]=$row3['Designation'];
 
echo"ID: ($id[$z])";
 
$z++;
 
} //=4
} //=3
} //=2
} //=1
 
 
ca me marque ID: (1) ID: (1) ID: (1)
j'ai effectivement 3 enregistrements correspondants dans la BDD mais pkoi $z s'incremente pas?



 
Fais un echo $z ;
 
C bizard en effet
 
Et c'est pas $z==0 au debut mais $z=0

n°276722
chrono
Ne m'appelez plus Dieu...
Posté le 27-12-2002 à 23:02:24  profilanswer
 

C kom ca k'on affecte le resultat à la variable? :heink:  
 
 
 
 
 
$reqA=mysql_db_query('bddd',"SELECT Designation, Type FROM Menu_U WHERE Code_UTPR='$Code_UTPR' AND Designation='$Libelle' AND Type='$Id'",$db_link);
 
while ($row3= mysql_fetch_array($reqA))
{ //=============================2
 
if(mysql_num_rows($reqA)==0)  
{  
echo "Pour le moment, ce client ne possède aucune autorisation d'accès à ses documents.";
}
else
{ //=============================3
 
while($z<=$NbResult2)
{ //=============================4
 
$id[$z]=$row3['Type'];
// $designation[$z]=$row3['Designation'];
 
echo"ID: ($id[$z])";
 
$z++;
 
} //=4
} //=3
} //=2
} //=1
 
$y=1;
 
echo" Insert : ($NbResult2$y)<br>";
 
while($y<=$NbResult2)
{ //=============================5
 
$reqB=mysql_db_query('bddd',"SELECT Id_Poste, Libelle_Menu FROM ParamMenu WHERE Id_Poste!='".$id[$y]."'",$db_link);
 
while ($row4= mysql_fetch_array($reqB))
{ //=============================6
 
$Id2=$row4['Id_Poste'];
$Libelle2=$row4['Libelle_Menu'];
.....


Message édité par chrono le 27-12-2002 à 23:03:06
n°276724
samuelp
Posté le 27-12-2002 à 23:05:50  profilanswer
 

Chrono a écrit :

C kom ca k'on affecte le resultat à la variable? :heink:  
 
 
 
 
 
$reqA=mysql_db_query('bddd',"SELECT Designation, Type FROM Menu_U WHERE Code_UTPR='$Code_UTPR' AND Designation='$Libelle' AND Type='$Id'",$db_link);
 
while ($row3= mysql_fetch_array($reqA))
{ //=============================2
 
if(mysql_num_rows($reqA)==0)  
{  
echo "Pour le moment, ce client ne possède aucune autorisation d'accès à ses documents.";
}
else
{ //=============================3
 
while($z<=$NbResult2)
{ //=============================4
 
$id[$z]=$row3['Type'];
// $designation[$z]=$row3['Designation'];
 
echo"ID: ($id[$z])";
 
$z++;
 
} //=4
} //=3
} //=2
} //=1
 
$y=1;
 
echo" Insert : ($NbResult2$y)<br>";
 
while($y<=$NbResult2)
{ //=============================5
 
$reqB=mysql_db_query('bddd',"SELECT Id_Poste, Libelle_Menu FROM ParamMenu WHERE Id_Poste!='".$id[$y]."'",$db_link);
 
while ($row4= mysql_fetch_array($reqB))
{ //=============================6
 
$Id2=$row4['Id_Poste'];
$Libelle2=$row4['Libelle_Menu'];
.....


 
Je pense.  
 
 Si tu ne trouves toujours pas je veux bien debuguer ton appli (j'ai que ça a foutre en ce moment), tu me fileras la structure de tes tables et on verra ce qu'on peut faire ;)

n°276771
beleg
黑社會
Posté le 28-12-2002 à 08:05:13  profilanswer
 

Chrono a écrit :


 
Le con, il marche bien pour  
 
relou hein?


 
sois plus indulgent avec toi meme, meme si tu es ds le vrai ...
bonne nuit  :D

n°276888
chrono
Ne m'appelez plus Dieu...
Posté le 28-12-2002 à 17:16:45  profilanswer
 

Comment faire pour k'il ne boucle pas kom un con?
 
 
while (list($cle, $valeur) = each($ID))
{ //=============================5
 
$reqY=mysql_db_query('bddd',"SELECT Id_Poste FROM ParamMenu WHERE Id_Poste!='$valeur'",$db_link);
 
while ($row4= mysql_fetch_array($reqY))
{ //=============================6
 
$Id2=$row4['Id_Poste'];
echo "$Id2";
 
A l'affichage G kom resultat:
 
2 3 4 5 6
1 3 4 5 6
1 2 4 5 6
 
(vu ke G 3 enregistrements) Mais comment contrer ce pb?
 
PS : moi je veux 4 5 6 kom resultat...


Message édité par chrono le 28-12-2002 à 17:20:56
n°276930
chrono
Ne m'appelez plus Dieu...
Posté le 28-12-2002 à 18:41:44  profilanswer
 

C possible au moins? :pfff:

n°276940
beleg
黑社會
Posté le 28-12-2002 à 19:02:27  profilanswer
 

!= existe en sql ???
c pas plutot <>

n°276978
chrono
Ne m'appelez plus Dieu...
Posté le 28-12-2002 à 19:49:44  profilanswer
 

C pareil...

n°277045
beleg
黑社會
Posté le 29-12-2002 à 05:28:07  profilanswer
 

autant pr moi
 
affiche le code que tu as maintenant.
affiche la valeur de $reqY a chaque passage de boucle (la est le probleme a mon avis)
affiche le contenu de ta table aussi

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Bonsoir tt le monde, G un pb de boucles dans des boucles..

 

Sujets relatifs
Bonjour tt le monde! MySQL... BDD relationnelle ou pas?bonsoir, détection automatique de la fermeture d'une page...
Faut-il aider tout le monde ici? Mettons les choses au point[java] il se fou du monde le jbuilder !!!!
Bonsoir, pouvez vous améliorer mon petit script svp?[Active X] Affichage de carte du monde
du nouveau ds le monde de la 3d lol[ PHP ] Perdu dans mes boucles > j'ai besoin de vous <
=> Soft de gestion de LCD <= Y'a du monde de motivé pour aider?Bonjour tt le monde !!! J'ai une erreur en PHP mysql ....
Plus de sujets relatifs à : Bonsoir tt le monde, G un pb de boucles dans des boucles..


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)