Boucle

Boucle - PHP - Programmation

Marsh Posté le 06-02-2006 à 11:49:00    

Bonjour,  
 
Je suis en train de faire du php dans du javascript.
J'ai un peu de mal avec la boucle for et je pense que c'est ce qu'il faudrait que j'utilise.
 
Voici mon code Javascript : menu[0]="test"; menu[1]="test1"; menu[2]="test2";
 
'test, test1, test2' sont mes rubriques. Il faut faire une boucle pour mes rubriques (aller les chercher dans la bdd) et dans cette boucle faire un truc avec 'for' pour que qd j'incrémente une rubrique $i=$i+1
 
Vous comprenez? Vous pouvez m'aider?

Reply

Marsh Posté le 06-02-2006 à 11:49:00   

Reply

Marsh Posté le 06-02-2006 à 12:02:07    

Aider oui, mais faire le boulot, beaucoup moins :/
Ca va pour cette fois :jap:

Code :
  1. // Infos SQL
  2. $Server = 'localhost' ;
  3. $Login = 'root' ;
  4. $Pass = '' ;
  5. $Bdd = 'base';
  6. $i = 0 ;
  7. // Connexion
  8. $SQL_Handle = mysql_connect($Server ,$Login ,$Pass) or die (mysql_error() );
  9. mysql_select_db($Bdd , $SQL_Handle) or die (mysql_error() );
  10. // Requete SQL
  11. $Req = 'SELECT nom_champ FROM ma_table' ;
  12. // Extraction
  13. while ( $Rows = mysql_fetch_array(mysql_query($Req))
  14.      {
  15.      echo "menu[".$i."] = \"".addslashes($Rows['nom_champ'])."\"; \n" ;
  16.      $i++ ;
  17.      }
  18. // Fermeture de connexion SQL
  19. mysql_close($SQL_Handle) ;


Message édité par the_bigboo le 06-02-2006 à 12:10:04
Reply

Marsh Posté le 06-02-2006 à 12:28:44    

merci bcp ça fonctionne

Reply

Marsh Posté le 06-02-2006 à 12:38:44    

Evidemment :D Tous les grands scripts utilisent ce systeme :)

Reply

Marsh Posté le 06-02-2006 à 13:42:09    

Suite du code du dessus
 
J'ai un autre soucis maintenant. Toujours pour mon menu, je veux maintenant afficher mes sous catégorie dépendante de la catégorie.
 
Voici mon script javascript correspondant à mon petit 1 et petit 2 dans la rubrique 0 Je osuhaite bien sûr affiché mes sous catégorie présente dans ma bdd.
 
Avez-vous une solution??  
 

Code :
  1. ssmenuNom[0][0] = "<?=$essai?>";
  2. ssmenuLien[0][0] = "http://www.script-masters.com/";
  3. ssmenuTarget[0][0] = "bodemer";
  4. ssmenuNom[0][1] = "Exemple";
  5. ssmenuLien[0][1] = "http://www.script-masters.com/";
  6. ssmenuTarget[0][1] = "_blank";


Reply

Marsh Posté le 06-02-2006 à 15:06:57    

jenny50 > Je pense qu'il est temps que tu te penches sur des tutoriels plustôt que d'attendre à chaque fois des solutions toutes faites. Je veux bien croire que la programmation n'est pas ton truc, mais là tes questions donnent l'impression que tu n'as même pas fait l'effort de te documenter pour comprendre le code qui t'as été fournis.
 
La preuve : là où une adaptation suffit sans avoir besoin de fonctions suplémentaires, tu bloques et demande de l'aide à peine une heure aprés qu'on t'ai donné la solution à ton premier probléme.
 
Lis donc des tutoriels sur php et aprés, si tu bloques toujours reviens poser ta question.

Reply

Marsh Posté le 06-02-2006 à 15:25:10    

Omega2 >
je suis désolée d'être nulle !!!
Vraiment merci....
 
Sache que je lis et examine bcp de script avant de poser ma question et surtout j'essai...je ne suis pas une fainéante !!
 
Sympa la camaraderie

Reply

Marsh Posté le 06-02-2006 à 15:28:38    

la phrase d'omega2 n'était pas la pour etre méchante, mais l'accumulation des personnes demandant des scripts tout faits ou sans politesse pousse parfois à expliquer réellement aux gens ce qu'ils doivent faire . Mais je vois  pas dans sa réponse une certaine forme de snobisme ou quoi, s'il te dit ca , c'est avant tout pour toi , pour que tu progresses :)

Reply

Marsh Posté le 06-02-2006 à 15:46:46    

jenny50 > Sur ce forum, on voit passer beaucoup de gens qui demandent des solutions sans avoir rien essayer de leur côté. Ils sont d'ailleur nombreux à sortir l'excuse du "j'ai pas le temps" pour excuser leur fainéantise.
 
Je suis désolé si je t'ai froissé alors que tu fais des efforts pour y arriver, mais quand je vois des gens bloquer alors qu'il leur suffit de reprendre le code déjà donné et d'en modifier qu'un ou deux éléments, j'ai tendance à me dire que c'est une personne qui ne fait aucun d'effort. J'ai parfois tord de penser ça, mais d'expérience, j'ai malheureusement trop souvent raison.
 
Pour ta seconde question, en fonction de comment sont organisé tes données dans ta table, il suffit :

  • soit de modifier ta requette pour récupérer les catégories et les souscatégories en une fois. Ensuite en comparant le nom de la catégorie correspondant à la souscatégorie actuelle avec celle de la souscatégorie précédante tu peux détecter le changement de catégorie.
  • soit modifier le même code à l'intérieur de la boucle while en changeant les noms des variables afin de demander à la base de donnée les souscatégories correspondant à chaque catégorie. (condition "where champdelacategorie='patati' " dans la seconde requette sql )


Dans les deux cas, il n'y a besoin d'aucune fonction suplémentaire pour y arriver. A la limite, il faut utiliser un "if" qui n'est pas dans l'exemple actuel mais c'est un élément du langage qui est enseigné dans tous les bons tutoriels de php et même dans la pluspart des mauvais.

Reply

Marsh Posté le 06-02-2006 à 15:50:37    

Juste un détail, le mysql_close() se met a la fin !

Reply

Marsh Posté le 06-02-2006 à 15:50:37   

Reply

Marsh Posté le 06-02-2006 à 15:52:59    

je te remercie Omega2.
 
Effectivement tu m'a vexé...mais je comprend ton raisonnement et puis pour ceux qui font comme tu dis c'est tellement simple.
 
Moi ça fait que 2 mois que je fais du php donc j'ai bcp de questions et autour de moi personne ne connais les langages Internet même pas leur logique c'est pour cette raison que je suis souvent sur le forum.
 
C'est en ce trompant qu'on apprend...et c'est mieux quand les gens sont là pour perdre moins de temps.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed