× Aidez la recherche contre le COVID-19 avec votre ordi ! Rejoignez l'équipe PC Astuces Folding@home
 > Tous les forums > Forum des Webmasters
 formulaire contact traitement.php
Ajouter un message à la discussion
Pages : [1] 2 ... Fin
Page 1 sur 2 [Fin]
paovallau
  Posté le 06/08/2020 @ 17:27 
Aller en bas de la page 
Petite astucienne

Bonjour,

Quelqu'un pour me corriger?

Est-ce que je peux rediriger vers une page "merci" si oui comment?

Lors de l'envoi, J'ai une erreur ligne $nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';

Voici mon code

<?php



$destinataire = 'moi@gmail.com';



$copie = 'non';



$form_action = '';





$message_envoye = "Votre message nous est bien parvenu !";

$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";





$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";





function NoSpamQuestion($mode = 'ask', $answer = 0)

{

$array_pictures = array(); $j = 0;



$array_pictures[$j]['num'] = $j;

$array_pictures[$j]['question'] = "Quelle est la cinquième lettre du mot machin";

$array_pictures[$j]['answer'] = "i

$j++;

if ($mode != 'ans')

{



$lambda = rand(0, count($array_pictures)-1);

return $array_pictures[$lambda];

}

else

{



foreach($array_pictures as $i => $array)

{

if ($i == $answer)

{

return $array;

break;

};

};

}; // Fin if ($mode != 'ans')

};





$nospam = NoSpamQuestion();





function Rec($text)

{

$text = htmlspecialchars(trim($text), ENT_QUOTES);

if (1 === get_magic_quotes_gpc())

{

$text = stripslashes($text);

}



$text = nl2br($text);

return $text;

};





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;

}





$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';

$prenom = (isset($_POST['prenom'])) ? Rec($_POST['prenom']) : '';

$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';

$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';

$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';

$antispam_h = (isset($_POST['antispam_h'])) ? Rec($_POST['antispam_h']) : '';

$antispam_r = (isset($_POST['antispam_r'])) ? Rec($_POST['antispam_r']) : '';



$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré

$err_formulaire = false; // sert pour remplir le formulaire en cas d'erreur si besoin



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

{

// On demande la vraie réponse

$verif_nospam = NoSpamQuestion('ans', $antispam_r);



if (strtolower($antispam_h) != strtolower($verif_nospam['answer']))

{

// le formulaire s'arrête ici

echo '<p>Vous n\'avez pas répondu correctement à la question Antispam ...</p>';

}

else

{

if (($nom != '') && ($prenom != '') &&($email != '') && ($objet != '') && ($message != ''))

{

// les 5 variables sont remplies, on génère puis envoie le mail

$headers = 'MIME-Version: 1.0' . "\r\n";

$headers .= 'From:'.$nom.' <'.$email.'>' . "\r\n" .

'Reply-To:'.$email. "\r\n" .

'Content-Type: text/plain; charset="utf-8"; DelSp="Yes"; format=flowed '."\r\n" .

'Content-Disposition: inline'. "\r\n" .

'Content-Transfer-Encoding: 7bit'." \r\n" .

'X-Mailer:PHP/'.phpversion();





if ($copie == 'non')

{

$cible = $destinataire.';'.$email;

}

else

{

$cible = $destinataire;

};



// Remplacement de certains caractères spéciaux

$message = str_replace("'","'",$message);

$message = str_replace("’","'",$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);





$num_emails = 0;

$tmp = explode(';', $cible);

foreach($tmp as $email_destinataire)

{

if (mail($email_destinataire, $objet, $message, $headers))

$num_emails++;

}



if ((($copie == 'oui') && ($num_emails == 2)) || (($copie == 'non') && ($num_emails == 1)))

{

echo '<p>'.$message_envoye.'</p>';

}

else

{

echo '<p>'.$message_non_envoye.'</p>';

};

}

else

{



echo '<p>'.$message_formulaire_invalide.'</p>';

$err_formulaire = true;

};

};

};



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

?>



