Autor | Zpráva | ||
---|---|---|---|
eL Profil * |
#1 · Zasláno: 1. 12. 2008, 14:07:28
Našel jsem si tento skript (má jít o formulář na odesílání příloh z webu), místo ,,příjemce" jsem napsal svojí adresu, ale nefunguje to. nevíte proč?
<HTML> <HEAD> <TITLE>Mail s prilohou</TITLE> </HEAD> <BODY> <? if ($akce == "Odeslat") { /* Bylo stisknuto tlacitko Odeslat */ if ($soubor_name == "") { /* nebyla vybrana priloha, posleme e-mail obycejne */ if (mail ("anketa-x@atlas.cz", 'Zpráva z webu', "$dopis", "From: $odesilatel")) { print "<h3>E-mail byl úspěšně odeslán!</h3>"; } else { print "<h3>E-mail se nepodařilo odeslat!</h3>"; } } else { /* priloha byla vybrana */ /* nejprve sestrojime hlavicky */ $envelope["from"] = "$odesilatel"; $envelope["to"] = "anketa-x@atlas.cz"; /* nyni sestrojime nekolik casti dopisu */ /* 1. cast - uvodni, tou rekneme, ze dopis ma vice casti s ruznymi typy dat */ $part1["type"] = TYPEMULTIPART; $part1["subtype"] = "mixed"; /* 2. cast - do dopisu pripojime prilohu */ /* nejprve zadany soubor nacteme */ Copy($soubor, $soubor_name); /* uploadnuty soubor zkopirujeme z docasneho adresare */ $f = fopen ($soubor_name, "r"); /* otevren pro cteni */ $obsah = fread ($f, filesize($soubor_name)); /* nacteme obsah do promenne */ fclose ($f); $part2["type"] = TYPEAPPLICATION; $part2["encoding"] = ENCBINARY; $part2["subtype"] = "octet-stream"; $part2["description"] = basename($soubor_name); $part2["contents.data"] = "$obsah"; /* 3. cast - do dopisu vlozime zadany text */ $part3["type"] = TYPETEXT; $part3["subtype"] = "plain"; $part3["description"] = "text"; $part3["contents.data"] = $dopis; /* Cely dopis ulozime do pole body */ $body[1] = $part1; $body[2] = $part2; $body[3] = $part3; /* celou zpravu vytvorime a ulozime do promenne $zprava: */ $zprava = imap_mail_compose ($envelope, $body); /* drive nez posleme zpravu funkci Mail musime rozdelit zvlast hlavicku a zvlast telo: */ $pom = StrPos($zprava, "\r\n\r\n"); $hlavicka = SubStr($zprava, 0, $pom+2); $telo = SubStr($zprava, $pom, StrLen($zprava) - $pom); if (mail ("anketa-x@atlas.cz", 'Zpráva z webu', $telo, $hlavicka)) { print "<h3>E-mail byl úspěšně odeslán!</h3>"; } else { print "<h3>E-mail se nepodařilo odeslat!</h3>"; } } } ?> <HR SIZE=1 NOSHADE> <FORM ACTION="send.php" METHOD="post" ENCTYPE="multipart/form-data"> Odesílatel: <INPUT TYPE="text" NAME="odesilatel" VALUE="" SIZE=50 MAXLENGTH=50><BR> Příjemce: <INPUT TYPE="text" NAME="prijemce" VALUE="" SIZE=50 MAXLENGTH=50><BR> <BR> Text:<BR> <TEXTAREA NAME="dopis" COLS="50" ROWS="10"></TEXTAREA><BR> Soubor: <INPUT TYPE="file" NAME="soubor"> <BR> <INPUT TYPE="submit" NAME="akce" VALUE="Odeslat"><BR> </FORM> </BODY> </HTML> |
||
Holyday Profil |
#2 · Zasláno: 1. 12. 2008, 15:31:30
Jak to konkrétně nefunguje? Nepošle vůbec? Pošle, ale ne kompletní zprávu? Kde bereš proměnnou $dopis? $odesilatel? A možná i další, celé jsem to neprocházel.
|
||
eL Profil * |
#3 · Zasláno: 1. 12. 2008, 16:29:55
Nepošle to vůbec nic.
|
||
nightfish Profil |
#4 · Zasláno: 1. 12. 2008, 16:45:58
1) short_open_tag
2) register_globals |
||
Časová prodleva: 15 let
|
0