Forum Wisibility

WEB => Dreamweaver => Discussion démarrée par: Mallie le avril 08, 2013, 23:36:46 pm

Titre: Champs obligatoires formulaire de contact
Posté par: Mallie le avril 08, 2013, 23:36:46 pm
Bonjour à tous,

Etant loin d'être une pro du php, j'avais trouvé  ce formulaire sur le net, et je souhaiterais transformer ces 3 champs en  champs obligatoires. Pouvez-vos m'aider, voici le php :


<?php
$nom=$HTTP_POST_VARS['nom'];
$mail=$HTTP_POST_VARS['mail'];
$message=$HTTP_POST_VARS['message'];

 

/////voici la version Mine
$headers = "MIME-Version: 1.0\r\n";

//////ici on détermine le mail en format text
$headers .= "Content-type: text/html; charset=UTF-8\n";

////ici on détermine l'expediteur et l'adresse de réponse
$headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP";

$destinataire="xxxx@mail.com"; //remplacez "webmaster@votre-site.com" par votre adresse e-mail
$sujet="mail provenant du site xxxxx";
$body="$message";
if (mail($destinataire,$sujet,$body,$headers)) {
echo "";
} else {
echo "Une erreur s'est produite";
}
?>

erci d'avance si vous pouvez m'aider.
Titre: Re : Champs obligatoires formulaire de contact
Posté par: Eddy le avril 09, 2013, 16:36:29 pm
Bonjour.

Fais une recherche google (ou autre) sur if( empty ())

Tu devrais trouver des indices.
Je dois avoir un formulaire dans le fond des tiroirs de mes disques durs, je vais voir si je le retrouve et t'en enverrai une copie.
Titre: Re : Champs obligatoires formulaire de contact
Posté par: metaroid le avril 09, 2013, 17:08:53 pm
Salut,

Tes champs obligatoires, tu veux qu'ils soient obligatoire côté serveur ET/ou client ?
En plus de l'aide d'Eddy, tu pourrais mettre simplement l'attribut required à tes éléments champs HTML (ex: <input name="email" type="email" required/>, mais il faudra aussi que tu ajoutes des polyfills pour les anciens navigateurs.
Titre: Re : Champs obligatoires formulaire de contact
Posté par: Eddy le avril 09, 2013, 19:31:06 pm
Arghhh, je ne retrouve pas ce satané formulaire !!!! :(
Titre: Re : Champs obligatoires formulaire de contact
Posté par: Mallie le avril 11, 2013, 18:16:26 pm
Merci Eddy et Metarold, j'ai trouvé mon bonheur....

Voici, si ça peut aider quelqu'un :

<?php

$nom=$_POST['nom'];
$mail=$_POST['mail'];
$message=$_POST['message'];

// c'est ici qu'on va tester si toutes tes variable sont définies
// on vérifier que chaque variable n'est pas "empty" (vide)

if ( ! empty($nom) && ! empty($mail) && ! empty($message)) {

/////voici la version Mine
$headers = "MIME-Version: 1.0\r\n";

//////ici on détermine le mail en format text
$headers .= "Content-type: text/html; charset=UTF-8\n";

////ici on détermine l'expediteur et l'adresse de réponse
$headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP";

$destinataire="xxxx@mail.com"; //remplacez "webmaster@votre-site.com" par votre adresse e-mail
$sujet="mail provenant du site xxx";
$body="$message";


if (mail($destinataire,$sujet,$body,$headers)) {
echo "";
} else {
echo "Une erreur s'est produite";
}
}
else {
echo "Veuillez remplir tous les champs";
}
?>

A bientôt
Titre: Re : Champs obligatoires formulaire de contact
Posté par: Eddy le avril 11, 2013, 20:29:43 pm
Mallie, c'est cool.

J'ai refait une recherche et je viens de trouver ce formulaire.
Le code de ce fichier n'est pas de moi à l'origine, je suis incapable de programmer en php mais j'arrive à améliorer certaines choses simples en php…

Je le trouvais bien à l'époque où je l'utilisais, il se tiens dans un unique fichier, contrôle le contenu des champs, s'ils sont vides et si l'adresse e-mail est bien au format e-mail (avec l'arobase et l'extension).

En plus, j'y avais mis un champs "site web" pour contrer les robots spammeurs.
En effet, ceux-ci, remplissent les champs automatiquement et si un champs "site web" existe dans le formulaire, ils s'empressent de le remplir.

Dans ce formulaire, si ce champs est rempli, le mail n'est pas envoyé.
Il me suffisait alors, pour l'intégration, de masquer le champs par CSS et de prévenir par un texte de ne pas remplir ce champs sous peine de non envoi du formulaire, cette option était pour les navigateurs en mode texte.

J'y avais en plus adjoint un anti-spam mathématique (dans un fichier séparé) afin d'offrir une double protection contre le spam.

Je dois dire que le système fonctionnait bien et le proprio du site à l'époque, n'a jamais été spammé via ce formulaire. Je pense que ces protections sont encore d'actualité !

Si tu es intéressée, voici le lien (http://ovh.to/T8qyhSu) pour le télécharger (fichier de contact et fichier anti-spam).

Il suffit d'indiquer l'adresse e-mail du destinataire et intégrer ton design.
Titre: Re : Champs obligatoires formulaire de contact
Posté par: Mallie le avril 12, 2013, 00:43:45 am
Bonsoir Eddy,

un grand merci effectivement le fichier anti spam peut être très intéressant? Je regarde cela de plus près demain (il est tard là ) ;-)

Encore un grand merci.

mallie