Modifié par paovallau le 06/08/2020 21:18
Publicité
zoulouman
 Posté le 06/08/2020 à 18:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Ton code ne va pas, ça va partir en erreur, tu as deux } de plus que {

Revois ton code et repasse nous voir.
Et quand tu postes du code, clique sur {;} pour rendre le truc plus lisible, merci.

Jean-Pierre
 Posté le 06/08/2020 à 20:02 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Ce serait aussi super de correctement INDENTER ce code... = la CAUSE aurait été découverte plus facilement

Idem de modifier ton titre, car les "au secours" découragent d'entrer...

Nous en demandons certainement trop

Et ce serait sympa aussi pour l'auteur de placer le lien de page de ce code...

Licette et JP

paovallau
 Posté le 06/08/2020 à 21:21 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

Bonsoir

Merci

J'ai modifié mon titre et remis plus lisible le code.

Je suis novice.

Je n'ai pas encore touché à mon code pour les corrections.

zoulouman
 Posté le 06/08/2020 à 21:30 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Demain matin, après mon café, je jette un oeil.
Passe une bonne soirée.

En attendant, si tu pouvais nous dire ce que tu veux précisément, ce serait cool.
Je ne comprends pas "est-ce que je peux rediriger" et comment tu souhaites rediriger. Sur un clic sur je ne sais quel bouton ? Ton script n'est pas un formulaire... Ta question est ambigue.
Ceci dit, je comprendrai peut-être quand j'aurai vu le script.

Tu as corrigé les erreurs ? (les deux } "en trop". Je vois que non...

Pour ce qui est de l'erreur $nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : ''; c'est normal. Tu utilises les parenthèses "pas comme il faut"...

Bon ! On voit tout ça demain matin.



Modifié par zoulouman le 06/08/2020 21:31
Jean-Pierre
 Posté le 06/08/2020 à 21:41 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Manque déjà un double-quote :


$array_pictures[$j]['answer'] = "i

$j++;

Et c'est un super bor

J'ai échappé un nid de dq :

$message = str_replace("\"",'"',$message);

J'indente... Comme ça tonton Zouzou y verra plus clair deux mains

Licette et JP



Modifié par Jean-Pierre le 06/08/2020 21:57
Jean-Pierre
 Posté le 06/08/2020 à 22:10 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Licette me disait que ça sentait la patte de son frangin Mat'...

J'ai indenté et ensuite Licette m'a montré le pot aux roses : Voir première ligne et source de ce script :

<?php
	// http://www.php-astux.info/article-formulaires-anti-spam.php
	$destinataire = 'moi@gmail.com';
	$copie = 'non';
	$form_action = '';
	$message_envoye = "Votre message nous est bien parvenu !";
	$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";
	$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";

	function NoSpamQuestion($mode = 'ask', $answer = 0)
	{
		$array_pictures = array(); $j = 0;
		$array_pictures[$j]['num'] = $j;
		$array_pictures[$j]['question'] = "Quelle est la cinquième lettre du mot machin";
		$array_pictures[$j]['answer'] = "i$j++";
		
		if ($mode != 'ans')
		{
			$lambda = rand(0, count($array_pictures)-1);
			return $array_pictures[$lambda];
		}
		else
		{
			foreach($array_pictures as $i => $array)
			{
				if ($i == $answer)
				{
					return $array;
					break;
				};
			};
		}; // Fin if ($mode != 'ans')
	};

	$nospam = NoSpamQuestion();

	function Rec($text)
	{
		$text = htmlspecialchars(trim($text), ENT_QUOTES);
		if (1 === get_magic_quotes_gpc())
		{
			$text = stripslashes($text);
		}
		$text = nl2br($text);
		return $text;
	};

	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;
	}

	$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
	$prenom = (isset($_POST['prenom'])) ? Rec($_POST['prenom']) : '';
	$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
	$objet = (isset($_POST['objet'])) ? Rec($_POST['objet']) : '';
	$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';
	$antispam_h = (isset($_POST['antispam_h'])) ? Rec($_POST['antispam_h']) : '';
	$antispam_r = (isset($_POST['antispam_r'])) ? Rec($_POST['antispam_r']) : '';
	$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré
	$err_formulaire = false; // sert pour remplir le formulaire en cas d'erreur si besoin

	if (isset($_POST['envoi']))
	{
		// On demande la vraie réponse
		$verif_nospam = NoSpamQuestion('ans', $antispam_r);

		if (strtolower($antispam_h) != strtolower($verif_nospam['answer']))
		{
		// le formulaire s'arrête ici
		echo '<p>Vous n\'avez pas répondu correctement à la question Antispam ...</p>';
		}
		else
		{
			if (($nom != '') && ($prenom != '') &&($email != '') && ($objet != '') && ($message != ''))
			{
				// les 5 variables sont remplies, on génère puis envoie le mail

				$headers = 'MIME-Version: 1.0' . "\r\n";

				$headers .= 'From:'.$nom.' <'.$email.'>' . "\r\n" .

				'Reply-To:'.$email. "\r\n" .
				'Content-Type: text/plain; charset="utf-8"; DelSp="Yes"; format=flowed '."\r\n" .
				'Content-Disposition: inline'. "\r\n" .
				'Content-Transfer-Encoding: 7bit'." \r\n" .
				'X-Mailer:PHP/'.phpversion();

				if ($copie == 'non')
				{
					$cible = $destinataire.';'.$email;
				}
				else
				{
					$cible = $destinataire;
				};

				// Remplacement de certains caractères spéciaux
				$message = str_replace("'","'",$message);
				$message = str_replace("’","'",$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);

				$num_emails = 0;
				$tmp = explode(';', $cible);
				
				foreach($tmp as $email_destinataire)
				{
					if (mail($email_destinataire, $objet, $message, $headers))
					$num_emails++;
				}

				if ((($copie == 'oui') && ($num_emails == 2)) || (($copie == 'non') && ($num_emails == 1)))
				{
					echo '<p>'.$message_envoye.'</p>';
				}
				else
				{
					echo '<p>'.$message_non_envoye.'</p>';
				};

			}
			else
			{
				echo '<p>'.$message_formulaire_invalide.'</p>';
				$err_formulaire = true;
			};

		};

	};

	if (($err_formulaire) || (!isset($_POST['envoi'])))
?>
paovallau
 Posté le 06/08/2020 à 22:22 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

Oui !!

J'en ai essayé plusieurs dont un très simple que j'avais fait seule.

Je sais faire un formulaire (contact.html) mais une fois cliquer sur envoyer (traitement.php) mon mail était bien envoyé mais arrivait dans les spam. Je n'avais pourtant pas de message d'erreur.

Du coup, je suis tombée sur celui ci et j'essaie de l'adapter à mon formulaire.

Je suis en train d'apprendre en même temps que je crée.

Merci 😊

Jean-Pierre
 Posté le 06/08/2020 à 22:28 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Je sais faire un formulaire (contact.html) mais une fois cliquer sur envoyer (traitement.php) mon mail était bien envoyé mais arrivait dans les spam. Je n'avais pourtant pas de message d'erreur.

Tu peux montrer aussi, Licette se doute pourquoi...

Licette et JP

Publicité
zoulouman
 Posté le 07/08/2020 à 08:52 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Merci d'avoir indenté le machin JP.
Je vois des énormités. Pourquoi remplacer & par & par exemple ??? Et il y en a des tonnes !

Pao, tu devrais reprendre ton ancien script et nous le montrer. Ce script fonctionnait puisque les mails partaient en SPAM.
Je suis convaincu que ce n'est pas la faute de ce script si ça part en SPAM.

Par exemple, si tu postes les mails depuis chez toi, c'est normal que ça finisse en SPAM. Les FAI désignent leurs blocs IP comme dynamiques et les déclarent comme tels.
C'est ce qu'on appelle la PBL (Policy Block List). Et si ça se trouve, ton IP est complètement pourrie et fait l'objet de multiples blacklistages.

Et ce n'est que le début !
Pour envoyer un mail, il faut respecter des dizaines de bonnes pratiques, sinon c'est le SPAM pour le mail !
Tu connais les enregistrements DNS SPF ? DMARC ? Tu as un nom de domaine au moins, hein ? On expédie jamais de mail depuis le domaine localhost !
Localhost, c'est en interne, mais quand le mail part, il lui faut un nom de domaine.

Jean-Pierre
 Posté le 07/08/2020 à 11:47 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Tonton Zouzou

Mais c'est le frangin à Licette qui a pondu ce script...

Remarque bien qu'en ce moment, il n'a même presque plus le temps de dormir le pauvre. En plus de courir les filles..

Tu bosses de trop fiston !

Moi qui l'autre fois hurlait aussi fort que Licette pour les contenus de sites qui collent partout des boutons avec dessus inscrit "Ouvrez"

Si l'on passe le museau du mulot dessus ça découle du GG (existe encore des c** pour cliquer sur ce genre de saletés ?)

