[ kukipei @ 14.08.2005. 19:42 ] @
Pozdrav Da li neko zna nacin za slanje emaila iz php skripta. Kada koristim mail() funkciju neki korisnici ne primaju mejl. Verovatno ih server odbaci jer misli da su spamovi. Pozdrav Peda. |
[ kukipei @ 14.08.2005. 19:42 ] @
[ flylord @ 14.08.2005. 19:56 ] @
Evo ti F-ja koju ja koristim, i koja radi bas kako treba:
Code: function mailer($to, $subject, $message, $from) { /* additional headers */ $headers = "From: $from\r\n" ."Reply-To: $from\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=utf-8\r\n"; mail($to, $subject, $message, $headers); } [Ovu poruku je menjao flylord dana 14.08.2005. u 20:56 GMT+1] [ kukipei @ 14.08.2005. 21:28 ] @
Da li si siguran da taj kod radi, posto i ja imam slican:
// To send HTML mail, the Content-type header must be set $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; //$headers .= "Content-Transfer-Encoding: base64\r\n\r\n"; $headers .= 'From: [email protected]' . "\r\n" . 'Reply-To: [email protected]' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail( $emailzam , "Registracija korisnika", $poruka1, $headers); ali i dalje mi musterije javljaju da ne dobijaju mejl Jedina razlika: kod tebe charset=utf-8 kod mene charset=iso-8859-1 da li je to presudno. Pozdrav [ flylord @ 14.08.2005. 21:35 ] @
naravno da sam siguran... Kodni raspored nije bitan...
A jel si probao da sebi posaljes taj mail?? [ boccio @ 14.08.2005. 21:39 ] @
Citat: kukipei: ali i dalje mi musterije javljaju da ne dobijaju mejl Znajuci flajkov kod, proveri da im ne zavrsava kao spam umesto u inboxu :)))) [ Jbyn4e @ 15.08.2005. 08:46 ] @
A da probas nesto ovako:
Code: $poslato = mail( $emailzam , "Registracija korisnika", $poruka1, $headers); if ($poslato) { //ispisi ono sto treba ako je uspeo da posalje mail. echo "mail je poslat"; } else { //ispisi da nije poslao mail echo "mail nije prihvacen od mail servera ili je doslo do neke greske pri slanju"; } Pa javi sta napise... mozebit da ti je disable-ovana mail funkcija php-a na serveru? P.S. Mozda moras da dodas i sendmail_from direktivu? Nesto ovako: Code: ini_set("sendmail_from", "tvojmail@na_tom_serveru.com"); [ ivs @ 15.08.2005. 21:14 ] @
kukipei je mislio na neku napredniju funkiciju za slanje maila od te obicne, mana kod ove funkcije "mail()" koju svi koriste je to sto mail salje php sa servera i nije moguce utvrditi posiljaoca, stoga mnogi "spam protection" programi odbacuju ovakve mailove, jedino efikasno resenje je konektovanje php-a na smtp server i slanje odatle.
Ako neko zna kako se moze poslati mail preko smtp servera neka se javi. Pozdrav [ ivs @ 15.08.2005. 21:21 ] @
nije disable-ovana mail funkcija na serveru, mail() funkcija radi kad su u pitanju free mailovi [email protected] i [email protected] ali ne radi kad su na primer u pitanju mailovi kod vecine nasih provajdera [email protected] nesto@eunet ...
[ Jbyn4e @ 16.08.2005. 09:07 ] @
Ja saljem mail bez problema na sve provajdere. Testirano i na verat.net bez problema. Kako mi izgleda kod: (ovako, samo cenzurisano):
Code: ini_set("sendmail_from", "[email protected]"); //ko salje poruku $od="[email protected]"; // pravimo promenljive $kupac, $subjectkupac, $poruka, $charset... nije bitno za pricu mail($kupac, $subjectkupac, $poruka, "From: $od\n$charset\nReply-To: [email protected]\nErrors-To: [email protected]\n"); //salje mail Ako ti radi mail funkcija, i ako server sa koga se salje NIJE na crnim listama, mail stize bez problema. Ako ti je server na crnim listama - i ne treba da se prima mail sa njega, to (obicno) znaci da je on open relay i da svako moze da salje sa njega. P.S. I ovakav mail je potpun, lepo pise od koga je i ostalo... [ Jbyn4e @ 16.08.2005. 09:16 ] @
Citat: ivs: mana kod ove funkcije "mail()" koju svi koriste je to sto mail salje php sa servera i nije moguce utvrditi posiljaoca, stoga mnogi "spam protection" programi odbacuju ovakve mailove, jedino efikasno resenje je konektovanje php-a na smtp server i slanje odatle. Pazi ovako: Ako saljes pomocu mail funkcije - ona se zakaci na lokalni mail server, izgleda kao da je salje korisnik lokalnog mail servera, taj mail server se kaci dalje na drugi mail server koji vidi SAMO IP od tog lokalnog servera. Ukoliko bi slao direktnim kacenjem na remote smtp server iz php-a, remote server OPET vidi IP adresu lokalnog mail servera (pod pretpostavkom da su mail i web server na istoj masini), znaci OPET je ISTA IP adresa - tako da ti sa stanovista REMOTE servera vidis da zahtev dolazi sa ISTE IP adrese, njemu je nebitno je li to neki mail server ili direktno kacenje telnetom ili cime vec. On vidi ono sto vidi :) tako da ti je ovo isto - vazno je samo da li je server (lokalni, sa koga saljes mail) na RBL listama ili ne. Ukoliko jeste, i remote server ih proverava - neces moci da saljes mail bilo mail funkcijom, bilo php-om ili direktnim telnetom na remote masinu sa te lokalne masine. Kod remote servera desice se nesto ovako: Citat: Aug 16 01:28:45 server.com postfix/smtpd[3822]: reject: RCPT from unknown[61.109.55.230]: 554 Service unavailable; [61.109.55.230] blocked using opm.blitzed.org, reason: Open proxy - see http://opm.blitzed.org/61.109.55.230; from=<[email protected]> to=<[email protected]> Je li malo jasnije? Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|