Autor | Zpráva | ||
---|---|---|---|
Pokuston Profil * |
#1 · Zasláno: 7. 3. 2008, 03:11:10
Chtěl bych udělat jednoduchý emailový formulář na webové stránce, v němž uživatel vyplní svojí emailovou adresu a text zprávy. Obě dvě pole se po odeslání formuláře zpracují (zformátují do textu zprávy) v php a funkcí mail() se pošlou na můj email na gmailu.
(Až pocamcaď to mám a funguje to, jak má.) Uživatelem zadaná emailová adresa se navíc přidá do hlavičky emailu jako položka Reply-To, abych při volbě odpovědět odpovídal rovnou uživateli vyplnivšímu formulář. (A tu mám problém.) Přidání položky Reply-To funguje (když si prohlédnu hlavičku doručeného emalu, je tam), ale při volbě odpovědět se odpovídá na email uvedený ve From, nikoliv na email z Reply-To. Nemáte nápad, co jsem tak mohl udělat blbě? _____________ Nějaké relevantní podrobnosti pod čarou: Kus kodu odesilajici email: $hlavicka = 'From: '.EMAIL_SENDER."\r\n"; $hlavicka.= 'Reply-To: '.htmlspecialchars($_POST['from']); $message = 'Od: '.htmlspecialchars($_POST['from']). "\n". 'Komu: '.EMAIL_RECEIVER. "\n". 'Zprava:'."\n\n". $_POST['message']. "\n"; if (!@mail (EMAIL_RECEIVER, 'Web Form Message', $message, $hlavicka)) ... Spodni cast doruceneho emailu: To: moje.adresa.na.gmailu@gmail.com Subject: Zprava z formulare From: Webovy formular <moje.adresa.na.gmailu@gmail.com> Reply-To: email.vyplneny.ve.formulari@seznam.cz Od: email.vyplneny.ve.formulari@seznam.cz Komu: moje.adresa.na.gmailu@gmail.com Zprava: testovaci zprava cislo 1. |
||
Časová prodleva: 3 dny
|
|||
peta Profil |
#2 · Zasláno: 10. 3. 2008, 08:11:40
Pokuston
cz.php.net/mail Nauc se PHP. Z dotazu, jestli to chapu, tak chces, aby jsme za tebe vsechno delali, protoze neumis napsat jednoduchou funkci nebo html formular. function posli_mail($from, $to, $text) { ... mail(...) } posli_mail("lojza@post.cz","pepa@post.cz","ahoj"); posli_mail("pepa@post.cz","lojza@post.cz","nazdar"); V cem vidis problem? Odkaz na stranku take nikde... Rekneme, ze mas formular napis_mail. Rekneme, ze je spravne ukoncen znackou /FORM. Tento formular pak pridava novy mail. Pak mas uplne jiny formular, kde misto from je jiny mail a po jeho odeslani se ti posle na tuto adresu mail. V cem vidis problem? Predpokladam, e je problem v tom, ze jsi nepochopil, ze ten druhy musi byt uplne jiny formular mimo prvni formular. Je uz jedno, zda to bude pres POST nebo GET, hlavne to musis spravne napsat a pak precist ze spravneho pole GET/POST |
||
Pokuston Profil * |
#3 · Zasláno: 11. 3. 2008, 02:03:11
peta: Díky za snahu pomoct, ale zdá se, že přes veškeré úsilí jsem asi svůj problém popsal špatně.
Formulář v html je v pořádku, data z něj v pořádku dorazí do php skriptu. Email odesílám funkcí mail(string $to, string $subject, string $message, string $additional_headers). Příjemce emailu je konstanta (můj email), předmět je konstanta, text zprávy se sestavuje z hodnot formulářových polí jak má. Odesílatele (položka From:) přidávám do $additional_headers, a jako odesílatele uvádím svojí adresu (kdyby se něco rozbilo, tak aby reporty o chybě nechodili někomu jinému). Email zadaný uživatel jsem do $additional_headers přidal jako položku Reply-To: v naději, že mi sice přijde email ode mě pro mě, ale když dám odpovědět, předvyplní se mi adresa zadaná uživatelem. Problém vidím v tom, že email sice dorazí, hlavička emailu je přesně dle mého očekávání, ale když zvolím odpovědět, předvyplní se mi adresa z From, nikoliv adresa z Reply-To. (To mě vede k úvaze, že tam to Reply-To dávám nějak blbě. Položka From: ve stringu $additional_headers je od položky Reply-To: oddělená "\r\n". Je teď ten problém formulován alespoň trochu lépe?) |
||
Časová prodleva: 16 let
|
0