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

  FORUM HardWare.fr
  Programmation

  [Web] Creation d'un formulaire?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Web] Creation d'un formulaire?

n°172413
IvanleFou
Posté le 07-07-2002 à 11:09:44  profilanswer
 

Bonjour,
 
Voila je voudrais faire un formulaire avec plusieurs listes deroulantes avec une petite particularite:
Le choix dans la 1ere liste deroulante definit le contenu de la 2eme liste. Puis le choix ds la 2eme liste definit le contenu de la 3eme... etc
 
J'ai vu ca sur dans la section Download des sites de certains constructeurs ou dans la 1ere liste on choisit le type de peripherique. On fonction de ca seuls les modeles de ce types de periph sont affiche dans la 2eme liste...
 
Faut faire comment? et en quel language? PHP, Javascript... ?
Je suppose qu'il faut le faire en Javascript. Mais c'est pas trop mon truc. Je suis plutot PHP.
 
Merci pour le coup de main.

mood
Publicité
Posté le 07-07-2002 à 11:09:44  profilanswer
 

n°172421
slvn
Posté le 07-07-2002 à 11:29:11  profilanswer
 

html, recherche "form"
 
(j avais trouvé une "fiche" de tous les types de bouton de formulaire sur le web... mais je sais pu ou c etait)

n°172429
IvanleFou
Posté le 07-07-2002 à 11:42:08  profilanswer
 

j'ai fait une recherche sur le forum. J'ai bien trouve un script mais il ne marche pas.
Et comme j'y connais rien en JS ben je suis pas capable de la faire marcher :sweat:  :(

n°172430
slvn
Posté le 07-07-2002 à 11:44:01  profilanswer
 

ah oui pardon, j ai mal lu ton message
 
c est en javascript que ca se fait bien entendu
tu te souviens du nom des sites ?

n°172432
IvanleFou
Posté le 07-07-2002 à 11:54:57  profilanswer
 

Je me souviens de celui la:
 
http://www.smc.com/index.cfm?actio [...] _downloads
 
Mais a chaque fois que l'on fait un choix ds un menu deroulant il recharge la page pour afficher le suivant. J'en ai vu qui ne rafraichissent pas la page est c'est mieux.

n°172439
slvn
Posté le 07-07-2002 à 12:05:35  profilanswer
 

quand il recharge, c est qu il reappelle le serveur pour lui demander la liste suivante...
 
essaye de trouver un qui recharge pas pour regarder dans les sources comment c est fait

n°172441
IvanleFou
Posté le 07-07-2002 à 12:08:35  profilanswer
 

ouf j'ai trouve un script qui fait exactement ce que je veux.
Le voici:
 

