Je suis en train de configurer un formulaire de contact PHP sur un site. J'utilise la bibliothèque Swift Mailer pour envoyer le courrier, et mon adresse e-mail de domaine est accessible via Google Apps. Est-il possible d'utiliser Google Apps pour l'e-mail de l'entreprise et d'utiliser sendmail/SMTP sur mon VPS pour envoyer des e-mails à partir de la page de contact? Le problème que j'ai est que je ne peux pas générer l'adresse de manière dynamique, les serveurs de Google forcent cela à être l'adresse e-mail que l'email traverse. Merci d'avance.PHP Contact Form Best Practice
0
A
Répondre
0
Après avoir fait un peu de lecture, je réalisais que je ne l'ai pas besoin d'une bibliothèque de courrier du tout. J'utilise la fonction mail() de PHP pour accomplir exactement ce que je voulais, envoyer du courrier via Sendmail et demander à Google Apps de gérer tous les emails de domaine. Voici le code pertinent qui fonctionne pour moi.
// Define message variables if(get_magic_quotes_gpc()){ $name = stripslashes($_POST['name']); $email = stripslashes($_POST['email']); $body = stripslashes($_POST['body']); }else{ $name = $_POST['name']; $email = $_POST['email']; $body = $_POST['body']; } $subject = "Website Contact Form"; $recipient = "[email protected]"; $content = "NAME: $name, $email\nCOMMENT: $body\n"; $mailheader = "MIME-Version: 1.0\r\n"; $mailheader .= "From: $email\r\n"; $mailheader .= "Reply-To: $email\r\n"; $mailheader .= "Bcc: [email protected]" . "\r\n"; mail($recipient, $subject, $content, $mailheader) or die("Failure"); header("Location:/thankyou.php"); }
Cela fonctionne parfaitement pour moi. J'espère que ça aide quelqu'un d'autre.
0
J'utilise PHPMailer avec cette fonction ...
function email($to, $subject, $body){
require_once("class.phpmailer.php");
$mail = new PHPMailer();
$mail->SMTPAuth = true;
$mail->SMTPSecure = "ssl";
$mail->Host = "smtp.gmail.com";
$mail->Port = 465;
$mail->Username = "[email protected]";
$mail->Password = "password";
$mail->SetFrom("[email protected]", "Any Thing");
$mail->Subject = $subject;
$mail->Body = $body;
$mail->AddAddress($to);
$mail->Send();
unset($mail);
}
Questions connexes
- 1. Rails/JQuery best practice
- 2. SQL DB Best Practice
- 3. Test d'intégration Best Practice
- 4. Refactoring CSS Best Practice
- 5. POCO Best Practice
- 6. Spring Webflow Best Practice
- 7. UISegmentedControl Best Practice
- 8. jQuery Standards and Best Practice
- 9. Curseurs fermés - SQL Best Practice
- 10. Rails Model Controller Best Practice
- 11. API Wrapper Architecture Best Practice
- 12. Crystal Report Best Practice Question
- 13. Django: Model Design & Best Practice
- 14. PHP Best Practice: Utilisation de types de retour mixtes
- 15. Win32 DLL Export Fonction Paramètre Best Practice
- 16. iOS Best Practice pour grand téléchargement
- 17. Akka, Thread Dispatchers, Agents Best Practice
- 18. C# Live Data Architecture Best Practice
- 19. Entité Framework Best Practice sur l'exception catch
- 20. WP-Contact Form 7 - PHP
- 21. Praolog Best Practice: vérifier si une variable est déjà liée.
- 22. Changer les valeurs entre deux paramètres [Best Practice/Better Code]
- 23. Doctrine Référentiel personnalisé vs Entité Méthodes Best Practice
- 24. des variables assignant à toute la classe [Best Practice?]
- 25. Base de données Best Practice pour l'importation de données
- 26. Obtenir des informations à partir de différentes tables [Best Practice]
- 27. Scheme/Racket Best Practice - Récursion vs Accumulation de variables
- 28. Rails - Best-Practice: Comment créer des relations dépendantes has_one
- 29. Best PHP Encoder
- 30. Best php shopping cart
Merci pour votre réponse. Je ne pense pas que cela résoudra mon problème. Swift Mailer fonctionne parfaitement, le problème est que Google ne permettra pas de définir de manière dynamique l'adresse e-mail «de» lors de l'envoi via leur serveur SMTP. Lorsque l'administrateur du site reçoit l'e-mail du formulaire, le fait de répondre à la réponse lui renvoie l'e-mail, et non à la personne qui a rempli le formulaire de contact du site. Est-ce que ça a du sens? – Lenwood
Oh désolé, vous devez ajouter l'adresse ReplyTo dans votre e-mail. –
Google ignore l'information de réponse à, cependant, ils ne permettront pas qu'il soit défini dynamiquement. Peu importe ce que je place dans ce champ, l'adresse de provenance est toujours mon adresse e-mail Google Apps. Je suppose qu'ils font cela pour éviter que leurs serveurs soient utilisés pour envoyer du spam. – Lenwood