Envoi de données de formulaire
Bonjour à tous :)
Je suis débutant dans les langages du WEB, et suis un étudiant ayant pris une option pour apprendre à créer des site web. Bref,
- je dois rendre un travail dont le but: Transmettre les données d'un formulaire (coté client) à un script PHP ( coté serveur).
- Petite précision, les valeurs du formulaire doivent être traitées par JavaScript
J'ai mon formulaire (créer en HTML), avec ma fonction sortie() qui à récupé les valeurs.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
| function sortie(nom,sexe,commentaires) {
var nom,sexe,commentaires;
var windows,linux,systeme_expl;
var logiciels,msoffice,openoffice,ftpexpert,fillezilla;
//INITIALISATION DES VARIABLES
windows = '';
linux = '';
msoffice = '';
openoffice = '';
ftpexpert = '';
fillezilla = '';
//TRAITEMENT - POUR LES CASES A COCHER WINDOWS ET LINUX
if (document.f1.os1.checked == true && document.f1.os2.checked == true){
systeme_expl = 'Utilise les 2 systèmes, Windows et Linux, en dual Boot je suppose ! !';
}
else if (document.f1.os1.checked == true && document.f1.os2.checked == false){
windows = 'Utilise Windows';
systeme_expl = windows + linux ;
}
else if (document.f1.os1.checked == false && document.f1.os2.checked == true){
linux = 'Utilise Linux';
systeme_expl = windows + linux ;
}
else if (document.f1.os1.checked == false && document.f1.os2.checked == false){
systeme_expl = 'Utilise aucuns des 2 systèmes...Avez-vous un MAC ??!!' ;
}
//TRAITEMENT - POUR LE MENU DEROULANT LOGICIEL
if(document.forms[0].logs.options[0].selected == true){
msoffice = 'Utilise MS Office';
}
if(document.forms[0].logs.options[1].selected == true){
openoffice = 'Utilise Open Office';
}
if(document.forms[0].logs.options[2].selected == true){
ftpexpert = 'Utilise FT Expert';
}
if(document.forms[0].logs.options[3].selected == true){
fillezilla = 'Utilise Fillezilla';
}
logiciels = msoffice + openoffice + ftpexpert + fillezilla;
//ENVOIS DES VARIABLES VERS PAGE PHP
windows.open('resultat.php');
return false;
} |
Je ne sais pas si tout est juste, mais en faisant des alertes de chaque variables (donc au final j'en ai 5 , nom, sexe, systeme_expl, logiciels, commentaires), cela s'affiche normalement.
- Je dois les envoyées sur une autre page 'resultat.php', donc dans mon formulaire j'ai mis : (NB : je dois obligatoirement utiliser method POST)
Code:
<form name="f1" method=post onSubmit="return(sortie(f1.nom.value,f1.sexe.value,f1.commentaires.value))" action="resultat.php">
- Ma page 'resultat.php' est comme ceci :
Code:
1 2 3 4 5 6 7
| <?php
echo $_POST['nom'];
echo $_POST['sexe'];
echo $_POST['systme_expl'];
echo $_POST['logiciels'];
echo $_POST['commentaires'];
?> |
- PROBLEME : les varibles 'nom' 'sexe' 'commantaires' s'affichent correctement, mais PAS 'systeme_expl' et 'logiciels' soient les 2 variables avec lesquelles j'ai fait des opérations (parce que checkbok, et <select> à choix multiple).
- Pour ces variables, j'ai le droit à
Code:
1 2 3
| Notice: Undefined index: systme_expl in C:\wamp\www\resultat.php on line 4
Notice: Undefined index: logiciels in C:\wamp\www\resultat.php on line 5 |
=================================================
J'ai essayé des solutions genre :
Code:
1 2 3 4 5
| // Avant d'utiliser $_POST['truc']
if (isset($_POST['truc']))
{
// Instructions si $_POST['truc'] existe
} |
Mais rien n'y fais, quand je fais ca par exemple, rien ne s'affiche.
==============================================
Je vous demande donc de me donner un petit coup de pouce pour un débutant comme moi et vous souhaite à tous une très bonne journée :):)
Merci, cordialement.