Ciao a tutti,
ho uno script in php per l'invio di email in formato html ma... mi sono accorto che a seconda del server in cui si trova funziona oppure no.
su server linux funziona mentre su server windowz no!![]()
posto il codice:
qunalcuno mi sa dire che cosa dovrei modificare in questo script a seconda del server che utilizzo?codice:$address = "abc@nomesito.it"; $header = "From: nomesito.it\n"; $header .= "Bcc: Ricevente Nascosto"; $header .= "X-Mailer: nomesito.it\n"; // generiamo la stringa che funge da separatore $boundary = "==String_Boundary_x" .md5(time()). "x"; // costruiamo le intestazioni specifiche per un messaggio // con parti relazionate $header .= "MIME-Version: 1.0\n"; $header .= "Content-Type: multipart/related;\n"; $header .= " boundary=\"$boundary\";\n\n"; // questa parte del messaggio viene visualizzata // solo se il programma non sa interpretare // i MIME poiché è posta prima della stringa boundary $messaggio = "Se visualizzi questo testo il tuo programma non supporta i MIME\n\n"; // costruiamo la sezione in formato html $messaggio .= "--$boundary\n"; $messaggio .= "Content-Type: text/html; charset=\"iso-8859-1\"\n"; $messaggio .= "Content-Transfer-Encoding: 7bit\n\n"; $messaggio .= " <html> <body> testo della email e immagine </body> </html>"; // costruiamo la sezione contenente l'immagine // cui attribuiamo l'id MiaImmagine123 $messaggio .= "--$boundary\n"; $messaggio .= "Content-ID: <testataemail>\n"; $messaggio .= "Content-Type: image/jpeg\n"; $messaggio .= "Content-Transfer-Encoding: base64\n\n"; // leggiamo il file corrispondente all'immagine dal nostro server $allegato = "testataemail.jpg"; $file = fopen($allegato,'rb'); $data = fread($file,filesize($allegato)); fclose($file); // usiamo la codifica base64 per trasmettere il file $data = chunk_split(base64_encode($data)); $messaggio .= "$data\n\n"; // chiusura del messaggio con la stringa boundary $messaggio .= "--$boundary--\n"; $subject = "Newsletter da nomesito.it"; if(@mail($address, $subject, $messaggio, $header) ) { print "ok"; }else{ print "NON OK"; }
Ringrazio anticipatamente.
![]()

Rispondi quotando
