[ SmilieBG @ 25.11.2003. 20:49 ] @
Pozdrav svima! Imam mali "izazov" pred sobom i sve ideje su dobro dosle. Radi se o sledecem: Server Unix/Apache; Na serveru imam 1 html, 1 php i 1 sql fajl. U html se unose vrednosti, php ih obradjuje, ispunjava sql fajl sa vrednostima unetim u html fajlu (forma), a zatim salje mail sa sql fajlom kao attachment. Medjutim, mail treba da se posalje na 2 adrese (1 to: i 1 cc:). Od toga, samo to primaoc treba da dobije sql fajl, dok CC: treba da dobije samo body koji je poslat i na to:. Uspeo sam da fajl ide na obe adrese, medjutim, u trenutnom codu oba primaoca (to: i cc:) dobijaju i attachment. Medjutim ljudi koji ispunjavaju html formular dobijaju CC (kao potvrdu), ali ne koriste sql fajl i ne bih zeleo ni da im se salje. E, sada, razmisljao sam da napravim sledece: Code: <? // code koji cita formular, pravi SQL itd... ... // kreiranje mail headera $headers = "MIME-Version: 1.0\r \n"; $headers .= "Content-type: text/plain; charset=iso-8859-1\r \n"; $headers .= "From: \"TaskForce\" <$reply>\r \n"; $headers .= "Reply-To: \"$reply\" <$reply>\r \n"; $headers .= "Cc: $reply\r\n"; $headers .= "X-Priority: 3\r \n"; $headers .= "X-MSMail-Priority: High\r \n"; $headers .= "X-Mailer: Just My Server"; // slanje mail-a if (mail($to, $subject, $message, $headers)) { echo "Mail je uspesno poslat"; // ovde bi isao II mail, bez attachment! mail($to, $subject, $message_bez_attachment) } else { echo "Pojavila se greska. Pokusajte ponovo"; } ?> Iz gornjeg se vidi da bi se za vreme (uspesnog) slanja I maila, slao i drugi... E, sad ono jedno ALI! Body mail-a koji se kreira je poprilicno dugacak i jedini nacin koji sam nasao da ukljucim attachment jeste sledeci: Code: $message .= "This is a multi-part message in mime format\n\n"; $message .= "--".$bound."\n"; $message .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n"; $message .= "Content-Transfer-Encoding: 8bit;\n\n"; $message .= "Optie: $optie_optie \n\r Actie: $optie_actie \n\r " ."Username: $username \n\r".preg_replace("/\r\n/i", "\n", $msg)."\n\n"; $message .= "--".$bound."\n"; $message .= "Content-Type: text/plain\n"; $message .= "Content-Transfer-Encoding: base64\n"; $message .= "Content-Disposition: attachment; filename=\"$attach\"\n\n"; set_magic_quotes_runtime(0); $attachment = fread(fopen("$fl/$attach", "rb"), filesize("$fl/$attach")); $attachment = chunk_split(base64_encode($attachment)); $attachment = preg_replace("/\r\n/i", "\n", $attachment); $message .= "$attachment"; $message .= "\n"; $message .= "--".$bound."--\n\n"; Ne pitajte me sta sta znaci, jer ni sam ne znam, code je "pozajmljen" ;-) Bitno je samo da $message ide za body... E, sad, kako ja da posaljem 2 maila, sa identicnim body, a da jedan ima attachment a drugi ne? Inace, ovo gore je samo deo od $message code, koji sve ukupno ima ~500 linija coda. html naime ima nekoliko text box i 1 drop down meni (14 parametara) i za svaku kombinaciju je drugaciji message. Ne bih zeleo da moram da copy & paste 500 linija coda da bih poslao 2 maila jedan sa i jedan bez attachment... Ajde ideje sad plz :) Prakticno, treba mi ideja ili resenje kako da ubacim attachment a da se isto NE dogadja unutar body. Da li header ima te mogucnosti na UNIX/Apache platformi? Ko zeli/ima volje - MSN: [email protected] Pozdrav i hvala unapred. Sale [Ovu poruku je menjao -zombie- dana 26.11.2003. u 02:03 GMT] |