beno66 Posté 30 Août 2010 Posté 30 Août 2010 Bonjour, Sa fait quelque jour que je galère alors je demande de l'aide: J'ai créer 2 liste déroulante (Nombre et couleur), je voudrai que le nombre et la couleur s'additionne et marque le résultats dans le champ texte en dessous. Voici ce que j ai creer: <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>Document sans nom</title></head><body><form action="Sanstitre-6.html" method="post" name="form1" target="_blank" id="form1"> <label for="Nombre"></label> <select name="Nombre" id="1"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select></form><p> <label for="couleur"></label> <select name="couleur" id="couleur"> <option value="1">bloc</option> <option value="10">jaune</option> </select></p><form action="" method="post" enctype="multipart/form-data" name="form2" target="_blank" id="form2"> <label for="résultats"></label> <input name="résultats" type="text" id="résultats" readonly="readonly" /></form><p> </p></body></html> Merci d'avance
captain_torche Posté 30 Août 2010 Posté 30 Août 2010 Il va falloir un peu de code PHP pour faire ça. Pourrais-tu poster ce que tu as tenté, même si ça ne fonctionne pas ?
Ernestine Posté 30 Août 2010 Posté 30 Août 2010 Salut, Il y a plein de bizarreries dans ton code : _ En particulier, il faut englober les deux premiers selects et leur label dans un seul formulaire. Là, le deuxième select se balade tout seul en dehors du formulaire. _ Le champ input pour le résultat n'a pas besoin d'être dans un formulaire, puisqu'à priori, ce n'est pas une valeur qui sera soumise. _ Les enctype="multipart/form-data" sont inutiles _ Les target="_blank" encore plus inutiles _ La valeur de l'attribut "for" doit être la même que la valeur de l'attribut "id" du champ auquel il est attaché (et non pas la valeur de son "name") Je t'invite à mettre un peu d'ordre dans tout ça avant de chercher à le faire fonctionner Après, tu as deux solutions, soit tu traites le formulaire côté serveur (par exemple en php), soit tu le traites directement dans la page en javascript. Tout dépend de tes besoins. PS : et je m'interroge sur la signification de "ajouter un nombre et une couleur". PS 2 : et je m'interroge aussi sur la couleur qui s'appelle "bloc" ??
beno66 Posté 30 Août 2010 Auteur Posté 30 Août 2010 Salut, Ernestine: Comme tu pu le voir je suis pas un expert du codage. Voila mon but et de pouvoir additionné la 1er liste déroulante ("Nombre") qui à trois choix ( "1" de valeur 1, "2" de valeur 2 et "3" de valeur 3) à l'autre liste déroulante ("couleur") qui a 2 choix ("bloc" de valeur 1 et "jaune" de valeur 10) Ps: bloc n est pas une couleur c été juste un exemple. Salut, captain_torche Je peu te donner sa en PV. Merci de votre aide
Ernestine Posté 30 Août 2010 Posté 30 Août 2010 Voila mon but et de pouvoir additionné la 1er liste déroulante ("Nombre") qui à trois choix ( "1" de valeur 1, "2" de valeur 2 et "3" de valeur 3) à l'autre liste déroulante ("couleur") qui a 2 choix ("bloc" de valeur 1 et "jaune" de valeur 10) J'avais bien compris, mais c'est surtout sur la pertinence du concept que je m'interrogeais, mais peu importe. En tous cas, ça ne t'empêche pas de faire un gros nettoyage de ton code, comme indiqué dans le précédent message. Sinon, tu n'arriveras à rien de bon. Avant de t'occuper du traitement du formulaire, commence par faire un formulaire propre et correct
beno66 Posté 30 Août 2010 Auteur Posté 30 Août 2010 re, <center>Nombres : <br/><form> <select name="Nombres" size="1"> <option selected> non <option value="1">1 Slots <option value="2">2 Slots <option value="3">3 Slots </select> </form></center> <center>Couleur : <br/><form> <select name="Couleur" size="1"> <option selected> non <option value="1">bloc <option value="10">jaune </select> </form></center> ces mieux?
Ernestine Posté 30 Août 2010 Posté 30 Août 2010 Non Il faut englober les deux premiers champs dans un même formulaire, et il faut refermer les balises option. Ce qui donnerait : <form method="post" action=""> <fieldset> <legend>Mon beau formulaire</legend> <label for="nombres">Nombres : </label> <select id="nombres" name="nombres"> <option value="1">1 Slot</option> <option value="2">2 Slots</option> <option value="3">3 Slots</option> </select> <br /> <label for="couleur">Couleur : </label> <select id="couleur" name="couleur"> <option value="0" selected="selected">Non</option> <option value="1">bloc</option> <option value="10">jaune</option> </select> <br /> <input type="submit" value="Calculer" /> </fieldset></form><div> <label for="resultat">Résultat : </label> <input id="resultat" type="text" readonly="readonly" /></div> Maintenant, on peut vraiment commencer à réfléchir à ton problème. Parce qu'avec ton code du début, je te mets au défi d'en tirer quoi que ce soit, et je ne suis pas étonnée de t'entendre dire : "Sa fait quelque jour que je galère"
beno66 Posté 31 Août 2010 Auteur Posté 31 Août 2010 Ok cool merci Maintenant comment je fait pour afficher le résultats. Merci
Ernestine Posté 31 Août 2010 Posté 31 Août 2010 Tu as deux solutions : soit tu fais le traitement du formulaire côté serveur (disons en php), soit tu le fais côté client (c'est à dire directement dans le navigateur des gens) en javascript. Si c'est pour un simple affichage du résultat ET que ton public est ciblé, tu peux le faire en javascript. Mais si c'est pour un site web "classique", alors c'est beaucoup mieux de le faire côté serveur. La grande question maintenant est donc la suivante : ton serveur peut-il faire du php ? Pour le savoir, insère cette ligne quelque part dans le body de ta page : <?PHP phpinfo(); ?> Et affiche la page dans ton navigateur. Si tu obtiens un grand tableau bleu-violet avec plein d'informations, alors c'est bon, tu as PHP. PS : si tu peux faire ce test directement chez ton hébergeur c'est mieux, car je ne pense pas que tu aies installé php sur ton propre ordinateur.
beno66 Posté 1 Septembre 2010 Auteur Posté 1 Septembre 2010 j'ai bien le php sur mon serveur! sa deviendra un site marchand donc le mieux et de le faire sur mon serveur! Et maintenant je dois recréer une page?
Ernestine Posté 1 Septembre 2010 Posté 1 Septembre 2010 j'ai bien le php sur mon serveur! sa deviendra un site marchand donc le mieux et de le faire sur mon serveur! Et maintenant je dois recréer une page? Si c'est pour un site marchand, il ne s'agit pas de faire du bricolage, or là tu n'as clairement aucune connaissance en php, parce que là il s'agit juste de récupérer deux champs et de faire une addition. On peut te donner le code, mais dès qu'il y aura le moindre problème, tu ne sauras pas comment le résoudre. Je t'invite à lire ces deux articles :/>http://www.webmaster-hub.com/publication/Mon-premier-programme-en-PHP.html/>http://www.webmaster-hub.com/publication/Mon-premier-programme-en-PHP-2e.html Puis faire un essai et le poster ici pour correction si ça ne marche pas. Car on ne peut quand même pas faire la totalité du code à ta place
beno66 Posté 1 Septembre 2010 Auteur Posté 1 Septembre 2010 (modifié) je te remercie de te faire du soucis je veu juste savoir comment on fait pour avancer un peu les soucis je verai quand je les aurai. Ps: Un site marchand est un bien grand mot, sa va être un site pour donner des dons, des trucs comme sa! donc un tout petit truc de rien du tout. Merci déjà pour ton aide. Modifié 1 Septembre 2010 par beno66
beno66 Posté 1 Octobre 2010 Auteur Posté 1 Octobre 2010 Re, C'été pour dire que le sujet été clos vu que j'ai réussi avec mon code à moi tout mal fait du point de vue de Ernestine. Ps: Ernestine c'était pas difficile de m'expliquer qui y avait une fonction calculatrice. Merci quand meme
Ernestine Posté 1 Octobre 2010 Posté 1 Octobre 2010 Mais on ne sait même pas où était ton problème : la récupération des paramètres ? Leur addition ? L'affichage du résultat de cette addition ? A quel endroit cela bloquait-il ? Tu ne montres aucun des tests que tu as fait, tu copies-colles juste un formulaire (bancal, et ce n'est pas une question de point de vue) et tu répètes juste "comment je fais pour afficher le résultat". Enfin bon, ravie d'apprendre que tu as réussi, même si cela t'a pris un mois, et ravie d'apprendre que tu as découvert que PHP permet de réaliser une addition ("fonction calculatrice" est un bien grand mot tout de même pour une addition).
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant