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

 


Dernière réponse
Sujet : variable php dans un javascript
darkoli voila le code html et javascript (retrouvé dans un sujet posté le 20 avril de cette année) par moi meme :
 
pour toi, il te suffit de mettre à jour les ligne du bas en php :
 
liste 1 : aa(id_element_1,nom_element_1);
       => aa(0,"pays" );
 
liste 1 : ab(id_element_1,id_element_2,nom_element_2);
       => ab(0,2,"france" );
 
id_element_1 : identifiant des elements de la liste 1
nom_element_1 : nom des elements de la liste 1 (chaine de caracteres)
id_element_2 : identifiant des elements de la liste 2
nom_element_2 : nom des elements de la liste 2 (chaine de caracteres)
 

Code :
  1. <html>
  2. <head>
  3.   <title>Liste deroulantes</title>
  4.   <style>
  5.     select{font-family:courier new}
  6.     form{margin-top:0em}
  7.   </style>
  8. </head>
  9. <body>
  10. <script language="javascript">
  11.   var na=0;
  12.   var ta=new Array();
  13.   var nb=0;
  14.   var tb=new Array();
  15.   var nbm=0;
  16.   function ea(i,t) {
  17.     this.id=i;
  18.     this.texte=t;
  19.     this.taille=0;
  20.     }
  21.   function eb(a,i,t) {
  22.     this.ida=a;
  23.     this.id=i;
  24.     this.texte=t;
  25.     ta[a].taille=ta[a].taille+1;
  26.     if (ta[a].taille>nbm) nbm=ta[a].taille;
  27.     }
  28.   function aa(i,t) {
  29.     ta[na]=new ea(i,t);
  30.     na++;
  31.     }
  32.   function ab(a,i,t) {
  33.     tb[nb]=new eb(a,i,t);
  34.     nb++;
  35.     }
  36.   function ia() {
  37.     var s="";
  38.     for (var i=0;i<na;i++) {
  39.       s=s+"<option value=\""+ta[i].id+"\">"+ta[i].texte+"</option>";
  40.       }
  41.     return(s);
  42.     }
  43.   function ib() {
  44.     var s="";
  45.     for (var i=0;i<nb;i++) {
  46.       if (ta[0].id==tb[i].ida) {
  47.         s=s+"<option value=\""+tb[i].id+"\">"+tb[i].texte+"</option>";
  48.         }
  49.       }
  50.     for (var i=ta[0].taille;i<nbm;i++) {
  51.       s=s+"<option value=\"x\"></option>";
  52.       }
  53.     return(s);
  54.     }
  55.   function ca() {
  56.     var n=document.all.liste_a.options[document.all.liste_a.selectedIndex].value;
  57.     var nc=0;
  58.     for (var i=0;i<nbm;i++) {
  59.       document.all.liste_b.options[i].value="x";
  60.       document.all.liste_b.options[i].text="";
  61.       }
  62.     for (var i=0;i<nb;i++) {
  63.       if (n==tb[i].ida) {
  64.         document.all.liste_b.options[nc].value=tb[i].id;
  65.         document.all.liste_b.options[nc].text=tb[i].texte;
  66.         nc++;
  67.         }
  68.       }
  69.     }
  70.   aa(0,"ville" );
  71.   aa(1,"region" );
  72.   aa(2,"pays" );
  73.   ab(0,0,"montbeliard" );
  74.   ab(0,1,"belfort" );
  75.   ab(0,2,"paris" );
  76.   ab(1,0,"franche comté" );
  77.   ab(1,1,"ile de france" );
  78.   ab(2,0,"france" );
  79.   ab(2,1,"italie" );
  80.   ab(2,2,"espagne" );
  81.   ab(2,3,"danemark" );
  82. </script>
  83. <select name="liste_a" onChange="ca()"><script language="javascript">document.write(ia())</script></select>
  84. <select name="liste_b" ><script language="javascript">document.write(ib())</script></select>
  85. </body>
  86. </html>


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
darkoli voila le code html et javascript (retrouvé dans un sujet posté le 20 avril de cette année) par moi meme :
 
pour toi, il te suffit de mettre à jour les ligne du bas en php :
 
liste 1 : aa(id_element_1,nom_element_1);
       => aa(0,"pays" );
 
liste 1 : ab(id_element_1,id_element_2,nom_element_2);
       => ab(0,2,"france" );
 
id_element_1 : identifiant des elements de la liste 1
nom_element_1 : nom des elements de la liste 1 (chaine de caracteres)
id_element_2 : identifiant des elements de la liste 2
nom_element_2 : nom des elements de la liste 2 (chaine de caracteres)
 

