Php mail() probléma
Sziasztok
Regisztráció, és elfelejtett jelszóhoz kellene HTML emailt küldeni.
A nethely.hu oldalon regisztráltam egy tárhelyet.
Ha Php mail() funkció használatával akarok email küldeni, akkor az alábbi kóddal el is küldi, de ugye igy formázatla a levél.Na most a problémám az, hogy amikor kiegészítem a kódot, hogy html email küldjön, akkor nem küldi el az emailt.
Mi lehet a hiba?Amennyiben kiveszem a küldöt, csak az általam regisztrált email címre engedi elküldeni, de oda szépen el is küldi.
■ Regisztráció, és elfelejtett jelszóhoz kellene HTML emailt küldeni.
A nethely.hu oldalon regisztráltam egy tárhelyet.
Ha Php mail() funkció használatával akarok email küldeni, akkor az alábbi kóddal el is küldi, de ugye igy formázatla a levél.
mail('cimzett##kukac##cimzett.hu', 'TÁRGY', 'ÜZENET', 'From: felado##kukac##nethelynel.hu')
Mi lehet a hiba?
$headers = 'MIME-Version: 1.0' . "\r\n" ;
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n" ;
mail('cimzett##kukac##cimzett.hu', 'TÁRGY', 'ÜZENET', 'From: felado##kukac##nethelynel.hu', $headers)
$headers = 'MIME-Version: 1.0' . "\r\n" ;
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n" ;
// Email küldés
mail ( $Cimzett, $Targy, $Level, $headers);
Általános
1) Kérdezd meg a supportot. A szolgáltatók som minden perverz dolgot megtesznek nehogy az IP tartományuk fekete listára kerüljön (néhol speciális headereket kell megadni, sok helyen bizonyos kombinációk tiltva vannak).
2) Saját domainről küldesz? Ha a tárhelyszolgáltató úgy tudja, hogy te vagy abc.hu és te def.hu -ról próbálsz küldeni azt valószínűleg tiltják.
3) Ne használd közvetlenül a mail() függvényt, keress egy jó libet erre, ha egy SMTP-képes libet választasz az használható hibeüzenetekkel (a szerver válasza) tud szolgálni.
hibás paraméterek
A fenti kérdésedre (mi a hiba) a válasz az, hogy ebben a sorban rosszul paraméterezed a mail függvényt:
$headers
változó értéke) additional_parameters -ként lesz értelmezve, mert vesszővel elválasztottad, így ez az 5. paraméter..Egyetlen header stringet kéne összerakni, ami tartalmazza a From-ot is.
Ha pl a PHPMailer-t használnád SMTP-n, akkor valószínűleg kevésbé futnál ilyen hibába, de egy jó csomagot is jól kell tudni használni. :)
És még egy pont, ha már email:
4. Ha HTML emailt küldesz, célszerű megadni alt-(text)message-et is, mert ha a usernek le van tiltva a html megjelenítés, akkor semmit sem fog látni belőle. (Fenti csomag ezt is könnyedén kezeli.)