Autor Zpráva
Pokuston
Profil *
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.
peta
Profil
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 *
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?)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: