Odeslání emailu – exception
- i.magine
- Člen | 81
Ahoj,
mám fci na odesílání emailů, která na localhostu nefunguje… protoze tam
nemam smtp server, ale chtel jsem si overit jak to bude vyhazovat chyby. Chtel
bych takovou chybu ulozit do logu, ale pritom i ve formulari zobrazit
uzivateli, ze se to nepovedlo.
public function sendMail($form){
$mail = new Mail;
$mail->setFrom('<no-reply@example>')
...;
try {
$mail->send();
return TRUE;
} catch (InvalidStateException $e) {
$form->addError("Nepodařilo se odeslat email");
throw $e;
}
}
Při autodetectu to hodi normalni červenou chybu, když jsem ale dal:
Debug::enable(Debug::PRODUCTION, „log.log“);
Tak proste vyhodi Vzdálený server/soubor nebyl nalezen. Nevím co s tím, díky za pomoc.
- redhead
- Člen | 1313
kutilm napsal(a):
Zkus zakomentovat
throw $e;
Je řekl bych blbost, protože ta výjimka jinak nedosáhne až k laděnce ne?? Jistej si ale nejsem
Ale spíš, neměl by bejt ten parametr názvu logu být včetně cesty?
Debug::enable(Debug::PRODUCTION, "logs/log.log");
a složka logs musí být zapisovatelná..
Editoval redhead (16. 12. 2009 20:38)
- i.magine
- Člen | 81
Ahoj,
uz jsem zkousel zakomentovat throw exception a funguje to dobře, vypíše to
chybu do formuláře, ale do logu už ne.
redhead: V tom logu není problém do toho to zapisuje v pořádku (když to teda zase odkomentuju).
Problém je jenom v tom, že to nahlásí neznámou stránku a nevrátí se to zpátky do formu.
Díky