Erreur sur page contact php
Résolu
Bonjour
J'ai utilisé le gestionnaire de contacts Ge-Net,
mais, après l'avoir installé, il me laisse sur la page du site une erreur "Deprecated: Function ereg() is deprecated in /htdocs/public/www/Pages/contact.php on line 44".
J'ai vérifié sur le site en question, et j'ai même re-créé un nouveau gestionnaire, mais les codes sont corrects...
J'ai laissé un message à Ge-Net, mais n'ayant pas de réponse, je m'en remets à vos connaissance.
Le site en question est Fil-etoffe, et la page "contact".
Voila le code de la partie php :
<?php
// Couleur du texte des champs si erreur saisie utilisateur
$color_font_warn="#FF0000";
// Couleur de fond des champs si erreur saisie utilisateur
$color_form_warn="#FFCC66";
// Ne rien modifier ci-dessous si vous n'êtes pas certain de ce que vous faites !
if(isset($_POST['submit'])){
$erreur="";
// Nettoyage des entrées
while(list($var,$val)=each($_POST)){
if(!is_array($val)){
$$var=strip_tags($val);
}else{
while(list($arvar,$arval)=each($val)){
$$var[$arvar]=strip_tags($arval);
}
}
}
// Formatage des entrées
$f_1=strip_tags(trim($f_1));
$f_2=strip_tags(trim($f_2));
$f_3=strip_tags(trim($f_3));
$f_4=strip_tags(trim($f_4));
// Verification des champs
if(strlen($f_1)<2){
$erreur.="<li><span class='txterror'>Le champ « Nom, Prénom » est vide ou incomplet.</span>";
$errf_1=1;
}
if(strlen($f_2)<2){
$erreur.="<li><span class='txterror'>Le champ « Code Postal, Ville » est vide ou incomplet.</span>";
$errf_2=1;
}
if(strlen($f_4)<2){
$erreur.="<li><span class='txterror'>Le champ « E-mail » est vide ou incomplet.</span>";
$errf_4=1;
}else{
if(!ereg('^[-!#$%&\'*+\./0-9=?A-Z^_'a-z{|}~]+'.
'@'.
'[-!#$%&\'*+\/0-9=?A-Z^_'a-z{|}~]+\.'.
'[-!#$%&\'*+\./0-9=?A-Z^_'a-z{|}~]+$',
$f_4)){
$erreur.="<li><span class='txterror'>La syntaxe de votre adresse e-mail n'est pas correcte.</span>";
$errf_4=1;
}
}
if(strlen($f_5)<2){
$erreur.="<li><span class='txterror'>Le champ « Votre demande » est vide ou incomplet.</span>";
$errf_5=1;
}
if($erreur==""){
// Création du message
$titre="Message de votre site";
$tete="From:Site@Fil-etoffe.fr\n";
$corps.="Nom, Prénom : ".$f_1."\n";
$corps.="Code Postal, Ville : ".$f_2."\n";
$corps.="Téléphone : ".$f_3."\n";
$corps.="Votre E-mail : ".$f_4."\n";
$corps.="Votre demande : ".$f_5."\n";
if(mail("StellaB@fil-etoffe.fr", $titre, stripslashes($corps), $tete)){
$ok_mail="true";
}else{
$erreur.="<li><span class='txterror'>Une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
}
}
}
?>
Merci de m'aider à résoudre ce petit souci.
J'ai utilisé le gestionnaire de contacts Ge-Net,
mais, après l'avoir installé, il me laisse sur la page du site une erreur "Deprecated: Function ereg() is deprecated in /htdocs/public/www/Pages/contact.php on line 44".
J'ai vérifié sur le site en question, et j'ai même re-créé un nouveau gestionnaire, mais les codes sont corrects...
J'ai laissé un message à Ge-Net, mais n'ayant pas de réponse, je m'en remets à vos connaissance.
Le site en question est Fil-etoffe, et la page "contact".
Voila le code de la partie php :
<?php
// Couleur du texte des champs si erreur saisie utilisateur
$color_font_warn="#FF0000";
// Couleur de fond des champs si erreur saisie utilisateur
$color_form_warn="#FFCC66";
// Ne rien modifier ci-dessous si vous n'êtes pas certain de ce que vous faites !
if(isset($_POST['submit'])){
$erreur="";
// Nettoyage des entrées
while(list($var,$val)=each($_POST)){
if(!is_array($val)){
$$var=strip_tags($val);
}else{
while(list($arvar,$arval)=each($val)){
$$var[$arvar]=strip_tags($arval);
}
}
}
// Formatage des entrées
$f_1=strip_tags(trim($f_1));
$f_2=strip_tags(trim($f_2));
$f_3=strip_tags(trim($f_3));
$f_4=strip_tags(trim($f_4));
// Verification des champs
if(strlen($f_1)<2){
$erreur.="<li><span class='txterror'>Le champ « Nom, Prénom » est vide ou incomplet.</span>";
$errf_1=1;
}
if(strlen($f_2)<2){
$erreur.="<li><span class='txterror'>Le champ « Code Postal, Ville » est vide ou incomplet.</span>";
$errf_2=1;
}
if(strlen($f_4)<2){
$erreur.="<li><span class='txterror'>Le champ « E-mail » est vide ou incomplet.</span>";
$errf_4=1;
}else{
if(!ereg('^[-!#$%&\'*+\./0-9=?A-Z^_'a-z{|}~]+'.
'@'.
'[-!#$%&\'*+\/0-9=?A-Z^_'a-z{|}~]+\.'.
'[-!#$%&\'*+\./0-9=?A-Z^_'a-z{|}~]+$',
$f_4)){
$erreur.="<li><span class='txterror'>La syntaxe de votre adresse e-mail n'est pas correcte.</span>";
$errf_4=1;
}
}
if(strlen($f_5)<2){
$erreur.="<li><span class='txterror'>Le champ « Votre demande » est vide ou incomplet.</span>";
$errf_5=1;
}
if($erreur==""){
// Création du message
$titre="Message de votre site";
$tete="From:Site@Fil-etoffe.fr\n";
$corps.="Nom, Prénom : ".$f_1."\n";
$corps.="Code Postal, Ville : ".$f_2."\n";
$corps.="Téléphone : ".$f_3."\n";
$corps.="Votre E-mail : ".$f_4."\n";
$corps.="Votre demande : ".$f_5."\n";
if(mail("StellaB@fil-etoffe.fr", $titre, stripslashes($corps), $tete)){
$ok_mail="true";
}else{
$erreur.="<li><span class='txterror'>Une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
}
}
}
?>
Merci de m'aider à résoudre ce petit souci.
5 réponses
-
Je viens de faire la modif :
if(strlen($f_4)<2){
$erreur.="<li><span class='txterror'>Le champ « E-mail » est vide ou incomplet.</span>";
$errf_4=1;
}else{
if (!preg_match("#^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*.[a-z]{2,4}$#",$f_4)){
echo 'Votre Email semble ne pas être valide.';
}
}
Et là, ça marche... presque...
car si je mets un email invalide, il me mets le message d'erreur en haut de page, ne me rends pas la page pour modifier, mais envoie quand même le message.
J'ai donc tester cette manip :
if(strlen($f_4)<2){
$erreur.="<li><span class='txterror'>Le champ « E-mail » est vide ou incomplet.</span>";
$errf_4=1;
}else{
if (!preg_match("#^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*.[a-z]{2,4}$#",$f_4)){
$erreur.="<li><span class='txterror'>La syntaxe de votre adresse e-mail n'est pas correcte.</span>";
$errf_4=1;
}
Et là, tout a l'air de fonctionner....
Un grand Merci à toi....