

PHP: zápis do řetězce
Ahoj,
nějak mě neposlouchá PHP. Mám skript, který do mailu odesílá odkaz na konkrétní adresu. Jenže odkaz nedorazí celý - proměnná za názvem souboru je "ustřižená". Jedná se o proměnnou ID, která v tomto konkrétním případě má hodnotu 1001201. Do mailu ale dorazí odkaz ve formě auto.php01202, chybí tedy rovnítko za ID a první dva znaky proměnné. Čím by to mohlo být? Část zdrojáku s definováním onoho odkazu je níže.
Děkuji.
$zprava = "Uživatel ".$odesilatel_jmeno." žádá o bližší informace o vozidle ".$pole[0].\n http://ashhostivice.cz/auto.php?id=".$id;
Máte tam chybu, správný zápis je :
Pardon, dokonce jsem to i špatně zkopíroval :)
I v této verzi to ale nechodí - v odkazu stále chybí rovnítko a první dva znaky proměnné...
to neni mozne, nieco tam mas blbo. Premenna $id je string alebo cislo alebo co? Odkial ju beres a jak definujes?
Proměnná $id je řetězec - název souboru (bez přípony). V jiné části té samé stránky ale funguje; $id mi označuje číslo auta, název souboru s údaji o autě a název složky s fotografiemi. Údaje o autě a fotky se zobrazují.
Proměnnou $zprava pak jednoduše používám ve funkci mail:
A precitaj si help o funkcii mail
func_mail_mail.asp
hlavne ten example 1. Riadok nesmie prekrocit 70znakov, pravdepodobne to prekracujes. Daj si tam niekde do stredu toho retazca koniec riadku ("\n") alebo pouzi wordwrap...
Nastavuješ Content-Transfer-Encoding na quoted-printable, takže sa očakáva, že telo správy bude zakodóvané v quoted-printable (napr. v tvojom prípade =10 znamená ASCII znak s hodnotou 0x10).
Takže buď zakóduj telo správy pomocou funkcie quoted_printable_encode, alebo nastav v Content-Transfer-Encoding iné kódovanie (napr. 8bit) a telo správy kóduj podľa neho.
Bezva, už to funguje.
Pomohlo mi 8-bit. kódování zprávy. To by mě tedy nenapadlo, že to mohlo být tím... :)
Tak díky!