Mat' pas honte ? surtout que ta frangine l'autre fois avait réussi à regarder sur ton compte en banque... Ça te rapporte 4€23 pour une année de ce genre de truc à la co. Ce genre de pratique te fout ton site en l'air ! Perso quand je vois ces mer qui se chargent en barre d'états je fais avorter illico cette action

Licette et JP

zoulouman
 Posté le 07/08/2020 à 11:52 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

C'est quoi/qui GG ?

J'ai pas tout compris... C'est quoi le truc ? Le script vient d'un site qui refile la vérole ?

Jean-Pierre
 Posté le 07/08/2020 à 12:05 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Tonton Zouzou, mais si tu sais !i

GG = Google.

Exemple de bouton qui sont collés partout pour tromper le monde et que l'on (pas moi) clique dessus comme des moutons :

zoulouman
 Posté le 07/08/2020 à 12:13 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Ah oui d'accord !

Les pièges à cons, c'est très efficace ! Les gens ne réfléchissent pas, ils sont sur un site pour télécharger un logiciel, ils cliquent aussi vite que possible sur le premier "Télécharger" qu'ils aperçoivent, même si c'est une pub piège à con ou pire encore...
C'est d'un désolant, mais d'un désolant !
C'est encore plus navrant pour les sites qui trompent leurs visiteurs de cette façon. C'est ce que j'appelle des enfoirés du net !

Jean-Pierre
 Posté le 07/08/2020 à 12:33 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Ah oui mon tonton Zouzou ; je suis effaré de la conner des gens en général.

Car bien entendu nous sommes au dessus de tout ça hein

Sachant qu'ils sont de plus en plus moutonnés via l'abrutissement de certains média ; surtout télévisuels.

Licette ne supporte pas la TV et heureusement car moi non plus.

L'autre fois (ça fait longtemps) en regardant une tronche de cake j'ai choppé la TV et elle s'est transformée en OVI = -Objet Volant Identifié

D'ailleurs pas de temps à perdre avec ce genre de trucs qui rendent abrutis les gens sans le savoir...

Le moutonnage... Hé oui toi qui me lit... devine

Licette en sait quelque chose ! Enfin oui mais au niveau limaçage

paovallau
 Posté le 08/08/2020 à 17:28 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

Merci... C'est très gentil de prendre du temps pour m'aider

Je suis débutante et je dois dire que ma vie ne se passe pas devant un écran.

Donc, une webmaster pro m'a aidé mais bon... heureusement c'est gratuit lol

Est-ce possible que mon souci vienne de l'hébergeur?

Mail envoyé toujours. Mais pas de redirection pour les remerciements.

J'avais fait ça en piochant un peu partout car ce n'est pas mon métier (oui je suis conseillère funéraire, mère de famille, conseillère municipale et sportive ) :

<?php
    
    if ($_SERVER['REQUEST_METHOD']=='POST') {
     
     
      $nom = htmlentities($_POST['nom']);
      $prenom = htmlentities($_POST['prenom']);
      $objet = htmlentities($_POST['objet']);
      $email = htmlentities($_POST['email']);
      $message = htmlentities($_POST['message']);
     
      
     
      $destinataire = 'moi@gmail.com'; 
      $contenu = '<html><head><title> '.$objet.' </title></head><body>';
      $contenu .= '<p>Tu as un nouveau message !</p>';
      $contenu .= '<p><strong>Nom</strong>: '.$nom.'</p>';
      $contenu .= '<p><strong>Prenom</strong>: '.$prenom.'</p>';
      $contenu .= '<p><strong>Email</strong>: '.$email.'</p>';
      $contenu .= '<p><strong>Message</strong>: '.$message.'</p>';
      $contenu .= '</body></html>'; 
     
      
      $headers = 'MIME-Version: 1.0'."\r\n";
      $headers .= 'Content-type: text/html; charset=iso-8859-1'."\r\n";
     
     
      
if(!mail($destinataire, $objet, $contenu, $headers))
{
   header('Location: merci.html');
   exit;
   }
   else{
echo "erreur";
}
}
?>
Jean-Pierre
 Posté le 08/08/2020 à 20:53 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Faut nous rafraichir la mémoire.

Si je me souviens bien tu as 2 soucis sur ce script :

1. Il part toujours mais dans les spams (si oui, normal... )

2. Tu souhaiterais une redirection pour par exemple envoyer un message de remerciement à ce visiteur ?

Licette et JP

Edit : avais-tu testé celui ci : http://www.php-astux.info/script-formulaire-contact.php