Code :
  1. <FORM name="isc">
  2. <table border="0" cellspacing="0" cellpadding="0">
  3.   <tr align="center">
  4.     <td nowrap height="11">  
  5. <select name="example" size="1" onChange="redirect(this.options.selectedIndex)">
  6. <option selected>---Select1-------------</option>
  7. <option>Webmaster Sites</option>
  8. <option>News Sites</option>
  9. </select>
  10. <select name="stage2" size="1" onChange="redirect1(this.options.selectedIndex)">
  11. <option value=" " selected> </option>
  12. <option value=" " selected>---Select2--------------</option>
  13. <option value=" " selected>---Select2--------------</option>
  14. </select>
  15. <select name="stage3" size="1" onChange="redirect2(this.options.selectedIndex)">
  16. <option value=" " selected> </option>
  17. <option value=" " selected>---Select3----------------</option>
  18. <option value=" " selected>---Select3----------------</option>
  19. </select>
  20. <script>
  21. <!--
  22. var groups=document.isc.example.options.length
  23. var group=new Array(groups)
  24. for (i=0; i<groups; i++)
  25. group[i]=new Array()
  26. group[0][0]=new Option("---Select2---"," " );
  27. group[1][0]=new Option("Now Select This One"," " );
  28. group[1][1]=new Option("JavaScript","47" );
  29. group[1][2]=new Option("DHTML","46" );
  30. group[1][3]=new Option("CGI","45" );
  31. group[2][0]=new Option("Now Select This One"," " );
  32. group[2][1]=new Option("General News","115" );
  33. group[2][2]=new Option("Technology News","116" );
  34. var temp=document.isc.stage2
  35. function redirect(x){
  36. for (m=temp.options.length-1;m>0;m--)
  37. temp.options[m]=null
  38. for (i=0;i<group[x].length;i++){
  39. temp.options[i]=new Option(group[x][i].text,group[x][i].value)
  40. }
  41. temp.options[0].selected=true
  42. redirect1(0)
  43. }
  44. var secondGroups=document.isc.stage2.options.length
  45. var secondGroup=new Array(groups)
  46. for (i=0; i<groups; i++)  {
  47. secondGroup[i]=new Array(group[i].length)
  48. for (j=0; j<group[i].length; j++)  {
  49. secondGroup[i][j]=new Array()  }}
  50. secondGroup[0][0][0]=new Option("---Select 3---"," " );
  51. secondGroup[1][0][0]=new Option("---Select 3---"," " );
  52. secondGroup[1][1][0]=new Option("Now Select This One"," " );
  53. secondGroup[1][1][1]=new Option("JavaScript Kit","http://javascriptkit.com" );
  54. secondGroup[1][1][2]=new Option("JavaScript for the non programmer","http://webteacher.com/javascript/" );
  55. secondGroup[1][1][3]=new Option("Java-Scripts.net","http://java-scripts.net" );
  56. secondGroup[1][2][0]=new Option("Now Select This One"," " );
  57. secondGroup[1][2][1]=new Option("Dynamic Drive","http://www.dynamicdrive.com" );
  58. secondGroup[1][2][2]=new Option("Beginner's Guide to DHTML","http://www.geocities.com/ResearchTriangle/Facility/4490/" );
  59. secondGroup[1][2][3]=new Option("Web Coder","http://webcoder.com/" );
  60. secondGroup[1][3][0]=new Option("Now Select This One"," " );
  61. secondGroup[1][3][1]=new Option("CGI Resources","http://www.cgi-resources.com" );
  62. secondGroup[1][3][2]=new Option("Ada's Intro to CGI","http://adashimar.hypermart.net/" );
  63. secondGroup[2][0][0]=new Option("---Select 3---"," " );
  64. secondGroup[2][1][0]=new Option("Now Select This One"," " );
  65. secondGroup[2][1][1]=new Option("CNN","http://www.cnn.com" );
  66. secondGroup[2][1][2]=new Option("MSNBC","http://www.msnbc.com" );
  67. secondGroup[2][1][3]=new Option("ABC News","http://www.abcnews.com" );
  68. secondGroup[2][2][0]=new Option("Now Select A Page"," " );
  69. secondGroup[2][2][1]=new Option("News.com","http://www.news.com" );
  70. secondGroup[2][2][2]=new Option("Wired","http://www.wired.com" );
  71. var temp1=document.isc.stage3
  72. function redirect1(y){
  73. for (m=temp1.options.length-1;m>0;m--)
  74. temp1.options[m]=null
  75. for (i=0;i<secondGroup[document.isc.example.options.selectedIndex][y].length;i++){
  76. temp1.options[i]=new Option(secondGroup[document.isc.example.options.selectedIndex][y][i].text,secondGroup[document.isc.example.options.selectedIndex][y][i].value)
  77. }
  78. temp1.options[0].selected=true
  79. }
  80. function redirect2(z){
  81. window.location=temp1[z].value
  82. }
  83. //-->
  84. </script>
  85.  </td>
  86.   </tr>
  87. </table>
  88. </FORM>
  89. <p><font face="arial" size="1">Powered and Generated by </font><a href="http://www.g1script.com"><font face="arial,helvetica" size="1">G1script.Com</font></a></p>


 
Me reste plus qu'a comprendre comment il marche et l'adapter maintenant!
Ca va etre cho ca


