Se cerchi un form mail con il codice necessario per spedire la email e le spiegazioni credo che clikkandoqui puoi trovare ed è il posto giusto dove guardare ed imparare.
ciao francesca!
Se cerchi un form mail con il codice necessario per spedire la email e le spiegazioni credo che clikkandoqui puoi trovare ed è il posto giusto dove guardare ed imparare.
ciao francesca!
A me non serve l'allegato, potreste dirmi quale parte di codice devo eliminare?
Grazie!
Lo script che ho è questo, è leggermente modificato (funge da mailinglist), ma funziona, il body (con <html><heade> etc etc) gli arriva da un'altra pagina.
Il fatto è che su outlook quando mando le e-mail spunta l'icona dell'allegato, anche se in realtà non c'è. Ho tolto alcune stringhe, ma penso ce ne siano altre da togliere, quali?!?!??!
Che faccio?Codice PHP:$query = "select * from newsletter";
$risultato = mysql_query($query) or die("Errore:".mysql_error());
$num_risultati = mysql_num_rows($risultato);
while($row = mysql_fetch_array($risultato)){
$to = "$row[e_mail]"; //indirizzi e-mail
$mess = stripslashes("$body"); //corpo del testo
$subject = "$soggetto"; //soggetto dell'e-mail
$mailheaders1 = "From: Musicity.org <postmaster@musicity.org>"; //headers
$time = date("j/m/Y - H:i"); //data
$intestazioni = "$mailheaders1\nReply-To: [email]postmaster@musicity.org[/email] \n\nX-Mailer: Sismail Web Email Interface\nContent-type: multipart/mixed;\n boundary=\"Message-Boundary\"\n";
$body_top = "--Message-Boundary\n";
$body_top .= "Content-type: text/html; charset=iso-8859-1\n";
$body_top .= "Content-description: Mail message body\n\n";
$msg_body = $body_top . $mess;
$msg_body .= "\n\n--Message-Boundary\n";
$msg_body .= "--Message-Boundary--\n";
mail($to, $subject, $msg_body, $intestazioni); //e-mail
}
echo("
La newsletter è stata inviata!</p>
[b]Subject:[/b]
$soggetto</p>
[b]Body:[/b]
$body</p> "); //messaggio di conferma
HELP!!!
E se non volessi avere restrizioni a proposito degli allegati!?
Insomma... ho la necessità di recapitare mail all'amministratore di un sistema con allegato... ma non so mica che estensione avrà quell'allegato! PLEASE help!!!![]()
Ho utilizzato questa pillola.
1. Mi invia la mail in formato HTML correttamente
2. Mi allega il file correttamente
Problema
Il pdf in allegato, quando lo vado ad aprire mi da msg d'errore 'file
danneggiato'.
Grazie in anticipo a chi mi da una mano.
Ecco il codice inserito (riferito all'invio dell'allegato pdf già salvato
sul server):
PHP:
<?
$mess="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
<HTML><HEAD>
<META http-equiv=Content-Type content=\"text/html; charset=iso-8859-1\">
<STYLE>
H5 {text-align: justify; text-decoration: none; color: #333333; font-size:
12px; font-family: Arial}
A:link, A:visited, A:hover { color: #CC0000 }
</STYLE>
</HEAD>
<BODY>
<DIV>Gentile utente,
con la presente alleghiamo la fattura relativa all'importo versato.
Con l'occasione porgiamo cordiali saluti.
</BODY></HTML>";
/*Nella variabile $mess va inserito tutto il codice html che comporrà il
corpo dell'email che si vuole inviare. Come nell'esempio si possono
utilizzare anche i fogli di stile.*/
$e="$a5"; /*Inserire l'indirizzo email a cui si vuole spedire l'email*/
$ogg="Oggetto msg"; /*Inserire l'oggetto dell'email da spedire*/
$mittente="info@miodominio.it"; /*Inserire l'indirizzo email che verrà
visulaizzato come mittente dell'email*/
$reply="info@miodominio.it"; /*Inserire l'indirizzo email a cui verranno
inviate le risposte all'email inviata*/
$titolo="{$a10}_{$a1}_{$a2}_{$a8}.pdf"; /*Inserire il nome che si vuole dare
allegato*/
$f="E:/Fatture/gen-feb-mar04/{$a10}_{$a1}_{$a2}_{$a8}.pdf"; /*Inserire
l'indirizzo del file che si vuole inviare come allegato*/
$filetype="application/pdf"; /*Inserire il formato MIME del file da
allegare*/
/*Non modificare nulla al di sotto di questa linea*/
$intestazioni = "From: $mittente\nReply-To: $reply\nX-Mailer: Sismail Web
Email Interface\nMIME-version: 1.0\nContent-type: multipart/mixed;\n
boundary=\"Message-Boundary\"\nContent-transfer-encoding:
7BIT\nX-attachments: $titolo";
$body_top = "--Message-Boundary\n";
$body_top .= "Content-type: text/html; charset=iso-8859-1\n";
$body_top .= "Content-transfer-encoding: 7BIT\n";
$body_top .= "Content-description: Mail message body\n\n";
$msg_body = $body_top . $mess;
$filez = fopen($f, "r");
$contents = fread($filez, filesize($f));
$encoded_attach = chunk_split(base64_encode($contents));
fclose($filez);
$msg_body .= "\n\n--Message-Boundary\n";
$msg_body .= "Content-type: $filetype; name=\"$titolo\"\n";
$msg_body .= "Content-Transfer-Encoding: BASE64\n";
$msg_body .= "Content-disposition: attachment; filename=\"$titolo\"\n\n";
$msg_body .= "$encoded_attach\n";
$msg_body .= "--Message-Boundary--\n";
if(!(@mail($e,$ogg,$msg_body, $intestazioni)))
{echo "E-Mail non inviata";}
else {echo "E-Mail inviata";}
?>
Originariamente inviato da daniele_dll
mmm
è + pesante e lento...xche il server deve aprire 1 connessione e fare 1 disconnessione x ogni mail...
il che vuol dire che ammazzi il server!
esistono CC e BCC proprio x questo motivo :P
e se proprio ne vuoi fare a meno...ti scrivi la classettina che invia le mail...e quando lanci il comando DATA subito dopo non invii il quit ma ricominci ad inviare le informazioni.
Modo veloce ed efficace...professionale x come dici tu...e sicuramente meno pesante
Originariamente inviato da bubu sette sette
Ti puoi spiegare meglio per i comuni mortali![]()
mi aggrego, visto che sul mio server ho lo stesso problema,caro Daniele ma cossa ti xe drio dir?-veneziano non è un comando dos:cosa stai dicendo?- poi darci qualche altra indicazione a noi uomini di buona volontà?
questa vita è come un pampers, appena lo cambi e già sporco di mer__
Già, illuminaci daniele_dll!![]()
Caro Dedozzo la latitanza di Daniele è plausibile visto che la spiegazione al quesito è presente nel manuale PHP dove si illustra la funzione mail,c'è un esempio abbastanza chiaro.
Il succo è quello di comunicare direttamente con il programma che invia la posta bypassando la funzione mail, così facendo utilizzando un ciclo si risparmia una operazione di apertura comunicazione e chiusura per ogni messaggio inviato.
..........
Here's a function I'm continually working at to send multiple emails while only opening the socket once (much faster than mail()) while sending a separate email to each address. It also includes many headers which you can adjust to your liking. Note the comment which explains the array format for incoming "To:" addresses.
<?php
function socketmail($toArray, $subject, $message) {
// $toArray format --> array("Name1" => "address1", "Name2" => "address2", ...)
ini_set(sendmail_from, "myemail@address.com");
$connect = fsockopen (ini_get("SMTP"), ini_get("smtp_port"), $errno, $errstr, 30) or die("Could not talk to the sendmail server!");
$rcv = fgets($connect, 1024);
fputs($connect, "HELO {$_SERVER['SERVER_NAME']}\r\n");
$rcv = fgets($connect, 1024);
while (list($toKey, $toValue) = each($toArray)) {
fputs($connect, "MAIL FROM:myemail@address.com\r\n");
$rcv = fgets($connect, 1024);
fputs($connect, "RCPT TO:$toValue\r\n");
$rcv = fgets($connect, 1024);
fputs($connect, "DATA\r\n");
$rcv = fgets($connect, 1024);
fputs($connect, "Subject: $subject\r\n");
fputs($connect, "From: My Name <myemail@address.com>\r\n");
fputs($connect, "To: $toKey <$toValue>\r\n");
fputs($connect, "X-Sender: <myemail@address.com>\r\n");
fputs($connect, "Return-Path: <myemail@address.com>\r\n");
fputs($connect, "Errors-To: <myemail@address.com>\r\n");
fputs($connect, "X-Mailer: PHP\r\n");
fputs($connect, "X-Priority: 3\r\n");
fputs($connect, "Content-Type: text/plain; charset=iso-8859-1\r\n");
fputs($connect, "\r\n");
fputs($connect, stripslashes($message)." \r\n");
fputs($connect, ".\r\n");
$rcv = fgets($connect, 1024);
fputs($connect, "RSET\r\n");
$rcv = fgets($connect, 1024);
}
fputs ($connect, "QUIT\r\n");
$rcv = fgets ($connect, 1024);
fclose($connect);
ini_restore(sendmail_from);
}
?>
questa vita è come un pampers, appena lo cambi e già sporco di mer__
molto utile![]()
ma anche a me il file allegato inviato da una macchina win non è leggibile, qualcuno ha risolto?![]()
se ho capito bene è un bug di php 4.3.3 su WindowsOriginariamente inviato da dvds
molto utile![]()
ma anche a me il file allegato inviato da una macchina win non è leggibile, qualcuno ha risolto?![]()
![]()
speriamo che nessuno controlli le mail che partono dal server linux della scuola![]()