Envoyer le contenu d'1 formulaire par mail.

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Envoyer le contenu d'1 formulaire par mail.

par kenshin » 03 oct. 2005, 12:56

Ben ca marche pas de 7 maniere...
Sachant que je recupere le message de 7 maniere:
$message = htmlentities($_POST['message']);

Merci.

par kenshin » 03 oct. 2005, 12:40

J'utilise "str_replace" c'est ca?

comme ca : $message = str_replace( "\n", "\r\n", $message );

par Cyrano » 03 oct. 2005, 10:04

Au lieu de nl2br(), remplace les "\n" par des "\r\n" :-k :?:

par kenshin » 03 oct. 2005, 09:42

Salut,

Donc voila la solution que j'ai trouvé:
<a href="MAILTO:<?php echo $mail;?>?SUBJECT=<?php echo "Message de $prenom $nom de $entreprise";?>&BODY=<?php echo $message;?>">

Ca marche, mais il y a un petit probleme, c'est que lorsque la boite mail s'ouvre, tout est la , mais pour le corps du texte il ne vas pas a la ligne, alors j'ai mis "nl2br" pour message mais la il met des <br /> au lieu d'aller a la ligne.

Quelqu'un aurait une astuce?

par kenshin » 30 sept. 2005, 14:20

Marche pas...avec "sendmail_path =/usr/sbin/sendmail "

Je verrai ca ce weekend a tete reposée..

@+

par Flo » 30 sept. 2005, 13:42

sous UNIX, la variable sendmail_path définit le chemin de l'agent MTA (agent de transfert de courrier) pour la livraison des messages électroniques
Essaye donc comme ça :

Code : Tout sélectionner

[mail function] ; For Win32 only. ;SMTP = localhost ; For Win32 only. ;sendmail_from = ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). sendmail_path =/usr/sbin/sendmail
J'suis pas du tout au jus sous unix ni mac mais ça peut t'aider...
:wink:

par Cyrano » 30 sept. 2005, 13:41

essaye ce paramètre pour sendmail_path: /usr/sbin/sendmail
ça devrait pointer sur l'exécutable d'envoi de courriel, mais je n'y connais rien en mac et vraiment pas grand chose en système UNIX.

par kenshin » 30 sept. 2005, 13:23

En fait , sur mac j'ai le logiciel MAMP qui ressemble a easyphp, il installe un serveur apache et mysql et aussi phpmyadmin.

Donc comme je suis sur mac je dois renseigné la ligne :

sendmail_path = /Applications/mail.app

Mais j'ai tout essyé, tous les chamins possible et rien...que j'exectute mon script php ( mail($nom,$prenom,$mail); ) il ne se passe rien.

Alors c'est quoi le sendmail_path? Moi je pense que c'est le chemin pour le logiciel qui gere les mails. Sur mno mac ca s'appel 'mail'...
Je sais plus quoi faire.

par Cyrano » 30 sept. 2005, 11:50

Oui, il y a un fichier PHP.ini

Voici les lignes qui m'interesse
------------------------
mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25

; For Win32 only.
;sendmail_from = [email protected]

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path = /Applications/mail/
--------------------------------------------------

Donc je pense qu'il faut modifier la ligne "sendmail_path = /Applications/mail/" , comme je suis neo sur mac... j'ai un peu de mal.
Étant sur Mac, tu peux commenter les lignes qui pointent vers le smtp, il est du reste indiqué "For Win32 only" ou en français "Pour Win32 seulement". Pour commenter, ajoute un point-virgule en début de ligne.

Et comme MacOsX sauf erreur de ma part est un système de type UNIX, tu peux décommenter la ligne sendmail_path en enlevant le ";" de début de ligne. : à tester.

par pjl » 30 sept. 2005, 10:00

Donc le probleme c'est que j'utilise easyphp sur MAC :? .
Je suis un peu étonné.
easyphp ne tourne que sous Windows.
De plus, les derniers versions de MacOs intègrent déjà Apache.

par kenshin » 30 sept. 2005, 09:35

Oui, il y a un fichier PHP.ini

Voici les lignes qui m'interesse
------------------------
mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25

; For Win32 only.
;sendmail_from = [email protected]

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path = /Applications/mail/
--------------------------------------------------

Donc je pense qu'il faut modifier la ligne "sendmail_path = /Applications/mail/" , comme je suis neo sur mac... j'ai un peu de mal.

par Cyrano » 30 sept. 2005, 09:25

Je ne connais pas le système Mac, je ne sais donc pas où ni comment ça se configure, pas plus si on peut éditer le fichier de configuration de PHP. Mais comme sur tous les systè,es, Mac, PC, Linux ou autre, si tu fais une modification dans la configuration de PHP, il faut redémarer le serveur HTTP pour que les nouvelles directives soient prises en compte. Tu as essayé quoi jusqu'à maintenant ?

par kenshin » 30 sept. 2005, 09:22

En fait, pour ce que je veux faire, il me faut du PHP.

Donc le probleme c'est que j'utilise easyphp sur MAC :? .

Alors je n'arrive à configurer ce maudit php.ini :evil:

Merci pour vos réponse.

par Cyrano » 30 sept. 2005, 09:08

On peut peut-être t'aider à configurer correctement ton php.ini : cherche dedans une ligne marquée SMTP et configure-la en mettant l'adresse du serveur SMTP de ton fournisseur d'accès, par exemple :

Code : Tout sélectionner

SMTP = smtp.wanadoo.fr
Sinon, si tu tiens absolument à envoyer le résultat du formulaire par courriel, rajoute dans la balise <form> un attribut enctype avec pour valeur "text/plain" et dans l'attribut action tu inscris mailto:[email protected] de destination. Mais il te faudra ensuite créer un petit programme pour traduire le charabia qui est envoyé.

par Flo » 30 sept. 2005, 09:06

Tu devrai plutôt oublier le Javascript et configurer ton php.ini.
Tu utilise quoi comme serveur Local, easyphp ?
C'est pas très compliquer à configurer sinon.