Message édité par IvanleFou le 07-07-2002 à 12:09:43
n°172445
slvn
Posté le 07-07-2002 à 12:25:43  profilanswer
 

bon courgage :)

n°172454
ethernal
Chercheur de vérité...
Posté le 07-07-2002 à 13:03:09  profilanswer
 

tout est clairement expliqué ici : http://www.phpinfo.net/?p=articles&rub=listes


---------------
...oups kernel error...
n°172659
IvanleFou
Posté le 08-07-2002 à 01:32:34  profilanswer
 

Bon voici mon script:
 

Code :
  1. <?
  2. switch($action)
  3. {
  4. case "add";
  5. echo $proc;
  6. echo $type_proc;
  7. exit;
  8. break;
  9. default;
  10. ?>
  11. <form name="form_proc" action="essai.php">
  12. <input type="hidden" name="action" value="add">
  13. <p><select name="proc" size="1" onChange="redirect(this.options.selectedIndex)">
  14. <option>a1</option>
  15. <option>a2</option>
  16. </select>
  17. <select name="type_proc" size="1">
  18. <option selected>aa1</option>
  19. <option>aa2</option>
  20. <option>aa3</option>
  21. </select>
  22. <input type="button" name="test" value="Go!" onClick="go()">
  23. </p>
  24. <script>
  25. <!--
  26. var groups=document.form_proc.proc.options.length
  27. var group=new Array(groups)
  28. for (i=0; i<groups; i++)
  29. group[i]=new Array()
  30. group[0][0]=new Option("aa1","aa1" )
  31. group[0][1]=new Option("aa2","aa2" )
  32. group[0][2]=new Option("aa3","aa3" )
  33. group[1][0]=new Option("bb1","bb1" )
  34. group[1][1]=new Option("bb2","bb2" )
  35. var temp=document.form_proc.type_proc
  36. function redirect(x){
  37. for (m=temp.options.length-1;m>0;m--)
  38. temp.options[m]=null
  39. for (i=0;i<group[x].length;i++){
  40. temp.options[i]=new Option(group[x][i].text,group[x][i].value)
  41. }
  42. temp.options[0].selected=true
  43. }
  44. function go(){
  45. //location=temp.options[temp.selectedIndex].value
  46. location='essai.php'
  47. }
  48. //-->
  49. </script>
  50. </form>
  51. <?
  52. break;
  53. }
  54. ?>


 
Qd je click sur le bouton OK j'aimerais que ca aille ds le 'case "add";' et faire afficher les choix fait ds les menus.
Mais ca marche trop pas. C'est quoi ce bordel??? :??:  
Normalement en passant en hidden la valeur 'action=add' il devrait y alle. J'ai fait comme ca dans tout mes autres formulaires et la ca marche pas???
Deplus avec 'echo $proc;' j'obtiens rien. Le formulaire ne passe pas les valeurs.
 
J'y connais rien en JS mais j'ai l'impression que c bien le bordel. C'est pour ca que je voudrais recuperer au plus vite mes valeurs pour repasser ds le PHP.
 
faut que je fasse koi?

mood
Publicité
Posté le 08-07-2002 à 01:32:34  profilanswer
 

n°173117
IvanleFou
Posté le 08-07-2002 à 18:55:51  profilanswer
 

UP!


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

  [Web] Creation d'un formulaire?

 

Sujets relatifs
[php] upload de fichier + envoie de formulairepermissions d'écriture pour la création d'un répertoire
Probleme de chaine de caractere dans un formulaireformulaire : menu en déduisant un autre
[HTML/JS] Contrôle des éléments d'un formulaire[création] Programme de tri automatique de fichiers : AutoMoove
comment recuperer des données d'un formulaire en xml ?[Java] JDBC-ODBC et Creation de DSN
[HTML] Frame comunication entre Frame et formulaire ...[construction de site] formulaire
Plus de sujets relatifs à : [Web] Creation d'un formulaire?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR