Autor | Zpráva | ||
---|---|---|---|
TheRay Profil |
#1 · Zasláno: 14. 3. 2010, 22:13:47
Zdravím prosím Vás potreboval by som odkázať na nejaký manuál alebo pomocť mám takýto script pre odosielanie dít z formulára. Email príde ako html ale potreboval by som vložiť do html ktorý sa odosielá pomocou mail funkcie premennú...viz. príklad.
PS: mal som mail v obyčajnom texte ked som ho zmenil na html mail už mi nezobrazuje diakritiku...prosím poradte... <?php $mail = "email@email.cz"; $predmet = $_POST['predmet']; $email = $_POST['email']; $text = ' <html> <head> <title>Požiadavka o cenovú kalkuláciu.</title> </head> <body> <h1>Žiadosť o cenník</h1></center><br> <p>Dobrý deň, návštevník našej stránky<a href="" target="">www.niečo.eu</a> Vás poľiadal o email. <p> <p><strong>Údaje o zákazníkovi:</strong></p> <table> <tbody> <tr> <td width="100"><strong>Meno:</strong></td> <td width="400">$meno</td></tr> // tu potrebujem premenú <tr> <td><strong>Priezvisko:</strong></td> <td>Frlicka</td></tr> <tr> <td><strong>Email:</strong></td> <td><a href="" target="_blank"></a></td></tr> <tr> <td><strong>Telefon:</strong></td> <td>0908545423</td></tr> <tr> <td><strong>Mesto:</strong></td> <td>Nitra</td></tr></tbody></table><br> <table> <tbody> </body> </html> $kon = cs_mail ($mail, $predmet, $text, "From:$email\n"); if ($kon) echo "Formulár bol úspešne odoslaný.<br>"; else echo "E-mail sa bohužial nepodarilo odoslať.<br>"; ?> <?php function autoUTF($s) { // detect UTF-8 if (preg_match('#[\x80-\x{1FF}\x{2000}-\x{3FFF}]#u', $s)) return $s; // detect WINDOWS-1250 if (preg_match('#[\x7F-\x9F\xBC]#', $s)) return iconv('WINDOWS-1250', 'UTF-8', $s); // assume ISO-8859-2 return iconv('ISO-8859-2', 'UTF-8', $s); } function cs_mail ($to, $predmet, $text, $head = "") { $predmet = "=?utf-8?B?".base64_encode(autoUTF ($predmet))."?="; $head .= "MIME-Version: 1.0\n"; $head .= "Content-Type: text/html; charset=\"utf-8\"\n"; $head .= "Content-Transfer-Encoding: base64\n"; $text = base64_encode (autoUTF ($text)); return mail ($to, $predmet, $text, $head); } ?> |
||
Majkl578 Profil |
#2 · Zasláno: 14. 3. 2010, 22:17:54
TheRay:
„potreboval by som odkázať na nejaký manuál“ http://www.php.net/manual/en/language.types.string.php $foo = 'x'; echo "a $foo b";//a x b echo 'a $foo b'; //a $foo b |
||
Alphard Profil |
#3 · Zasláno: 14. 3. 2010, 22:18:58
Na řádku 35 nemáte ukončený řetězec:
</html>'; A proměnnou začleníne takhle: <td width="400">'.$meno.'</td></tr> |
||
TheRay Profil |
#4 · Zasláno: 14. 3. 2010, 22:32:07
Alphard:
stým ukončeným retazcom som sa sekol ked som to sem kopíroval inak tam je...a stým začlenením premennej skúsim zatial dakujem... |
||
TheRay Profil |
#5 · Zasláno: 14. 3. 2010, 22:37:37
retazec v html funguje len stým jazykom ešte doladiť...dakujem
|
||
Alphard Profil |
#6 · Zasláno: 14. 3. 2010, 22:44:58
TheRay:
„len stým jazykom ešte doladiť“ Myslíte chybnou diakritiku? V jaké části je chyba, v té šabloně nebo v doplněném jméně? |
||
TheRay Profil |
#7 · Zasláno: 14. 3. 2010, 23:30:16
Alphard:
TheRay: > if ($kon) > echo "Formulár bol úspešne odoslaný.<br>"; > else > echo "E-mail sa bohužial nepodarilo odoslať.<br>"; > ?> vypíše toto: Formul�r bol �spe�ne odoslan�. |
||
Alphard Profil |
#8 · Zasláno: 14. 3. 2010, 23:34:22 · Upravil/a: Alphard
Aha, já myslel, že je problém s diakritikou v mailu.
Na té stránce je nutné uvést kódování, ve kterém je napsaná. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> Utf-8 upravte dle skutečnosti. |
||
TheRay Profil |
#9 · Zasláno: 14. 3. 2010, 23:41:09 · Upravil/a: TheRay
Alphard:
Práveže to mám a následuje finkcia autoUTF ktorú som uviedol viššie. <! DOCTYPE html PUBLIC "- / / W3C / / DTD XHTML 1.0 Transitional / / EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Sendemail Script</title> </head> <body> <?php $mail = "mail@mail.cz"; $predmet = $_POST['predmet']; $email = $_POST['email']; $text = ''; ?> </body> </html> |
||
Alphard Profil |
#10 · Zasláno: 15. 3. 2010, 00:04:39
TheRay:
Někde bude chybička. Funkce autoUTF() se stará pouze o email, na stránce nic nemění, v tom problém není. |
||
TheRay Profil |
#11 · Zasláno: 15. 3. 2010, 00:14:46
Alphard:
OK skúsim sa ešte popozerať či mi niekde nechýba lomítko alebo zátvorka či niečo podobné...zatial dakujem |
||
Časová prodleva: 16 let
|
0