Formulaire de contact

Sophie_26 Messages postés 228 Date d'inscription   Statut Membre Dernière intervention   -  
Sophie_26 Messages postés 228 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ai fait pour mon site un formulaire de contact à l'aide d'un site que j'ai trouvé dans les archives de Comment ça marche (radservebeer.free.fr).

Le soucis que j'ai est que, alors que je reçois correctement le message à l'adresse que j'ai indiquée, sur mon site la page de remerciements qui devrait s'afficher ne s'affiche pas, j'ai ceci:

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/web/clients/mllesophiechl26.hostarea.org/www/pagecontact.html:18) in /home/web/clients/mllesophiechl26.hostarea.org/www/pagecontact.html on line 49

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/web/clients/mllesophiechl26.hostarea.org/www/pagecontact.html:18) in /home/web/clients/mllesophiechl26.hostarea.org/www/pagecontact.html on line 49

Warning: Cannot modify header information - headers already sent by (output started at /home/web/clients/mllesophiechl26.hostarea.org/www/pagecontact.html:18) in /home/web/clients/mllesophiechl26.hostarea.org/www/pagecontact.html on line 108

Je comprend pas ce que cela veux dire. Merci de votre aide.
Configuration: Windows Vista
Firefox 3.0.5

6 réponses

  1. RAD ZONE Messages postés 5362 Statut Contributeur 1 360
     
    SALUT
    quel est le code de ta page de remerciement ?
    0
  2. ThEBiShOp Messages postés 9307 Date d'inscription   Statut Contributeur Dernière intervention   1 606
     
    la fonction session_start(); doit être placée avant tout affichage de texte, ça doit être une des premières choses dans la page, voire la première
    0
  3. RAD ZONE Messages postés 5362 Statut Contributeur 1 360
     
    EXACT POUR fonction session_start(); !!!!

    cette partie la doit etre AVANT TOUT AUTRE CODE SUR LA PAGE ( ne copie pas c est un exemple pas ton code !! )
    <?php
    
    // On vérifie si la fonction ini_set() a été désactivée...
    $desactive = ini_get('disable_functions');
    if (preg_match("/ini_set/i", "$desactive") == 0) {
    // Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs...
    ini_set("error_reporting" , "E_ALL & ~E_NOTICE");
    }
    
    // Vérifier que le formulaire a été envoyé...
    if (isset($_POST['envoi'])) {
    
    
    //On commence une session pour enregistrer les variables du formulaire...
    
    session_start();
    
    $_SESSION['champ1'] = $_POST['champ1'];
    
    // Définir l\'icone apparaissant en cas d\'erreur...
    
    
    // Définir sur 0 pour afficher un petit x de couleur rouge.
    // Définir sur 1 pour afficher l\'image d\'une croix rouge telle que celle utilisée dans l\'assistant
    // Si vous utilisez l\'option 1, l\'image de la croix rouge \'icone.gif\' doit se trouver dans le répertoire \'images\',
    // ce dernier devant se trouver au même niveau que votre formulaire...
    $flag_icone = 0;
    
    // On vérifie si $flag_icone est défini sur 0 ou 1...
    if ($flag_icone == 0) {
    $icone = "<b><font size=\"3\" face=\"Arial, Verdana, Helvetica, sans-serif\" color=\"#CC0000\">x</font></b>";
    } else {
    $icone = "<img src=\"images/icone.gif\"";
    }
    
    // Définir l'indicateur d'erreur sur zéro...
    $flag_erreur = 0;
    // N'envoyer le formulaire que s'il n'y a pas d'erreurs...
    if ($flag_erreur == 0) {					
    
    // Addresse de réception du formulaire
    $email_dest = "ff@ff.gg";
    $sujet = "erer";
    $entetes ="MIME-Version: 1.0 \n";
    	$entetes .="From: trete<retert@jj.h>\n";
    	$entetes .="Return-Path: trete<retert@jj.h>\n";
    	$entetes .="Reply-To: trete<retert@jj.h>\n";
    	$entetes .="Content-Type: text/html; charset=iso-8859-1 \n";
    	$partie_entete = "<html>\n<head>\n<title>Formulaire</title>\n<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>\n</head>\n<body bgcolor=#FFFFFF>\n";
    
    
    //Partie HTML de l'e-mail...
    $partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">aaa = " . $_SESSION['champ1'] . "</font><br>\n";
    					
    
    					// Fin du message HTML
    					$fin = "</body></html>\n\n";
    					
    					$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_listes . $partie_boutons . $partie_cases . $partie_zone_texte . $fin;
    
    
    					// Send the e-mail
    					if (@!mail($email_dest,$sujet,$sortie,$entetes)) {
    					echo("Envoi du formulaire impossible");
    					exit();
    					} else {
    
                        // Rediriger vers la page de remerciement
                        header("Location:rr.html");
                        exit();
                      } // Fin else
    			    } // Fin du if ($flag_erreur == 0) {
    			} // Fin de if POST
    ?>

    0
  4. Sophie_26 Messages postés 228 Date d'inscription   Statut Membre Dernière intervention   7
     
    je viens de refaire ma page juste en copiant le code donné par le site et ça marche pas: (y a vraiment que ça sur ma page maintenant)

    <?php

    // On vérifie si la fonction ini_set() a été désactivée...
    $desactive = ini_get('disable_functions');
    if (preg_match("/ini_set/i", "$desactive") == 0) {
    // Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs...
    ini_set("error_reporting" , "E_ALL & ~E_NOTICE");
    }

    // Vérifier que le formulaire a été envoyé...
    if (isset($_POST['envoi'])) {

    //On commence une session pour enregistrer les variables du formulaire...

    session_start();

    $_SESSION['champ1'] = $_POST['champ1'];
    $_SESSION['champ2'] = $_POST['champ2'];
    $_SESSION['liste1'] = $_POST['liste1'];

    //Enregistrement des zones de texte...
    $_SESSION['zone_texte1'] = $_POST['zone_texte1'];

    // Définir l\'icone apparaissant en cas d\'erreur...

    // Définir sur 0 pour afficher un petit x de couleur rouge.
    // Définir sur 1 pour afficher l\'image d\'une croix rouge telle que celle utilisée dans l\'assistant
    // Si vous utilisez l\'option 1, l\'image de la croix rouge \'icone.gif\' doit se trouver dans le répertoire \'images\',
    // ce dernier devant se trouver au même niveau que votre formulaire...
    $flag_icone = 0;

    // On vérifie si $flag_icone est défini sur 0 ou 1...
    if ($flag_icone == 0) {
    $icone = "<b><font size=\"3\" face=\"Arial, Verdana, Helvetica, sans-serif\" color=\"#CC0000\">x</font></b>";
    } else {
    $icone = "<img src=\"images/icone.gif\"";
    }

    // Définir l'indicateur d'erreur sur zéro...
    $flag_erreur = 0;
    // N'envoyer le formulaire que s'il n'y a pas d'erreurs...
    if ($flag_erreur == 0) {

    // Addresse de réception du formulaire
    $email_dest = "mllesophie-c.l@hotmail.fr";
    $sujet = "contact 100% nature";
    $entetes ="MIME-Version: 1.0 \n";
    $entetes .="From: visiteur 100% nature<mllesophie-c.l@hotmail.fr>\n";
    $entetes .="Return-Path: visiteur 100% nature<mllesophie-c.l@hotmail.fr>\n";
    $entetes .="Reply-To: visiteur 100% nature<mllesophie-c.l@hotmail.fr>\n";
    $entetes .="Content-Type: text/html; charset=iso-8859-1 \n";
    $partie_entete = "<html>\n<head>\n<title>Formulaire</title>\n<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>\n</head>\n<body bgcolor=#FFFFFF>\n";

    //Partie HTML de l'e-mail...
    $partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Votre Nom/Pseudonyme = " . $_SESSION['champ1'] . "</font><br>\n";
    $partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Titre de votre message = " . $_SESSION['champ2'] . "</font><br>\n";
    $partie_listes .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Sujet de votre message = " . $_SESSION['liste1'] . "</font><br>\n";
    $partie_zone_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Votre message = " . $_SESSION['zone_texte1'] . "</font><br>\n";

    // Fin du message HTML
    $fin = "</body></html>\n\n";

    $sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_listes . $partie_boutons . $partie_cases . $partie_zone_texte . $fin;

    // Send the e-mail
    if (@!mail($email_dest,$sujet,$sortie,$entetes)) {
    echo("Envoi du formulaire impossible");
    exit();
    } else {

    // Rediriger vers la page de remerciement
    header("Location:remerciements.html");
    exit();
    } // Fin else
    } // Fin du if ($flag_erreur == 0) {
    } // Fin de if POST
    ?>
    <html>
    <!--
    Assistant de création de formulaires PHP pour les nuls - Version gratuite 1.6
    Auteur : Frédéric Ménard (assistant@f1-fantasy.net)
    Site : http://www.f1-fantasy.net/assistant
    -->
    <head>
    <title>Formulaire</title><script language="JavaScript">

    function verifSelection() {

    if (document.mail_form.champ1.value == "") {
    alert("Vous n\'avez pas mis votre nom/pseudonyme")
    return false
    }

    if (document.mail_form.champ2.value == "") {
    alert("Vous n\'avez pas donné de titre à vore message")
    return false
    }

    if (document.mail_form.liste1.value == "") {
    alert("Vous n\'avez pas choisi de sujet")
    return false
    }

    if (document.mail_form.zone_texte1.value == "") {
    alert("Votre message est vide")
    return false
    }

    } // Fin de la fonction
    </script>
    </head><body><form name="mail_form" method="post" action="<?=$_SERVER['PHP_SELF']?>" onSubmit="return verifSelection()">
    <div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif, Tahoma"><strong>Formulaire
    de contact</strong></font></div><br><table align="center" width="566" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td height="16"><div align="center">
    <font color="#CC0000" size="2" face="Verdana, Arial, Helvetica, sans-serif, Tahoma"><strong><?php
    if ($erreur_champ1) {
    echo(stripslashes($erreur_champ1));
    } else {
    if ($erreur_champ2) {
    echo(stripslashes($erreur_champ2));
    } else {
    if ($erreur_liste1) {
    echo(stripslashes($erreur_liste1));
    } else {
    if ($erreur_texte1) {
    echo(stripslashes($erreur_texte1));
    } else {
    } // Fin du else...
    } // Fin du else...
    } // Fin du else...
    } // Fin du else...
    ?>
    </strong></font>
    </div></td>
    </tr>
    </table>
    <p align="center"></p><table width="566" border="0" align="center"><tr>
    <td width="140"><div align="right"><font face="Verdana" size="2">Votre Nom/Pseudonyme</font></div></td>
    <td align="center" valign="middle" width="30">
    <?php
    if ($erreur_champ1) {
    echo($icone);
    }
    ?>
    </td>
    <td><input name="champ1" type="text" value="<?=stripslashes($_SESSION['champ1']);?>"></td>
    </tr></table><table width="566" border="0" align="center"><tr>
    <td width="140"><div align="right"><font face="Verdana" size="2">Titre de votre message</font></div></td>
    <td align="center" valign="middle" width="30">
    <?php
    if ($erreur_champ2) {
    echo($icone);
    }
    ?>
    </td>
    <td><input name="champ2" type="text" value="<?=stripslashes($_SESSION['champ2']);?>"></td>
    </tr></table><table width="566" border="0" align="center"><tr>
    <td width="140"><div align="right"><font face="Verdana" size="2">Sujet de votre message</font></div></td>
    <td width="30" align="center" valign="middle">
    <?php
    if ($erreur_liste1) {
    echo($icone);
    }
    ?>
    </td>
    <td><select name="liste1" style="width:146"><option value="">Sélectionner...</option>
    <option value="Signaler un bug"<?php
    if ($_SESSION['liste1'] == "Signaler un bug") {
    echo(" selected");
    }
    ?>>Signaler un bug</option>
    <option value="Faire une suggestion"<?php
    if ($_SESSION['liste1'] == "Faire une suggestion") {
    echo(" selected");
    }
    ?>>Faire une suggestion</option>
    <option value="Envoyer des infos"<?php
    if ($_SESSION['liste1'] == "Envoyer des infos") {
    echo(" selected");
    }
    ?>>Envoyer des infos</option>
    <option value="Demander des infos"<?php
    if ($_SESSION['liste1'] == "Demander des infos") {
    echo(" selected");
    }
    ?>>Demander des infos</option>
    <option value="Autre..."<?php
    if ($_SESSION['liste1'] == "Autre...") {
    echo(" selected");
    }
    ?>>Autre...</option>
    </select></td></tr></table><table width="566" border="0" align="center"><tr>
    <td width="140" valign="top"><div align="right"><font face="Verdana" size="2">Votre message</font></div></td>
    <td width="30" align="center" valign="top">
    <?php
    if ($erreur_texte1) {
    echo($icone);
    }
    ?>
    </td>
    <td><textarea name="zone_texte1" cols="45" rows="10"><?=stripslashes($_SESSION['zone_texte1']);?></textarea></td>
    </tr></table><table width="566" border="0" align="center"><tr>
    <td valign="top"><div align="center">
    <input type="reset" name="Reset" value=" Effacer ">

    <input type="submit" name="envoi" value="Envoyer">
    </div></td></tr></table><div align="center"><input name="nbre_fichiers" type="hidden" id="nbre_fichiers" value=""></div></form></body></html>
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. RAD ZONE Messages postés 5362 Statut Contributeur 1 360
     
    je viens de te le refaire !! il fonctionne
    http://radservebeer.free.fr/demorad/formu.php

    voila le code
    <?php
    
    // On vérifie si la fonction ini_set() a été désactivée...
    $desactive = ini_get('disable_functions');
    if (preg_match("/ini_set/i", "$desactive") == 0) {
    // Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs...
    ini_set("error_reporting" , "E_ALL & ~E_NOTICE");
    }
    
    // Vérifier que le formulaire a été envoyé...
    if (isset($_POST['envoi'])) {
    
    
    //On commence une session pour enregistrer les variables du formulaire...
    
    session_start();
    
    $_SESSION['champ1'] = $_POST['champ1'];
    $_SESSION['champ2'] = $_POST['champ2'];
    $_SESSION['liste1'] = $_POST['liste1'];
    
    //Enregistrement des zones de texte...
    $_SESSION['zone_texte1'] = $_POST['zone_texte1'];
    
    // Définir l\'icone apparaissant en cas d\'erreur...
    
    
    // Définir sur 0 pour afficher un petit x de couleur rouge.
    // Définir sur 1 pour afficher l\'image d\'une croix rouge telle que celle utilisée dans l\'assistant
    // Si vous utilisez l\'option 1, l\'image de la croix rouge \'icone.gif\' doit se trouver dans le répertoire \'images\',
    // ce dernier devant se trouver au même niveau que votre formulaire...
    $flag_icone = 0;
    
    // On vérifie si $flag_icone est défini sur 0 ou 1...
    if ($flag_icone == 0) {
    $icone = "<b><font size=\"3\" face=\"Arial, Verdana, Helvetica, sans-serif\" color=\"#CC0000\">x</font></b>";
    } else {
    $icone = "<img src=\"images/icone.gif\"";
    }
    
    // Définir l'indicateur d'erreur sur zéro...
    $flag_erreur = 0;
    // N'envoyer le formulaire que s'il n'y a pas d'erreurs...
    if ($flag_erreur == 0) {					
    
    // Addresse de réception du formulaire
    $email_dest = "mllesophie-c.l@hotmail.fr";
    $sujet = "visiteur 100% nature";
    $entetes ="MIME-Version: 1.0 \n";
    	$entetes .="From: contact 100% nature<mllesophie-c.l@hotmail.fr>\n";
    	$entetes .="Return-Path: contact 100% nature<mllesophie-c.l@hotmail.fr>\n";
    	$entetes .="Reply-To: contact 100% nature<mllesophie-c.l@hotmail.fr>\n";
    	$entetes .="Content-Type: text/html; charset=iso-8859-1 \n";
    	$partie_entete = "<html>\n<head>\n<title>Formulaire</title>\n<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>\n</head>\n<body bgcolor=#FFFFFF>\n";
    
    
    //Partie HTML de l'e-mail...
    $partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Votre Nom/Pseudonyme  = " . $_SESSION['champ1'] . "</font><br>\n";
    $partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Titre de votre message = " . $_SESSION['champ2'] . "</font><br>\n";
    $partie_listes .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Sujet de votre message = " . $_SESSION['liste1'] . "</font><br>\n";
    $partie_zone_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Votre message = " . $_SESSION['zone_texte1'] . "</font><br>\n";
    					
    
    					// Fin du message HTML
    					$fin = "</body></html>\n\n";
    					
    					$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_listes . $partie_boutons . $partie_cases . $partie_zone_texte . $fin;
    
    
    					// Send the e-mail
    					if (@!mail($email_dest,$sujet,$sortie,$entetes)) {
    					echo("Envoi du formulaire impossible");
    					exit();
    					} else {
    
                        // Rediriger vers la page de remerciement
                        header("Location:remerciements.html");
                        exit();
                      } // Fin else
    			    } // Fin du if ($flag_erreur == 0) {
    			} // Fin de if POST
    ?>
    <html>
    <!-- 
    Assistant de création de formulaires PHP pour les nuls - Version gratuite 1.6
    Auteur : Frédéric Ménard (assistant@f1-fantasy.net)
    Site : http://www.f1-fantasy.net/assistant
     -->
    <head>
    <title>Formulaire</title><script language="JavaScript">
    
    
    function verifSelection() {
    
    
    if (document.mail_form.champ1.value == "") {
    alert("Vous n\'avez pas mis votre nom/pseudonyme")
    return false
    } 
    
    if (document.mail_form.champ2.value == "") {
    alert("Vous n\'avez pas donné de titre à vore message")
    return false
    } 
    
    if (document.mail_form.liste1.value == "") {
    alert("Vous n\'avez pas choisi de sujet")
    return false
    } 
    
    if (document.mail_form.zone_texte1.value == "") {
    alert("Votre message est vide")
    return false
    } 
    
    } // Fin de la fonction
    </script>
    </head><body><form name="mail_form" method="post" action="<?=$_SERVER['PHP_SELF']?>" onSubmit="return verifSelection()">
      <div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif, Tahoma"><strong>Formulaire
        de contact</strong></font></div><br><table align="center" width="566" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <td height="16"><div align="center">
      <font color="#CC0000" size="2" face="Verdana, Arial, Helvetica, sans-serif, Tahoma"><strong><?php
    if ($erreur_champ1) {
    	  echo(stripslashes($erreur_champ1));
    	  } else {
    if ($erreur_champ2) {
    	  echo(stripslashes($erreur_champ2));
    	  } else {
    if ($erreur_liste1) {
    	  echo(stripslashes($erreur_liste1));
    	  } else {
    if ($erreur_texte1) {
    	  echo(stripslashes($erreur_texte1));
    	  } else {
    } // Fin du else...
    } // Fin du else...
    } // Fin du else...
    } // Fin du else...
    ?>
        </strong></font>
        </div></td>
          </tr>
        </table>
    <p align="center"></p><table width="566" border="0" align="center"><tr>
          <td width="140"><div align="right"><font face="Verdana" size="2">Votre Nom/Pseudonyme </font></div></td>
    	  <td align="center" valign="middle" width="30">
          <?php
    	  if ($erreur_champ1) {
    	  echo($icone);
    	  }
    	  ?>
          </td>
          <td><input name="champ1" type="text" value="<?=stripslashes($_SESSION['champ1']);?>"></td>
        </tr></table><table width="566" border="0" align="center"><tr>
          <td width="140"><div align="right"><font face="Verdana" size="2">Titre de votre message</font></div></td>
    	  <td align="center" valign="middle" width="30">
          <?php
    	  if ($erreur_champ2) {
    	  echo($icone);
    	  }
    	  ?>
          </td>
          <td><input name="champ2" type="text" value="<?=stripslashes($_SESSION['champ2']);?>"></td>
        </tr></table><table width="566" border="0" align="center"><tr>
          <td width="140"><div align="right"><font face="Verdana" size="2">Sujet de votre message</font></div></td>
          <td width="30" align="center" valign="middle">
    	  <?php
    	  if ($erreur_liste1) {
    	  echo($icone);
    	  }
    	  ?>
    	  </td>
          <td><select name="liste1" style="width:146"><option value="">Selectionner...</option>
    <option value="Signaler un bug"<?php
    if ($_SESSION['liste1'] == "Signaler un bug") {
    echo(" selected");
    }
    ?>>Signaler un bug</option>
    <option value="Faire une suggestion"<?php
    if ($_SESSION['liste1'] == "Faire une suggestion") {
    echo(" selected");
    }
    ?>>Faire une suggestion</option>
    <option value="Envoyer des infos"<?php
    if ($_SESSION['liste1'] == "Envoyer des infos") {
    echo(" selected");
    }
    ?>>Envoyer des infos</option>
    <option value="Demander des infos"<?php
    if ($_SESSION['liste1'] == "Demander des infos") {
    echo(" selected");
    }
    ?>>Demander des infos</option>
    <option value="Autre..."<?php
    if ($_SESSION['liste1'] == "Autre...") {
    echo(" selected");
    }
    ?>>Autre...</option>
    </select></td></tr></table><table width="566" border="0" align="center"><tr>
          <td width="140" valign="top"><div align="right"><font face="Verdana" size="2">Votre message</font></div></td>
          <td width="30" align="center" valign="top">
    	  <?php
    	  if ($erreur_texte1) {
    	  echo($icone);
    	  }
    	  ?>
    	  </td>
          <td><textarea name="zone_texte1" cols="45" rows="10"><?=stripslashes($_SESSION['zone_texte1']);?></textarea></td>
        </tr></table><table width="566" border="0" align="center"><tr>
    <td valign="top"><div align="center"> 
              <input type="reset" name="Reset" value=" Effacer ">
                
              <input type="submit" name="envoi" value="Envoyer">
            </div></td></tr></table><div align="center"><input name="nbre_fichiers" type="hidden" id="nbre_fichiers" value=""></div></form></body></html>
    0
  7. Sophie_26 Messages postés 228 Date d'inscription   Statut Membre Dernière intervention   7
     
    merci beaucoup
    0