Comment créer un formulaire de contact ?

Petit nouveau ! | 6 Messages

22 janv. 2014, 21:07

bonjour
j'essaie en vain d'envoyer les reponses de mon formulaire de cette page :
http://champ-magnetique-pulse.perso.sfr ... atuit.html

sur une msessagerie de contact.
il faut donc que je crée une page envoi.php, mais je n'y arrive pas ?
est ce que j'ai une erreur dans ma page essai-gratuit.html ?
je voudrais qu'une vois la page remplie, l'uilisateur clique sur envoyer mon message, que ça lui indique que sa demande va etre prise en compte et que ça m'envoie les champs du formulaire rempli par mail.......
qui m'aider car en php je comprends rien ????

manu
Modifié en dernier par moogli le 23 janv. 2014, 22:46, modifié 1 fois.
Raison : Correction du titre

ViPHP
ViPHP | 1996 Messages

22 janv. 2014, 21:28

Qu'y-a-til dans envoi.php ?
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Petit nouveau ! | 6 Messages

22 janv. 2014, 21:32

bas pour l'instant y a pas grand chose car je sais pas comment on fait ???
:(

Petit nouveau ! | 6 Messages

22 janv. 2014, 21:38

j'ai essayer ça mais ç amarche pas ?
<?php
    /*
       ********************************************************************************************
       CONFIGURATION
       ********************************************************************************************
    */
    // destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
    $destinataire = '[email protected]';

    // copie ? (envoie une copie au visiteur)
    $copie = 'oui'; // 'oui' ou 'non'

    // Messages de confirmation du mail
    $message_envoye = "Votre message nous est bien parvenu !";
    $message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

    // Messages d'erreur du formulaire
    $message_erreur_formulaire = "Vous devez d'abord <a href=\"essai-gratuit.html\">envoyer le formulaire</a>.";
    $message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";

    /*
       ********************************************************************************************
       FIN DE LA CONFIGURATION
       ********************************************************************************************
    */

    // on teste si le formulaire a été soumis
    if (!isset($_POST['envoi']))
    {
    	// formulaire non envoyé
    	echo '<p>'.$message_erreur_formulaire.'</p>'."\n";
    }
    else
    {
    	/*
    	   * cette fonction sert à nettoyer et enregistrer un texte
    	*/
    	function Rec($text)
    	{
    		$text = htmlspecialchars(trim($text), ENT_QUOTES);
    		if (1 === get_magic_quotes_gpc())
    		{
    			$text = stripslashes($text);
    		}

    		$text = nl2br($text);
    		return $text;
    	};

    	/*
    	   * Cette fonction sert à vérifier la syntaxe d'un email
    	*/
    	function IsEmail($email)
    	{
    		$value = preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/', $email);
    		return (($value === 0) || ($value === false)) ? false : true;
    	}

    	// formulaire envoyé, on récupère tous les champs.
    	$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
    	$email_exp = (isset($_POST['email_exp'])) ? Rec($_POST['email_exp']) : '';
    	$prenom = (isset($_POST['prenom'])) ? Rec($_POST['prenom']) : '';
    	$adresse_frm = (isset($_POST['adresse_frm'])) ? Rec($_POST['adresse_frm']) : '';

    	// On va vérifier les variables et l'email ...
    	$email_exp = (IsEmail($email_exp)) ? $email_exp : ''; // soit l'email est vide si erroné, soit il vaut l'email entré

    	if (($nom != '') && ($email_exp != '') && ($prenom != '') && ($adresse_frm != ''))
    	{
    		// les 4 variables sont remplies, on génère puis envoie le mail
    		$headers = 'MIME-Version: 1.0' . "\r\n";
    		$headers .= 'From:'.$nom.' <'.$email_exp.'>' . "\r\n" .
    		'Reply-To:'.$email_exp. "\r\n" .
    		'X-Mailer:PHP/'.phpversion();

    		// envoyer une copie au visiteur ?
    		if ($copie == 'oui')
    		{
    			$cible = $destinataire.','.$email_exp;
    		}
    		else
    		{
    			$cible = $destinataire;
    		};

    		// Remplacement de certains caractères spéciaux
    		$message = str_replace("'","'",$message);
    		$message = str_replace("&#8217;","'",$message);
    		$message = str_replace(""",'"',$message);
    		$message = str_replace('<br>','',$message);
    		$message = str_replace('<br />','',$message);
    		$message = str_replace("<","<",$message);
    		$message = str_replace(">",">",$message);
    		$message = str_replace("&","&",$message);

    		// Envoi du mail
    		if (mail($cible, $objet, $message, $headers))
    		{
    			echo '<p>'.$message_envoye.'</p>'."\n";
    		}
    		else
    		{
    			echo '<p>'.$message_non_envoye.'</p>'."\n";
    		};
    	}
    	else
    	{
    		// une des 3 variables (ou plus) est vide ...
    		echo '<p>'.$message_formulaire_invalide.' <a href="essai-gratuit.html">Retour au formulaire</a></p>'."\n";
    	};
    }; // fin du if (!isset($_POST['envoi']))
    ?>
Modifié en dernier par moogli le 23 janv. 2014, 16:45, modifié 1 fois.
Raison : bbcod ephp

ViPHP
ViPHP | 1996 Messages

22 janv. 2014, 21:49

Peux tu formater ton texte avec les balises PHP ? (le gros bouton au dessus de là ou tu tapes)
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

23 janv. 2014, 16:46

Modération :
Merci d'utiliser un titre clair et qui correspond bien à ta demande.
Les titres contenant "HELP !", "Aidez-moi", "J'ai un problème", "Ça marche pas",...
n'apportent rien à la compréhension de ta demande.

Par ailleurs, nous savons déjà par ton message que tu as besoin d'aide.

Tu peux corriger ton titre en éditant ton premier message.

plus l'utilisation du BBCODE (php dans ton cas)

Merci de prendre le temps de lire les règlements.
Il en faut peu pour être heureux ......

Mammouth du PHP | 2278 Messages

23 janv. 2014, 21:14

Plussoyant moogli, je dirai que, voyant le sujet, j'ai ouvert le message avec la ferme intention de ne pas le lire, comme sans doute plus d'un qui a d'autres éléphants à cornaquer.
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

ViPHP
ViPHP | 1996 Messages

23 janv. 2014, 22:07

Tu indiques :

if (!isset($_POST['envoi']))

Qui indique que tu cherche si la variable $_POST['envoi'] existe. Hors dan ston formualire, je ne vois pas de name="envoi".
Me trompe-je ?
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr