seguendo la guida di gm sul suo sito ho cercato di associarla alle mie esigenze.
In pratica l'email che devo inviare la mando a un centinaio di indirizzi presenti in un database.
Lo script manda l'email ma non esce il nome che ho impostato io, ma quello predefinito del server.
questo e' il codice che sto usando:
Sono anche riuscito a far uscire il nome impostato nei parametri sopra, ma poi l'email si leggeva male, usciva una cosa cosi':Codice PHP:<?php
$host = "miohost";
$db_nome = "miodatabase";
$db_user = "miouser";
$db_pass = "miapass";
$nome_tabella = "nome_della_tabella";
$connessione = @mysql_connect("$host","$db_user","$db_pass")
or die("Impossibile stabilire una connessione.");
$db = @mysql_select_db($db_nome, $connessione)
or die("Impossibile selezionare il database.");
$sql = "select * from $nome_tabella order by id asc";
$risultato = @mysql_query($sql,$connessione)
or die("Impossibile eseguire l'interrogazione.");
while ($riga = mysql_fetch_assoc($risultato)) {
$id = $riga['id'];
$email = $riga['email'];
$nome="Ufficio";
$email_nostra="info@miosito.it";
$mittente="$nome <$email_nostra>";
// RENDIAMO LO SCRIPT COMPATIBILE CON LE VERSIONI DI PHP < 4.1.0
if(!isset($_POST)) $_POST = $HTTP_POST_VARS;
if(!isset($_FILES)) $_FILES = $HTTP_POST_FILES;
// RIPULIAMO I VARI CAMPI DEL MODULO
$Soggetto = trim(stripslashes($_POST["Soggetto"]));
$Contenuto = trim(stripslashes($_POST["Contenuto"]));
// ASSEGNIAMO A VARIABILI PIU' LEGGIBILI, LE PROPRIETA' DELL'ALLEGATO
$attach = $_FILES["allegato"]["tmp_name"];
$file_name = $_FILES["allegato"]["name"];
$file_type = $_FILES["allegato"]["type"];
$file_size = $_FILES["allegato"]["size"];
// DELIMITATORE
$boundary = md5(uniqid(microtime()));
// APRIAMO L'ALLEGATO PER LEGGERLO E CODIFICARLO
$file = @fopen($attach, "r");
$contents = @fread($file, $file_size);
$encoded_attach = chunk_split(base64_encode($contents));
@fclose($file);
// INTESTAZIONI DELLA MAIL
$mail_headers .= "MIME-version: 1.0\n";
$mail_headers .= "Content-type: multipart/mixed; boundary=\"$boundary\"\n";
$mail_headers .= "Content-transfer-encoding: 7BIT\n";
$mail_headers .= "X-attachments: $file_name\n";
// COSTRUIAMO IL CORPO DELLA MAIL
$mail_body = "--$boundary\n";
$mail_body .= "Content-Type: text/plain; charset=us-ascii\n";
$mail_body .= "Content-Transfer-Encoding: 7bit\n\n";
$mail_body .= "$Contenuto\n\n";
$mail_body .= "--$boundary\n";
$mail_body .= "Content-type: $file_type; name=\"$file_name\"\n";
$mail_body .= "Content-Transfer-Encoding: BASE64\n";
$mail_body .= "Content-disposition: attachment; filename=\"$attach_name\"\n\n";
$mail_body .= "$encoded_attach\n";
$mail_body .= "--$boundary--\n";
// INVIO DELLA MAIL
if(@mail($email, $Soggetto, $mail_body, $mail_headers)) { // SE L'INVIO E' ANDATO A BUON FINE...
echo "La mail è stata inoltrata con successo.";
} else {// ALTRIMENTI...
echo "Si sono verificati dei problemi nell'invio della mail.";
}
}
?>
non so dove devo piazzare questo:codice:--532ad06c1fe9d0f03376f1836481e47a Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit testo scritto nel corpo del messaggio --532ad06c1fe9d0f03376f1836481e47a Content-type: ; name="" Content-Transfer-Encoding: BASE64 Content-disposition: attachment; filename="" --532ad06c1fe9d0f03376f1836481e47a--
$mail_headers="From: $mittente";
Chi mi sa aiutare

Rispondi quotando

