Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Internet > Web razvoj > Serverske aplikacije i baze podataka
Uputstvo Članstvo Kalendar Današnje poruke Pretraži

Serverske aplikacije i baze podataka PHP, Perl, ASP, ASP .NET, ColdFusion...
MySQL, PostgreSQL, MSQL, Oracle...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 26.3.2008, 18:15   #1
miloss
Član
 
Član od: 6.7.2006.
Poruke: 70
Zahvalnice: 8
Zahvaljeno jedanput na jednoj poruci
Određen forumom mail() i sprska slova

Nikako da uspem da php skripta posalje na mail srpska slova (šđč). Stavio sam $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n"; i samu skriptu snimio kao UTF-8, ali ne vredi. Gde li gresim?
miloss je offline   Odgovor sa citatom ove poruke
Stara 26.3.2008, 20:07   #2
Deusdies
Starosedelac
 
Član od: 9.11.2005.
Lokacija: bo@galaxy: ~$
Poruke: 1.554
Zahvalnice: 54
Zahvaljeno 439 puta na 215 poruka
Slanje poruke preko AIM-a korisniku Deusdies Slanje poruke preko MSN-a korisniku Deusdies Slanje poruke preko Skypea korisniku Deusdies
Određen forumom Re: mail() i sprska slova

A šta se u samoj poruci pojavljuje umesto naših slova?
Deusdies je offline   Odgovor sa citatom ove poruke
Stara 26.3.2008, 20:40   #3
VojaM
Ad Ministrator
 
Avatar korisnika VojaM
 
Član od: 19.8.2005.
Lokacija: Beograd, SK
Poruke: 7.280
Zahvalnice: 29
Zahvaljeno 3.041 puta na 1.544 poruka
Određen forumom Re: mail() i sprska slova

Citat:
miloss kaže: Pregled poruke
Nikako da uspem da php skripta posalje na mail srpska slova (šđč). Stavio sam $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n"; i samu skriptu snimio kao UTF-8, ali ne vredi. Gde li gresim?
Treba razlikovati slučaj kada je u poruci HTML sadržaj i kada je čist tekst.
Ovaj tvoj slučaj je ako je u poruci HTML ili kombinacija HTML-a i teksta. Ali u tom slučaju je potrebno da u hederu postoji još svašta, ovo što si dodao je samo jedan deo.
Uostalom, pogledaj sors neke HTML poruke koju si nekad dobio pa ćeš videti da tu ima svašta, i nešto što se zove Boundary, i nešto što se zove Content-transfer-encoding, a sama poruke treba da počinje linijom za razdvajanje definisanom u hederu Boundary...

Ako će u poruci biti čist tekst, dovoljno je staviti ova tri hedera:
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

(možda može i bez ovog prvo Mime)

E sad, ti znaš kako treba to napisati u sintaksi PHP-a; pretpostavljam da treba sve da utrpaš u jednu liniju, a da pojedine hedere razdvajaš sa \r\n i još jedanput \r\n na kraju.

Poslednja ispravka: VojaM (26.3.2008 u 20:53)
VojaM je offline   Odgovor sa citatom ove poruke
Stara 26.3.2008, 21:05   #4
miloss
Član
 
Član od: 6.7.2006.
Poruke: 70
Zahvalnice: 8
Zahvaljeno jedanput na jednoj poruci
Određen forumom Re: mail() i sprska slova

$headers = "From: office<office@nesto.com>\n";
$headers .= 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\n";

Ovo mi stoji kao header, i ide kao html.
Imate li negde primer, tj kako da vidim sta mi jos treba da bi se formatiralno normalno?

Umesto nasih slova dobijam: Ä‘, Å¡...
miloss je offline   Odgovor sa citatom ove poruke
Stara 26.3.2008, 21:53   #5
VojaM
Ad Ministrator
 
Avatar korisnika VojaM
 
Član od: 19.8.2005.
Lokacija: Beograd, SK
Poruke: 7.280
Zahvalnice: 29
Zahvaljeno 3.041 puta na 1.544 poruka
Određen forumom Re: mail() i sprska slova

Probaj da iza svega dodaš još i

Content-Transfer-Encoding: 8bit

a probaj i da umesto "\n" staviš "\r\n"

Kad si već tu, objasni meni neznalici šta znače one tačke u drugom i trećem hederu
VojaM je offline   Odgovor sa citatom ove poruke
Stara 26.3.2008, 22:20   #6
miloss
Član
 
Član od: 6.7.2006.
Poruke: 70
Zahvalnice: 8
Zahvaljeno jedanput na jednoj poruci
Određen forumom Re: mail() i sprska slova

Probao sam da dodam to, ali opet je isto.
Ako mislis na . ispred = znaci da se nesto dodaje promenjivoj $headers na vrednost koju ona vec poseduje. A ako mislis na tacke izmedju navodnika, one samo sastavaljaju vrednosti medju navodnicima i prosledjuju je promenjivoj. Moglo je i bez njih.
miloss je offline   Odgovor sa citatom ove poruke
Stara 26.3.2008, 23:03   #7
holodoc
Deo inventara foruma
 
