Zdravím,
posílám sms zprávy přes php funkcti mail(). Potřeboval bych v obsahu zalamovat řádky.
Díky za odpovědi
Zdravím,
posílám sms zprávy přes php funkcti mail(). Potřeboval bych v obsahu zalamovat řádky.
Díky za odpovědi
bohužel ani %0A, ani \n\r
už jsem to vyřešil: urldecode("%0a")
omlouvám se, ale stále to nefunguje. Zalomilo mi to správně kvůli délcé řádku.
#5 Štěpán Andrle
Kódovanie SMS je 7bitové a nový riadok by mal byť kódovaný takto:
0001101 = CR = 13 = 0x0D
0001010 = LF = 10 = 0x0A
Mail používa štandardne tiež 7bitové kódovanie znakov, aby sa mohla používať diakritika tak sa to rôzne rozširuje. Skús sa pozrieť či sa automaticky nenadstavuje iné kódovanie v tom maili a ak hej tak nastav základné 7bitové.
A mimochodom, tie znaky nie sú \n\r ale \r\n. Možno iba preto ti to nešlo.
mno nejspíš to bude nějak filtrovat operátor (O2).
Páč když to nějak funguje, tak se místo nového řádku zobrazí mezera.
ak sa zobrazi medzera tak skus pouzit:
riadok1%0d%0ariadok2
ak to nepojde, posti nam zdrojak toho mejlu ktory od teba odide...
if(mail($mail, "", "Radek1 %0d%0a Radek2",
"From: xxx@xxx.cz\r\nContent-Transfer-Encoding: 7bit\r\nContent-Type: text/html")) {
echo "<script>window.close()</script>";
} else {
echo "CHYBA";
}
nepomáhá to...
nejlépe vypadá "1radek".urldecode("%0d%0a")."2radek"
to vytvoří mezeru
A skúšal si si poslať SMS z mobilu a preskúmať zdroj, a potom tú istú SMS z mailu a preskúmať zdroj? Najlepšie nejakú jednoduchú ako r1\r\nr2. Ak sa ti tam nejaké znaky zmenili tak to filtruje asi operátor alebo niekto iný po ceste sieťou.
"A\r\nB" sms -> sms "A\r\nB"
"A\r\nB" email -> sms "A B"
Ja som myslel ale zdroj. Ja používam program MyPhoneExplorer, ktorý mi zdroj zobrazí.
Ja som teda nikdy neštudoval formát SMS, ale ak by si videl čo presne prišlo tak by si mohol zistiť kde je chyba. Prípadne pošli tiež SMS s medzerou a potom porovnaj či je PDU rovnaké.
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku