So senden Sie E-mail mit cake php und wo Sie anfangen sollen?
Ich möchte versuchen, um E-mail senden mit cake php. Ich habe keine Erfahrung mit E-mail senden. Also, ich weiß nicht, wo zu beginnen. Wird es brauchen, um E-mail-server? Wenn müssen, wie man E-mail-server und zum E-mail senden? Bitte Schritt für Schritt erklären. Ich weiß wirklich nicht, wo zu beginnen.
Ich verwende xampp und jetzt Teste ich meine Website auf localhost.
Getestet habe ich folgenden link:
http://book.cakephp.org/view/1286/Sending-a-basic-message
aber Fehler ist aufgetreten nicht direkt zugegriffen werden kann.
und dann füge ich code aus dem folgenden link:
http://book.cakephp.org/view/1290/Sending-A-Message-Using-SMTP
So, mein code ist folgender:
function _sendMail(){
$this->Email->to = '[email protected]';
$this->Email->bcc = array('[email protected]');
$this->Email->subject = 'Welcome to our really cool things';
$this->Email->replyTo = '[email protected]';
$this->Email->from = 'Online Application <[email protected]>';
$this->Email->template = 'simple_message';
$this->Email->sendAs = 'both';
$this->Email->smtpOptions = array(
'port' =>'25',
'timeout' => '30',
'host' => 'ssl://smtp.gmail.com',
'username' => '[email protected]',
'password' =>'aaa',
);
$this->Email->delivery = 'smtp';
$this->Email->send();
}
aber Fehler immer noch aufgetreten ist. Aber, ich habe nicht alle mail-server.Ist das OK?
- Zeigen uns die controller-Methode dass dieser code ist in und wie Sie versuchen, es zu nennen!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe das Gefühl, dass Sie mit Ihrer XAMPP-Konfiguration:
Öffnen Sie "php" aus.ini", es sollte irgendwo in der server-Dateien.
Suche für das Attribut namens "SMTP" in der php.ini-Datei.In der Regel finden Sie die Zeile “SMTP=localhost“. ändern Sie die localhost der name des smtp-Servers Ihres ISP ein. Und es gibt ein weiteres Attribut, genannt "smtp_port", die sollte eingestellt werden bis 25.Ich habe die folgenden Werte in meine php.ini-Datei.
Starten Sie den apache-server so, dass die PHP-Module und Attribute werden neu geladen.
ow versuchen, schicken Sie die mail mit der mail () - Funktion:
Wenn Sie die folgende Warnung:
Geben Sie die folgenden überschriften und versuchen Sie, senden Sie die mail erneut:
Quelle: http://roshanbh.com.np/2007/12/sending-e-mail-from-localhost-in-php-in-windows-environment.html
Benennung der controller-Funktion mit einem führenden Unterstrich ist, der Kuchen ist abwärtskompatibel Art der Benennung, dass die Funktion sollte geschützt, d.h., dass die Funktion nicht zugegriffen werden soll, als ein normaler controller-Aktion. Das bedeutet, dass Sie nicht zugreifen können
FooController::_sendMail()
mit der URL/foo/_sendMail
oder jede andere URL für diese Angelegenheit. Sie sollten sehen, diese, die IMO ein ziemlich gutes Fehlermeldung:Entfernen Sie den führenden Unterstrich, das ist alles. Dieses problem hat nichts zu tun mit E-Mails senden.
Email->send()
tatsächlich zurücktrue
?Versuchen:
//Prüfen, cakephp Handbuch für weitere Referenz: http://book.cakephp.org/
Hier ist ein Beispiel code für das senden einer HTML-E-Mail mit CakePHP E-Mail-Komponente
Ex-controller : EmailController.php
Erstellen Sie nun die E-Mail-Vorlage im Ordner /Views/Email/html/
dh die Vorlage Pfad sollte sein
/Views/Email/html/Beispiel.ctp
Probe.ctp