Vérifier champs rempli formulaire php

Fermé
céline243 Messages postés 4 Date d'inscription jeudi 30 décembre 2010 Statut Membre Dernière intervention 11 janvier 2011 - 10 janv. 2011 à 21:44
céline243 Messages postés 4 Date d'inscription jeudi 30 décembre 2010 Statut Membre Dernière intervention 11 janvier 2011 - 11 janv. 2011 à 17:37
Bonjour,

je n'arrive pas à conserver les données saisies par l'internaute lorsqu'il complète le formulaire de contact mais qu'il oublie des champs obligatoires.
Pourriez-vous m'aider à résoudre le problème.
Je ne connais pas le langage php. C'est un ami qui a commencé à faire ces deux fichiers mais les données s'effacent systématiquement dès que l'internaute appuie sur le bouton "envoyer". on n'arrive pas à résoudre le problème
Merci pour votre aide.
C'est un site que j'ai fait pour un établissement et j'ai besoin de le terminer rapidement pour qu'ils le mettent à jour.


1er fichier : nouscontacter.php

<?php require_once('processformulaire.php');?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Formulaire</title>

<script>
function effacer_radio(){ radio1.checked=false;
radio2.checked=false;
radio3.checked=false;
radio4.checked=false;
radio5.checked=false;
radio6.checked=false;
}
</script>
<style type="text/css">
.rouge {
color: #F00;
}
.rouge {
color: #F00;
}
.rouge {
color: #F00;
}
.rouge {
color: #F00;
}
</style>
</head>

<BODY>
<H2 align=center><FONT size=5><IMG height=36 src="../clipart/courrierenveloppe.jpg" width=36>VOS
IMPRESSIONS... <BR>
<BR>
J<FONT size=4>e vous remercie pour votre participation.</FONT><BR>
<FONT
size=3>Les mentions précédées d'un (*)sont obligatoires<BR>
N'HESITEZ PAS A NOUS CONTACTER POUR DAVANTAGE DE RENSEIGNEMENTS.<br>
NOUS REPONDRONS A VOS DEMANDES DANS LES MEILLEURS DELAIS.</FONT></FONT></H2>



<?php if($_GET["error"]=="donnees"){?>

<p align="center"><FONT size=4> <span class="rouge">Vous n'avez pas rempli toutes les données obligatoires</span></FONT></p>
<span class="rouge">
</div>
</span>
<div align="center">
<?php }?>

<?php if($_GET["error"]=="ko"){?>

</div>
<p align="center" class="rouge">Votre mail n'a pas pu être envoyé. Veuillez réessayer plus tard</p>
</div>
<?php }?>







<form method="post" action="nouscontacter.php">
<table>
<tr>
<td colspan="2">
<input type="hidden" name="formulaire" value="envoi">
<input type="hidden" name="sujet" value="Formulaire des Pages Perso">
<input type="hidden" name="email" value="pageremerciements.htm">
</td>

<TABLE width=650 align=center border=1>
<TBODY>
<TR vAlign=center>
<TD width="11%" >*Nom</TD>
<TD width="40%"> <INPUT maxLength=20 size=34 name="nom" value="<?php echo $_POST ["nom"]?>"/> </TD>
<TD width="12%" height=26>Téléphone </TD>
<TD width="40%"> <INPUT maxLength=20 size=34 name="telephone" value="<?php echo $_POST["telephone"]?>"/> </TD>
</TR>
<TR vAlign=center>
<TD width="11%">*Prénom </TD>
<TD width="40%"> <INPUT maxLength=20 size=34 name="prenom"value="<?php echo $_POST["prenom"]?>"/> </TD>
<TD height=26>Fax </TD>
<TD width="40%"> <INPUT size=34 name="fax" value="<?php echo $_POST["fax"]?>
"/> </TD>
</TR>
<TR vAlign=center>
<TD width="11%">Société </TD>
<TD width="40%"> <INPUT size=34 name="societe"value="<?php echo $_POST["societe"]?>"/> </TD>
<TD height=26>E-mail</TD>
<TD width="40%"> <INPUT size=50 name="courriel" value="<?php echo $_POST["courriel"]?>"/> </TD>
</TR>
<TR vAlign=center>
<TD width="11%">Fonction </TD>
<TD width="40%"> <INPUT size=34 name="fonction" value="<?php echo $_POST["fonction"]?>"/> </TD>
<TD height=25> </TD>
<TD width="40%"> </TD>
</TR>
<TR vAlign=center>
<TD >*Adresse </TD>
<TD colSpan=3 height=28> <INPUT maxLength=90 size=90 name="adresse" value="<?php echo $_POST["adresse"]?>"/>
</TD>
</TR>
<TR>
<TD height="28" colspan="4">
<table width="750" border="0" cellspacing="5" cellpadding="5">
<tr>

