Autor | Zpráva | ||
---|---|---|---|
Adam233 Profil * |
Dobrý den,
chci si na své stránkách udělat jednoduchý formulář na odesílání emailů. Používám níže uvedený kód. Ale potřeboval by jsem, aby jsem tam měl i položku jméno a při příchodu emailu do mé schránky se zobrazilo jméno odesílatele a až po rozkliknutí emailová adresa, tak jako to bývá u klasických e-malů. Zkoušel jsem to dělat několika způsoby, ale vždy mi to hodí chybu. Předem děkuji za jakoukoliv radu. <form action="odeslat.php"> Jmeno: <input name="jmeno"><br> Mail příjemce: <input name="prijemce"><br> Váš mail: <input name="mail_odesilatele"><br> Předmět: <input name="predmet"><br> Zpráva: <textarea name="zprava"></textarea><br> <input type=submit value="Odeslat"> </form> //odeslat.php <? if ( Mail($prijemce, $predmet, $zprava, "From: " . $mail_odesilatele,$jmeno) ) echo "Mail byl odeslán"; else echo "Mail se nepodařilo odeslat"; ?> Moderátor Davex: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
|
||
ShiraNai7 Profil |
#2 · Zasláno: 3. 6. 2010, 23:08:12 · Upravil/a: ShiraNai7
U inputu ti chybi urceni typu a v kodu bych rekl ze spolehas na register globals.. a funkce mail() s velkym M?
|
||
panther Profil |
#3 · Zasláno: 3. 6. 2010, 23:11:00
ShiraNai7:
„U inputu ti chybi urceni typu“ nechybí, defaultní hodnota je text. „a funkce mail() s velkym M?“ proč ne? |
||
ShiraNai7 Profil |
#4 · Zasláno: 3. 6. 2010, 23:19:29
Tak je snad dobrým zvykem typ uvádět a také používat jméno funkce takové, jaké je v dokumentaci.. A když už jsme u toho, tak e-maily s nastaveným From z PHP některé spam filtry rády zahazují (třeba gmail) - a mají k tomu dobrý důvod.
A z věty ale vždy mi to hodí chybu vyvodím leda tak velké kulové. Takže jakou chybu? |
||
Adam233 Profil * |
#5 · Zasláno: 3. 6. 2010, 23:22:14
chyba: Warning: mail() [function.mail]: SAFE MODE Restriction in effect. The fifth parameter is disabled in SAFE MODE. in /home/free/ic.cz/c/cirisek/root/www/odeslat.php on line 1
Mail se nepodařilo odeslat |
||
ShiraNai7 Profil |
#6 · Zasláno: 3. 6. 2010, 23:33:42
Predavas funkci mail() nejaky paty argument, ktery je v PHP SAFE MODE (bezpecny rezim PHP) vypnuty. Ten paty se pouziva pro predavani nejakych parametru prikazovemu radku, ktery spousti aplikaci co posila maily.. takze to uplne vynech. Pokud si chtel pridat jmeno odesilatele jako soucast e-mailove adresy, tak to se dela takto:
<?php if (mail($prijemce, $predmet, $zprava, "From: " . $mail_odesilatele.'<'.$jmeno.'>')) echo "Mail byl odeslán"; else echo "Mail se nepodařilo odeslat"; ?> |
||
Davex Profil |
#7 · Zasláno: 3. 6. 2010, 23:45:21
ShiraNai7:
Dovolím si to mírně upravit. Ještě tam zůstává chyba, že to spoléhá na zapnuté register_globals a že bude pravděpodobně v e-mailu špatně čeština (tu řeší PHP FAQ - problémy s e-maily). <?php if (mail($prijemce, $predmet, $zprava, "From: " . $jmeno . '<' . $mail_odesilatele . ">\n")) echo "Mail byl odeslán"; else echo "Mail se nepodařilo odeslat"; ?> |
||
Adam233 Profil * |
#8 · Zasláno: 3. 6. 2010, 23:53:35
děkuji moc za pomoc, tohle je přesně to co jsem potřeboval
|
||
Časová prodleva: 14 let
|
0