Autor | Zpráva | ||
---|---|---|---|
another_freak Profil * |
#1 · Zasláno: 2. 11. 2013, 03:52:44
Dobrý večer, mám menší (větší problém) s odesíláním emailu pomocí funkce mail() v php, emai sice dojde se zprávou uvnitř tak jak má být problém je, ale v tom, že netuším proč moje dvě přílohy mají nula kb, když jí ověřím $_FILES pomocí funkce var_dump, tak má obsah a 0 errors, není někde v tom kódu chyba, echo vypíše ok: Pozn: proměnné $product_image a $product_image2 obsahují $_FILES['product_image']['tmp_name] a $_FILES['product_image2']['tmp_name'] a jsou naplněné, obrázky které posílám mají 2-5kb na test, jo a ukaže se pouze, že byl odeslána jedna 0kb příloha, druhá se ani neukáže. Děkuji za jakékoli odpovědi. Mějte se peace. $boundary = md5(time()); // vytvori hash k odeslani souboru $od = $email_kontakt; $do = "$email_prijemce"; $subject = "Nabídka od firmy $firma"; $header .= "From: name <$od> \r\n"; $header .= "MIME-Version: 1.0\r\n" . "Content-Type: multipart/mixed; boundary=$boundary \r\n\r\n" . "Content-Transfer-Encoding: 7bit\r\n". "Nabídka firmy $firma \r\n\r\n". "--$boundary\r\n". "Content-Type: text/plain; charset=utf-8\r\n". "Content-Transfer-Encoding: 8bit\r\n\r\n"; $message = "Firma: $firma \r\n"."WWW stránky: $www_stranky \r\n"."Město: $mesto \r\n"; $message .= "Kategorie: $kategorie \r\n"."Kontaktní osoba: $kontakt_osoba \r\n"."Telefon: $telefon \r\n"; $message .= "Email: $email_kontakt \r\n"."IČO: $ico_kontakt \r\n"."DIČ: $dic_kontakt \r\n"; $message .= "Název nabídky: $nazev_nabidky \r\n"."Cena bez sleva: $cena_bez_slevy \r\n"; $message .= "Cena se slevou: $cena_sleva \r\n"."Počet kuponů: $pocet_kuponu \r\n"."Body nabídky: $body_nabidky \r\n"; $message .= "Popis nabídky: $popis_nabidky \r\n"."Datum spuštění nabídky: $datum_od \r\n"."Datum ukončení nabídky: $datum_do"; $header .= $message."\r\n\r\n"; $header .= "--$boundary \r\n"; $header .= "Content-Type: application/octet-stream; name=$product_image \r\n"; $header .= "Content-Transfer-Encoding: base64 \r\n"; $header .= "Content-Disposition: attachment \r\n\r\n"; $header .= $product_image."\r\n\r\n"; $header .= "Content-Type: application/octet-stream; name=$product_image \r\n"; $header .= "Content-Transfer-Encoding: base64 \r\n"; $header .= "Content-Disposition: attachment \r\n\r\n"; $header .= $product_image2."\r\n\r\n"; $header .= "--$boundary--"; if(mail($do, $subject, "", $header)){ echo "ok"; }else{ echo "někde je chyba"; } Update: Tak jsem to zkusil ještě jednou a toto mi přišlo: untitled-[2].octet-stream 0.1 k [ application/octet-stream ] Stáhnout Zase jedna příloha, novinka má velikost 0.1k |
||
taps Profil * |
#2 · Zasláno: 2. 11. 2013, 06:59:42
Vyzkousej phpmailer
|
||
Medvídek Profil |
#3 · Zasláno: 2. 11. 2013, 08:54:56
another_freak:
Já odesílám v mailu fotky třeba takto: foreach($picMail AS $key=>$val){ if(strlen($val)>100){ $pict = explode("<bindata>",$val); $pictBody .= "--".$boundary_mix.PHP_EOL; $pictBody .= "Content-Type: application/jpeg; name=\"IMG attachment\"".PHP_EOL; $pictBody .= "Content-Transfer-Encoding: base64".PHP_EOL; $pictBody .= "Content-Disposition: attachment; filename=\"".time()."_".$key.".jpg\"".PHP_EOL.PHP_EOL; $pictBody .= chunk_split(base64_encode($pict[1])).PHP_EOL; } } Takže ty tvoje soubory projeď base64 a chunk_split funkcí. Možná bych doplnil i filename. |
||
Časová prodleva: 10 let
|
0