Toujours même source... Mais plus simple que celui que tu avais posté en premier.

Il possède la redirection, etc.



Modifié par Jean-Pierre le 08/08/2020 20:59
Publicité
paovallau
 Posté le 08/08/2020 à 21:13 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

Merci !

Je regarderai demain.

Bonne soirée

Jean-Pierre
 Posté le 08/08/2020 à 21:36 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Tu verras qu'une fois envoyé tu auras un message seul en haut de page via ces lignes de code :

.../...
// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !";
.../...

Partant de là, tu pourras ajouter ou modifier ce que bon te semble.

J'ajoute que.. ça partira certainement en spam mais pas de panique, Licette sait ce qu'il faut faire

Voui moi ze sais...

Licette et JP

Malcolm
 Posté le 09/08/2020 à 20:30 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

salut,

pour que ça parte en spam, cela signifie (liste non exhaustive) :

- que le mail est expédié depuis un serveur qui est déjàconnu pour relayer (ou envoyer) du spam : c'est souvent le cas sur des hébergeurs mutualisés ;

- que le mail ne respecte pas les prérequis techniques de l'hébergeur : bien souvent il faut qu'il parte d'une adresse email appartenant au site (j'avais rectifié mon script dans ce sens)

- que le serveur destinataire l'identifie en spam : souvent les en-têtes du mail expliquent pourquoi.

- ...

ce script utilise la simple fonction "mail" de php qui dépend en direct de l'hébergeur. quelles sont ses informations pour envoyer un mail ?

Jean-Pierre
 Posté le 09/08/2020 à 20:43 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Tiens v'là le fiston

Taratata !!!

Je t'avais déjà dit pourquoi.

Presque tous les tutos sur le net tombent in the array

Aurais-tu déjà à ton âge un coup de "All zemer" ?

Tu sais que ta frangine n'aime pas tes pubs "cliquez là" ou "Ouvrir" du GG/quadruple click.

Pour même pas 10€ par an tu bousilles ton site. Ta frangine l'autre fois s'est glissée dans tes comptes

Que réponds-tu à ton pas ternel ?

Pas honte jeune galopin ?

zoulouman
 Posté le 09/08/2020 à 20:49 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

C'est vrai que l'idéal serait de voir les headers du mail tombé en SPAM.

C'est tellement simple de faire passer un mail en spam, tellement simple...

Jean-Pierre
 Posté le 09/08/2020 à 20:58 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Trop simple puisque tout le monde tombe in the array

Sauf tonton Zouzou et Licette

paovallau
 Posté le 11/08/2020 à 18:28 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

Bonjour

Je vous remercie mais je suis incapable de créer ce fichu fichier traitement.php

Rien ne fonctionne.

Je ne reçois même plus les mails envoyés avec mon premiers code du début.

Tant pis...

J'ai dû lire tous les cours trouvés et les exemples. les forums idem.

J'ai essayé tout ce que j'ai trouvé.

Le seul qui fonctionne est mon petit que j'ai posté le 8/08 mais je ne suis pas satisfaite.

Merci malgré tout

bye

Jean-Pierre
 Posté le 11/08/2020 à 20:00 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

C'est sûr que si tu dis que ça ne fonctionne pas ; ça ne fonctionnera jamais...

Bref, si tu souhaites avancer un peu : montre-nous ce code et nous t'aiderons.

Si tu penses perdre à tous les coups ; en ce cas nous ne pourrons rien pour toi

A toi de voir

Licette et JP

paovallau
 Posté le 12/08/2020 à 15:27 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

bonjour

merci

donc je reprends.

Je suis partie dans tous les sens du coup je remets mon code

Mon mail ne part pas et j'ai une erreur à la ligne if (1 === get_magic_quotes_gpc()){

Deprecated: Function get_magic_quotes_gpc() is deprecated in /home/users/00/38/98/home/www/traitement.php on line 34Deprecated: Function get_magic_quotes_gpc() is deprecated in /home/users/00/38/98/home/www/traitement.php on line 34Deprecated: Function get_magic_quotes_gpc() is deprecated in /home/users/00/38/98/home/www/traitement.php on line 34Deprecated: Function get_magic_quotes_gpc() is deprecated in /home/users/00/38/98/home/www/traitement.php on line 34Deprecated: Function get_magic_quotes_gpc() is deprecated in /home/users/00/38/98/home/www/traitement.php on line 34

<?php