<td colspan="3"><font size="+1">Comment avez-vous connu l'adresse
du site? </font></td>
</tr>
<tr>

<td width="229">
<input type="radio" name="par affichage" value="radiobutton" id="radio1">
par voie d'affichage</td>

<td width="136">
<input type="radio" name="par des amis" value="radiobutton" id="radio2">
par des amis </td>

<td width="332">
<input type="radio" name="par les forums" value="radiobutton" id="radio3">
par les forums </td>
</tr>
<tr>

<td width="229">
<input type="radio" name="par moteur de recherche" value="radiobutton" id="radio4">
par un moteur de recherche</td>

<td width="136">
<input type="radio" name="par la presse" value="radiobutton" id="radio5">
par la presse</td>

<td width="332">
<input type="radio" name="par autre" value="radiobutton" id="radio6">
autre :
<input name="textfield" type="text" size="45"></td>
</tr>
</table>

</TD>
</TR>
<TR>
<TD> </TD>
<TD colSpan=3 height=28> <P>Message : </P>
<P>
<TEXTAREA name="le_message" cols=60></TEXTAREA>
</P>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="Envoyer">
<input type="reset" value="Effacer" onclick="effacer_radio()">
</td>
</tr>
</table>

</form>

</P>
<P></P></TD>
</TR>
</TBODY>
</TABLE>
</DIV>
<DIV align=center>
<TABLE cellSpacing=0 width=650 border=0>
<TBODY>
<TR>
<TD height=40>
<DIV align=center><B><A
href="index1.htm"
target=_parent>[ACCUEIL]</A></B></DIV>
</TD></TR></TBODY></TABLE></DIV>
<P></P></BODY>
</html>

2ème fichier : processformulaire.php

<?php
if($_POST){
require("../client/php/phpmailer/class.phpmailer.php");
$mail = new PHPMailer();

if($_POST[formulaire] == "envoi"){
if(empty($_POST['prenom']) OR empty($_POST["nom"]) OR empty($_POST["adresse"])){
$error = "donnees";
header("location: nouscontacter.php?error=".$error);
}

}

if (!$error){


$br="<br>";
$sujet = "Formulaire";
$para = "adressemail";
$nom = $_POST["nom"];
$telephone = $_POST["telephone"];
$prenom = $_POST["prenom"];
$fax = $_POST["fax"];
$societe = $_POST["societe"];
$courriel = $_POST["courriel"];
$fonction = $_POST["fonction"];
$adresse = $_POST["adresse"];
$lemessage = $_POST["le_message"];
$from = "Formulaire: ".$nom." ".$prenom;
$message.= "<b> Nom</b>: ".$nom.$br;
$message.= "<b> Prénom</b>: ".$prenom.$br;
$message.= "<b> Téléphone</b>: ".$telephone.$br;
$message.= "<b> Fax</b>: ".$fax.$br;
$message.= "<b> Société</b>: ".$societe.$br;
$message.= "<b> Courriel</b>: ".$courriel.$br;
$message.= "<b> Fonction</b>: ".$fonction.$br;
$message.= "<b> Adresse</b>: ".$adresse.$br;
$message.= "<b> Message</b>: ".$lemessage.$br;


$mail->SetLanguage(fr,"phpmailer/language/");
$mail->CharSet = "utf-8";
$mail->IsHTML(true);
$mail->Subject = $sujet;
$mail->FromName = $from;
$mail->Mailer= "mail";
$mail->Body = $message;
$mail->AddAddress($para);
$exito = $mail->Send();
$intentos=1;
while ((!$exito) && ($intentos < 5)) {
sleep(2);
$exito = $mail->Send();
$intentos=$intentos+1;
}
if($exito){
header("location:merci.htm");}
else {header("location:".$url2."?error=ko");}
}
}
?>

A voir également:

2 réponses

Tout d'abord je crois comprendre que c'est le deuxieme fichier qui execute ce qui est saisi dans le premier fichier.

Or dans le fichier nouscontacter.php il y a
<form method='post' action='nouscontacter.php' >
Cela veut dire que le fichier nouscontacter.php est appeler lors de la validation

Or si tu veux que le deuxieme fichier envoie le mail et traite des informations saisi alors remplace cette ligne par :
<form method='post' action='processformulaire.php' >

Voila et dit nous ce qu'il en est.
0
céline243 Messages postés 4 Date d'inscription jeudi 30 décembre 2010 Statut Membre Dernière intervention 11 janvier 2011
Modifié par céline243 le 12/01/2011 à 16:54
bonjour,

j'ai modifié le lien : à la place de nouscontacter.php j'ai mis processformulaire.php
mais pour l'instant rien n'a changé.
je souhaite que les informations complétées par l'internaute restent pour qu'il n'ait plus que les données manquantes à compléter
0