Ich richte ein PHP-Kontaktformular auf einer Website ein. Ich verwende die Bibliothek Swift Mailer, um die E-Mail zu senden, und meine E-Mail-Adresse für die Domain wird über Google Apps gesendet. Ist es möglich, Google Apps für Unternehmens-E-Mails zu verwenden und sendmail/SMTP auf meinem VPS zum Senden von E-Mails von der Kontaktseite zu verwenden? Das Problem, das ich habe, ist, dass ich die Absenderadresse nicht dynamisch generieren kann. Die Google-Server erzwingen, dass dies die E-Mail-Adresse ist, die die E-Mail durchläuft. Danke im Voraus.PHP-Kontaktformular Best Practice
0
A
Antwort
0
Nach einiger Lesung zu tun, wurde mir klar, dass ich nicht überhaupt eine E-Mail-Bibliothek brauchte. Ich benutze die mail() -Funktion von PHP, um genau das zu erreichen, was ich wollte, indem ich per sendmail Formular-Mails sende und Google Apps alle Domain-E-Mails bearbeitet. Hier ist der relevante Code, der für mich funktioniert.
// 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"); }
Dies funktioniert perfekt für mich. Hoffe es hilft jemand anderem.
0
Ich benutze PHPMailer mit dieser Funktion ...
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);
}
Verwandte Themen
- 1. Best Practice Guide: Schaukel
- 2. Best Practice von SingleOrDefault()
- 3. Java Enum best practice
- 4. BLL-Fehler Best Practice
- 5. IUnitOfWork Anleitung - Best Practice
- 6. Sql Benennung Best Practice
- 7. Best Practice verschiedene Listen
- 8. Suchergebnis Paginierung, Best Practice
- 9. Rails Validierung best practice
- 10. wenn Bedingung best practice
- 11. MVP-Entwurfsmuster best practice
- 12. C# Subclass Best Practice
- 13. Best Practice für Bilder
- 14. Repository Pattern Best Practice
- 15. Best Practice-Benutzerführung?
- 16. for loop best practice
- 17. Java-Schnittstelle Best Practice
- 18. Best Application Delegate Practice
- 19. Best Practice response.getOutputStream
- 20. cmake Best Practice
- 21. Binding Best Practice
- 22. C# Datenverbindungen Best Practice?
- 23. UIPickerview Best Practice?
- 24. angularjs Fabrik Best Practice
- 25. Swift Datencaching - Best Practice
- 26. Best Practice von RestAngular
- 27. Best Practice eine Website
- 28. Best Practice für NSNotifications
- 29. Asp.Net Paginierung best practice
- 30. Mario-Controller Best Practice
Vielen Dank für Ihre Antwort. Ich denke nicht, dass dies mein Problem lösen wird. Swift Mailer funktioniert einwandfrei. Das Problem ist, dass Google die "Von" -E-Mail-Adresse beim Senden über den SMTP-Server nicht dynamisch festlegen kann. Wenn der Website-Administrator die E-Mail-Adresse des Formulars erhält, sendet die Antwort die E-Mail direkt an ihn zurück, nicht an die Person, die das Kontaktformular der Website ausgefüllt hat. Macht das Sinn? – Lenwood
Oh, Entschuldigung, Sie müssen ReplyTo Adresse in Ihrer E-Mail hinzufügen. –
Google ignoriert die Antwort-zu-Info zwar, sie lässt jedoch keine dynamische Einstellung zu. Egal, was ich in dieses Feld stelle, die Absenderadresse ist immer meine Google Apps-E-Mail-Adresse. Ich gehe davon aus, dass sie dies tun, um zu vermeiden, dass ihre Server zum Senden von Spam verwendet werden. – Lenwood