Code :
  1. <html>
  2. <head>
  3.   <title>Liste deroulantes</title>
  4.   <style>
  5.     select{font-family:courier new}
  6.     form{margin-top:0em}
  7.   </style>
  8. </head>
  9. <body>
  10. <script language="javascript">
  11.   var na=0;
  12.   var ta=new Array();
  13.   var nb=0;
  14.   var tb=new Array();
  15.   var nbm=0;
  16.   function ea(i,t) {
  17.     this.id=i;
  18.     this.texte=t;
  19.     this.taille=0;
  20.     }
  21.   function eb(a,i,t) {
  22.     this.ida=a;
  23.     this.id=i;
  24.     this.texte=t;
  25.     ta[a].taille=ta[a].taille+1;
  26.     if (ta[a].taille>nbm) nbm=ta[a].taille;
  27.     }
  28.   function aa(i,t) {
  29.     ta[na]=new ea(i,t);
  30.     na++;
  31.     }
  32.   function ab(a,i,t) {
  33.     tb[nb]=new eb(a,i,t);
  34.     nb++;
  35.     }
  36.   function ia() {
  37.     var s="";
  38.     for (var i=0;i<na;i++) {
  39.       s=s+"<option value=\""+ta[i].id+"\">"+ta[i].texte+"</option>";
  40.       }
  41.     return(s);
  42.     }
  43.   function ib() {
  44.     var s="";
  45.     for (var i=0;i<nb;i++) {
  46.       if (ta[0].id==tb[i].ida) {
  47.         s=s+"<option value=\""+tb[i].id+"\">"+tb[i].texte+"</option>";
  48.         }
  49.       }
  50.     for (var i=ta[0].taille;i<nbm;i++) {
  51.       s=s+"<option value=\"x\"></option>";
  52.       }
  53.     return(s);
  54.     }
  55.   function ca() {
  56.     var n=document.all.liste_a.options[document.all.liste_a.selectedIndex].value;
  57.     var nc=0;
  58.     for (var i=0;i<nbm;i++) {
  59.       document.all.liste_b.options[i].value="x";
  60.       document.all.liste_b.options[i].text="";
  61.       }
  62.     for (var i=0;i<nb;i++) {
  63.       if (n==tb[i].ida) {
  64.         document.all.liste_b.options[nc].value=tb[i].id;
  65.         document.all.liste_b.options[nc].text=tb[i].texte;
  66.         nc++;
  67.         }
  68.       }
  69.     }
  70.   aa(0,"ville" );
  71.   aa(1,"region" );
  72.   aa(2,"pays" );
  73.   ab(0,0,"montbeliard" );
  74.   ab(0,1,"belfort" );
  75.   ab(0,2,"paris" );
  76.   ab(1,0,"franche comté" );
  77.   ab(1,1,"ile de france" );
  78.   ab(2,0,"france" );
  79.   ab(2,1,"italie" );
  80.   ab(2,2,"espagne" );
  81.   ab(2,3,"danemark" );
  82. </script>
  83. <select name="liste_a" onChange="ca()"><script language="javascript">document.write(ia())</script></select>
  84. <select name="liste_b" ><script language="javascript">document.write(ib())</script></select>
  85. </body>
  86. </html>

darkoli en fait il existe plein de solution, voici celle que j'ai utilisé :
 
  1° a faire en php coté serveur
    a. lister les elements de la liste 1 et les mettre dans la liste avec en value l'identifiant des elements.
 
    b. lister tout les elements de la liste 2 (pour tout les cas possible de choix dans la liste 1), il faut les stocker dans un tableau javascript sous la forme suivante : id + nom.
 
    c. determiner la taille de la liste 2 (comme le nombre d'elements de la liste va varier en fonction du choix de la liste 1, il faut connaitre la taille max de la liste 2 car les listes ne sont pas redimensionnables, il faut donc que des le depart la liste soit assez grande).
 
  2 javascript coté serveur
   
  c'est la qu'on met a jour la liste en fonction des evenements
 
===========================================================
beurrk En fait ce que je voudrais faire c  
avoir 2 liste deroulante (le contenu de c liste vient de BD Mysql)
D'apres le choix de la premiere liste, la 2eme est modifiee pour n'afficher que ceux qui concorde.
Et sans reloade la page (avec Onchange quoi)
Si qqun a une idee,... :jap:  :)  
 :hot: Merci d'avance et A+ :hello:  :hello:
lamatrice javascript y tourne sur le client normalement.
php lui tourne sur le serveur.
 
tu peux faire tourner javascript surle serveur avec l'option script runat=server.
 
 
ta variable javascript peut être refiler au serveur php par l'url comme avec le traitement de tes formulaire
Lord II NON. En fait cela depend de ce que doit faire le php. Si c'est pour réagir a une fonction javascript la réponse est non.
beurrk Merci bcp :jap:  
Peut-on faire l'inverse? mettre du code php ds un javascript
 :sol:
FLY LM Génère ton javascript avec du PHP -->
 
<?php
 
echo "<script language=\"Javascript\">
      <!--Ton script-->
      </script>";
?>
 
Ca répond à ta question ?
beurrk Bonjour a tous,
J'aimerai savoir comment passer une variable calculé ds un script php a une fonction javascript sur la meme page.
Merci d'avance :jap:  :jap:  :jap:

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