Član od: 5.12.2005.
Poruke: 6.785
Zahvalnice: 348
Zahvaljeno 1.892 puta na 1.077 poruka
Određen forumom Re: mail() i sprska slova

Tačka u izrazu $headers .= 'neki string' je u stvari kraći način da se napiše $headers = $headers.'neki string'. Tačka je u stvari oznaka za operaciju konkatenacije iliti spajanje stringova.

Što se tiče maila....Još jednom za sva vremena i ondak stvarno mislim da je vreme da ovako nešto ide u sticky jer je pominjano par puta. Za uspešno slanje maila dovoljno je ispoštovati sledeći minimum informacija u zaglavlju: MIME, Content-type, From i Reply-to. Nisu potrebni nikakvi dodatni bitovi i slično

Elem sledeći kod uspešno šalje mail sa našim slovima pod uslovom da izvor podataka koji se šalju mailom (tekst poruke i sl.) dolazi sa stranice koja je u utf-8 kodnom rasporedu.
PHP kod:
/**
* Slanje emaila.

* Funkcija salje mail na navedenu email adresu.
*  
* @version 1.0
* @author Misa Brezanac <eat_your_heart_out_googlebot@gmail.com>
* @param string $email Email adresa na koju se mail salje
* @return string Rezultat uspesnosti izvrsenja slanja maila.
*/
function slanjeEmaila($email){
    
$subject "Ovde ide subject poruke";
    
//priprema headera za slanje
    
$headers  'MIME-Version: 1.0' "\r\n"//MIME v1.0 kompatibilan
    
$headers .= 'Content-type: text/plain; charset=utf-8' "\r\n"//tip i enkoding
    
$headers .= 'From: '.FROM_EMAIL."\r\n" .'Reply-To: '.REPLY_TO_EMAIL"\r\n" .'X-Mailer: PHP/'.phpversion(); //'From', 'Reply-To' i 'X-Mailer'
    //generisanje sadrzaja poruke
    
$message "Ovder ide poruka gde se novi red definiše sa \r\n";
    
$mail mail($email$subject$message$headers); //slanje emaila 
    
return $mail;       

U ovom primeru sam ja stavio da se mail šalje kao plain text ali u suštini ako se šalje html dovoljno je staviti Content-type: text/plain;.

E sad... Može da se dogodi da se mail uspešno šalje ali da ti recimo koristiš Thunderbird koji je apsolutni šampion u brkanju lončića kada su enkodinzi u pitanju U tom slučaju probaj da mail otvoriš Outlook Expressom ili da pošalješ isti na neki javni mail servis tipa DžiTok iliti Juhu.

Ako ni to ne upali probaj da proveriš da ti se u stranicu nije "uvukao" BOM kod. Njega se rešavaš najlakše tako što kompletan kod u editoru u kome pišeš kod (najverovatnije Dreamweaver) kopiraš u novi fajl i sačuvaš ga

Puno sreće

Poslednja ispravka: holodoc (26.3.2008 u 23:09) Razlog: Pajz da ne ostavim email obožavateljkama ;)
holodoc je offline   Odgovor sa citatom ove poruke
Stara 26.3.2008, 23:26   #8
miloss
Član
 
Član od: 6.7.2006.
Poruke: 70
Zahvalnice: 8
Zahvaljeno jedanput na jednoj poruci
Određen forumom Re: mail() i sprska slova

Ne vredi. Probao sam da sacuvam skript u Ultraeditoru, PsPadEditoru, kao ANSI, UTF-8, ISO... i opet isto. Dobijem č u promenljivoj kako treba, ali salje kao Å¡. Prekopirao ovaj kod iznad i opet.... Svejedno hvala.
miloss je offline   Odgovor sa citatom ove poruke
Stara 27.3.2008, 20:18   #9
VojaM
Ad Ministrator
 
Avatar korisnika VojaM
 
Član od: 19.8.2005.
Lokacija: Beograd, SK
Poruke: 7.280
Zahvalnice: 29
Zahvaljeno 3.041 puta na 1.544 poruka
Određen forumom Re: mail() i sprska slova

Javi mi se ličnom porukom da se dogovorimo da pošalješ probni mail meni.
Nadam se da ću onda moći tačno da ti kažem bar šta poruci fali, a ti ćeš već videti da li si se zeznuo u programu.

Ili, još bolje, postavi ovde hedere poruke kakvu si je primio na email
VojaM je offline   Odgovor sa citatom ove poruke
Odgovor

Bookmarks sajtovi


Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


Slične teme
tema temu započeo forum Odgovora Poslednja poruka
Vicevi Oblivion Cvet kompjutera 5473 27.5.2022 5:52
Menjanje slova za hdd i dvd Pjanovic Operativni sistemi 5 3.3.2008 18:35
opera mail JovanK Aplikativni softver 6 10.2.2007 22:26
[HTML] Naša slova i HTML? GAME MASTER Klijentske aplikacije 11 2.10.2006 17:56
kako da posaljem mail na svoj tel? Vorador Aparati i oprema 10 24.1.2006 21:12


Sva vremena su po Griniču +2 h. Sada je 10:58.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2025, vBulletin Solutions, Inc.
Hosted by Beograd.com