$destinataire = 'moi@gmail.com';


$copie = 'non';



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


$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";



function Rec($text) {
  $text = htmlspecialchars(trim($text), ENT_QUOTES);
  if (1 === get_magic_quotes_gpc()){
    $text = stripslashes($text);
  }

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

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;
}


$nom     = (isset($_POST['nom']))     ? Rec($_POST['nom'])     : NULL;
$prenom     = (isset($_POST['prenom']))     ? Rec($_POST['prenom'])     : NULL;
$email   = (isset($_POST['email']))   ? IsEmail(Rec($_POST['email']))   : NULL;
$objet    = (isset($_POST['objet']))     ? Rec($_POST['objet'])     : NULL;
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : NULL;

$msg = array(); 

if (isset($_POST['envoi'])) {
    if ($nom  && $email && $objet && $message) {
      // les 4 variables sont remplies, on génère puis envoie le mail
      $headers  = 'MIME-Version: 1.0' . "\r\n";
      $headers .= 'From:'.$nom.' <'.$email.'>' . "\r\n" .
                  'Reply-To:'.$email. "\r\n" .
                  'Content-Type: text/plain; charset="utf-8"; DelSp="Yes"; format=flowed '."\r\n" .
                  'Content-Disposition: inline'. "\r\n" .
                  'Content-Transfer-Encoding: 7bit'." \r\n" .
                  'X-Mailer:PHP/'.phpversion();

    
      if ($copie == 'non') {
        $cible = $destinataire.','.$email;
      } else {
        $cible = $destinataire;
      }

     
     $message = str_replace("'","'",$message);
				$message = str_replace("’","'",$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);



      
      if (mail($cible, $objet, $message, $headers)){
        $msg[] = '<p>'.$message_envoye.'</p>';
      } else {
        $msg[] = '<p>'.$message_non_envoye.'</p>';
      }
      
    } else {
      
      $msg[] = '<p>'.$message_formulaire_invalide.'</p>';
      $err_formulaire = true;
    }
 
}

?>
Publicité
Pages : [1] 2 ... Fin
Page 1 sur 2 [Fin]

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
15,59 €Refroidisseur YockTec pour portable (inclinable, 11 à 16 pouces) à 15,59 € avec le code DIML9RIC
Valable jusqu'au 26 Septembre

Amazon fait une vente flash sur le refroidisseur YockTec pour ordinateur portable qui passe à 15,59 € avec le code promo DIML9RIC. Ce panneau à mettre sous votre ordinateur portable de 11 à 16 pouces comporte un ventilateur de 16 cm pour le refroidir efficacement et en silence (vitesse réglable). Il est alimenté par un port USB de votre ordinateur portable et intègre un hub avec 2 ports USB.


> Voir l'offre
21,91 €Souris sans fil Logitech M280 à 21,91 €
Valable jusqu'au 25 Septembre

Amazon fait une petite promotion sur la souris sans fil Logitech M280 qui passe à 21,91 €. On la trouve ailleurs à partir de 30 €. Sa forme profilée est adaptée aux droitiers. Son autonomie est de 18 mois (pile AA que vous pourrez remplacer).


> Voir l'offre
209,99 €Box Android Nvidia Shield TV Pro 2019 16 Go avec télécommande à 209,99 €
Valable jusqu'au 30 Septembre

Amazon fait une petite promotion sur la box Android Nvidia Shield TV Pro 2019 16 Go avec sa télécommande à 209,99 € avec le code SMARTHOME. On trouve ailleurs ce pack à partir de 219 €. Compatible FullHD et 4K, vous pourrez utiliser vos applications Android, jouer et regarder des films et des séries en très haute résolution sur votre TV (compatible Kodi, Molotov, Netflix, YouTube ...). La box permet également de jouer à vos jeux PC diffusés en streaming directement avec une très faible latence.  La livraison est gratuite.


> Voir l'offre

Sujets relatifs
Aide pour formulaire de contact
Formulaire de contact html/php
Formulaire contact PHP
Formulaire Contact PHP : E-mail vide ou presque...
champs caché destinataire formulaire contact php
aide moi a me guidee sur mon Formulaire php
Formulaire de Contact en php
aide pour un formulaire de contact
Probleme formulaire contact PHP
formulaire php, de l'aide s'il vous plait...
Plus de sujets relatifs à formulaire contact traitement.php
 > Tous les forums > Forum Forum des Webmasters