IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Formulaire soucis de redirection avec POST


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2007
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 62
    Points : 26
    Points
    26
    Par défaut Formulaire soucis de redirection avec POST
    Bonjour à tous,

    J'ai un formulaire de déclaration d'incident pour ma boite que j'ai fais avec frontpage tout simplement qui via la méthode POST fait appel à une page php de vérification des champs en php et d'envoi de mail.

    Tout est visible ici !!!
    http://www.baudlocminehb.info/www/

    J'ai aussi une feuille de style CSS que j'ai fait pour que ça ressemble à quelque chose et depuis que je l'ai intégrée, ça fonctionne bizarrement.

    Je m'explique, avant lorsque je validait mon formulaire, la page de confirmation était affichée sur la même page, alors que maintenant, elle s'affiche sur une autre page... et cela depuis la mise en place de mon CSS...

    Je ne voit pas d'où cela peut venir...

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Bonjour,

    Sans code, impossible de deviner ce qui se passe.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Février 2007
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 62
    Points : 26
    Points
    26
    Par défaut
    voici mes 2 fichiers en pièces jointe...
    Fichiers attachés Fichiers attachés

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Bonjour,

    Je l'ai testé, avec ou sans css, le formulaire se déroule comme il est censé se dérouler, c'est-à-dire qu'il transmet les données à la page suivante, qui affiche la confirmation ou les erreurs.
    Tu es sûr qu'il restait bien sur la même page avant ? Je ne vois pas comment c'est possible !

  5. #5
    Nouveau membre du Club
    Inscrit en
    Février 2007
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 62
    Points : 26
    Points
    26
    Par défaut
    oui persuadé et même sous IE, ça le fait tout se fait sur la même page...
    (ce qui m'arrange car la majeure partie des collaborateurs l'utilisent) mais pour le reste.... c'est étrange ça quand même !

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Hum.
    Ça me semble impossible avec ce code, mais bon.
    Le moyen de le faire est de rediriger le formulaire vers le fichier Logiciels_Bureautiques.php, et d'inclure tout le php de Nadform_Logiciels_Bureautiques.php dans Logiciels_Bureautiques.php.
    C'est-à dire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
     
     
    <?php
    if(isset($Nom_Prenom)) {
     
    	if( ! isset( $MailBody ) ) $MailBody = "";
     
    		$MailTo = "psuper@ansamble.fr"; //adresse à laquelle sera envoyé le contenu du formulaire
     
    		$MailSubject = "Demande Logiciel Bureautique $Logiciel - $Nom_Prenom - $Section_Analytique"; //texte qui va figurer dans le champ "sujet" du email
     
    		$MailHeader = "MIME-Version: 1.0\n";
    		$MailHeader .= "Content-type: text/html; charset=iso-8859-1\n";
    		$MailHeader .= "From:$Nom_Prenom <$Email>"; //adresse email qui va figurer dans le champ "expéditeur" du email et qui peut être remplacé par la variable "$champx" ("$champ3").
     
    		$MailBody = "<font face=\"Trebuchet MS\" size=\"2\">\n";
     
    		$min_size="3"; // Longueur minimum du message
    		$max_size="5000"; //Longueur maximum du message
     
    		/* Les routines suivantes permettent à chacune des variables de prendre la valeur des champs du formulaire et de les stocker ensuite dans la variable globale MailBody qui constituera le corps du message */
     
    		$Envoi = 1; //initialisation de la variable envoi à 1
     
    		/* Pour enlever une condition de vérification de champ (vide ou non), enlever, par exemple au champ 1 :
    		* 
    		if ($champ1 == ""){ //nom du champ1
    		echo("Vous n'avez pas complété le champ 1.<br>"); //message qui s'affiche si le visiteur n'a pas rempli ce champ
    		$Envoi = 0; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
    		}
    		else {
    		}
    		
    		et ne laisser que :
    		
    		$MailBody .= "Question 1 : $champ1\n";
    		
    		*/ 
    		//
    		if ($Nom_Prenom == ""){ //nom du champ1
    		echo("Vous n'avez saisi votre Nom Prénom.<br>"); //message qui s'affiche si le visiteur n'a pas rempli ce champ
    		$Envoi = 0; //si le champ1 n'a pas été rempli, la variable envoi prend la valeur de 0
    		}
    		else {
    		$MailBody .= "<b>Emetteur de la demande :</b> $Nom_Prenom\n<br>"; //si le champ1 contient de l'information, elle est stockée dans la variable MailBody
    		}
    		if ($Section_Analytique == ""){
    		echo("Vous n'avez saisi votre section analytique/Site.<br>");
    		$Envoi = 0;
    		}
    		else {
    		$MailBody .= "<b>Site :</b> $Section_Analytique\n<br>";
    		}
    		if ($Telephone == ""){
    		echo("Vous n'avez pas saisi votre Téléphone<br>");
    		$Envoi = 0;
    		}
    		else {
    		$MailBody .= "<b>Téléphone :</b> $Telephone\n<br>";
    		}
    		if ($Logiciel == "Sélectionnez le logiciel"){
    		echo("Vous n'avez pas choisi le logiciel<br>");
    		$Envoi = 0;
    		}
    		else {
    		$MailBody .= "<b>Logiciel :</b> $Logiciel\n<br>";
    		}
    		$MailBody .= "<b>Détail de la demande :</b> $Detail_Demande\n<br>";
    		$MailBody .= "</font>\n";
    		if ($Envoi == 0) { //vérification que la variable envoi est bien à 1
    		echo("<p><a href=\"Javascript:history.go(-1)\"><center><strong>RETOUR</strong></center></a></p>");
    		//Pas d'envoi du message et retour au formulaire
    		}
     
    		//Envoi du message
    		if ($Envoi == 1) { //vérification que la variable envoi est bien à 1
    		echo("<font face=\"Trebuchet MS\" size=\"2\">\n");
    		echo("<p><b>Votre Nom Prénom : </b><font color=\"#0000FF\">$Nom_Prenom</font>");
    		echo("<br><b>Votre Site :</b> <font color=\"#0000FF\">$Section_Analytique</font>\n");
    		echo("<br><b>Votre Numéro de Téléphone :</b> <font color=\"#0000FF\">$Telephone</font>\n");
    		echo("<br><b>Vous avez choisi le logiciel :</b> <font color=\"#0000FF\">$Logiciel</font>\n");
    		echo("<br><b>Vos commentaires :</b> <font color=\"#0000FF\">$Detail_Demande</font></p>\n");
    		mail($MailTo, $MailSubject, $MailBody, $MailHeader); //envoi du message
    		echo("<p>Votre message a bien été envoyé a la Hotline Support qui vous tiendra informé.<br>Merci de votre collaboration.<br><br>"); 
    		echo("<p><a href=\"../../../index.php\"><center><strong>RETOUR</strong></center></a></font>"); //affichage d'un message de confirmation.
    		}
    	}
     
    else {
    	?>
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
    <HTML lang=fr xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml">
     
    <head>
     
    <title>Formulaire de déclaration d'incident</title>
      <link rel="stylesheet" href="../../../style.css">
    </head>
     
    <body>
     
     
    <div  id="banniere"></div>
    <?php include("../../menu-vertical.htm"); ?>
    <div id=main>
    <b>
    <font face="Trebuchet MS" size="4">Demande logiciel bureautique</font></b><font face="Trebuchet MS" size="2"><br>
    <br>
    <b>Vous avez un souci sur un logiciel bureautique : Excel, Word, Outlook...<br>
    Merci de remplir correctement ces champs pour que la &nbsp;Hotline Support puisse 
    vous répondre.</b></font><b></b></b><p>&nbsp;</p>
    <p>&nbsp;</p>
    </p>
     
    <font face="Trebuchet MS" size="2">
     
    <form method="POST" action="Logiciels_Bureautiques.php" name="AVIS">
    <p>Nom Prénom :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    </font>
     
    <font face="Verdana" size="2">
     
    <input type="text" name="Nom_Prenom" size="40"></font><font face="Trebuchet MS" size="2">
     
    <br>
    <br>
    Section Analytique ou Nom Agence/Siège :
    </font><font face="Trebuchet MS" size="2">
    <input type="text" name="Section_Analytique" size="40"><br>
    <br>
    Numéro de téléphone 
    </font><font face="Trebuchet MS" size="1">&nbsp;(sans espace) </font>
    <font face="Trebuchet MS" size="2">
    :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font face="Verdana"><input type="text" name="Telephone" size="20" maxlength="10"></font><font face="Trebuchet MS" size="2"><br>
    <b><font color="#FF0000"><br>
    </font></b>Précisez quel logiciel (Excel, Word...) :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <select size="1" name="Logiciel">
    <option selected>Sélectionnez le logiciel</option>
    <option>Acrobat Reader (PDF)</option>
    <option>Internet Explorer</option>
    <option>Outlook</option>
    <option>Excel</option>
    <option>Word</option>
    <option>PowerPoint</option>
    <option>Visio</option>
    <option>PC Anywhere</option>
    <option>Open Office</option>
    <option>Winzip</option>
    </select><br>
    <br>
    Détaillez votre demande :<br>
    </font>
    <font face="Verdana"><font face="Trebuchet MS">
    <textarea rows="4" name="Detail_Demande" cols="70"></textarea></font><font size="2" face="Trebuchet MS"><br>
    <br>
    </font>
    <font face="Trebuchet MS">
    <input type="submit" value="Envoyer" name="envoyer"></font><font size="2" face="Trebuchet MS">&nbsp;&nbsp;&nbsp;
    </font>
    <font face="Trebuchet MS">
    <input type="reset" value="Annuler" name="Annuler"></font></font></p>
    <font face="Trebuchet MS">
    </font>
    </form>
    </div>
    </body>
     
    </html>
    <?php
    	}
    ?>
    Il y a d'autres choses à voir concernant la sécurité de ce code, mais bon, tu sais ce que tu fais ...

  7. #7
    Nouveau membre du Club
    Inscrit en
    Février 2007
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 62
    Points : 26
    Points
    26
    Par défaut
    ok merci...

    Sinon pour la sécu c'est pas grave, ça sera revu apres, la c'est juste la période de test qui va être lancée...

Discussions similaires

  1. Formulaire accordeon et traitement avec POST
    Par kate59 dans le forum jQuery
    Réponses: 0
    Dernier message: 17/08/2012, 13h09
  2. [MySQL] souci de redirection avec header
    Par mioke dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 21/05/2008, 15h39
  3. Plusieurs formulaires dans un fichier avec plusieurs méthodes post
    Par cyberdevelopment dans le forum Langage
    Réponses: 2
    Dernier message: 17/08/2006, 15h04
  4. Redirection avec des paramètres en POST
    Par Kosti dans le forum Langage
    Réponses: 8
    Dernier message: 16/02/2006, 16h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo