Buogiorno a tutti,
utilizzo un form per invio email dal sito web, lo script che allego è diviso in tre parti e funziona perfettamente per inviare un solo allegato.
L'esigenza è quella di inviare con la stessa email 2 allegati, come posso modificarlo? il tutto si basa sulla classe PHPmailer.
Allego i tre step attuali, in ordine: il form, il recupero delle variabili e la funzione di invio.
Nel form ho aggiunto la seconda voce uploadfile1.
FORM:
RECUPERO DELLE VARIABILI:
INVIO EMAIL:
utilizzo un form per invio email dal sito web, lo script che allego è diviso in tre parti e funziona perfettamente per inviare un solo allegato.
L'esigenza è quella di inviare con la stessa email 2 allegati, come posso modificarlo? il tutto si basa sulla classe PHPmailer.
Allego i tre step attuali, in ordine: il form, il recupero delle variabili e la funzione di invio.
Nel form ho aggiunto la seconda voce uploadfile1.
FORM:
HTML:
<!DOCTYPE html>
<html dir="ltr" lang="en-US"><head>
<meta charset="utf-8">
<title>xxxxxxx</title>
<meta name="viewport" content="initial-scale = 1.0, maximum-scale = 1.0, user-scalable = no, width = device-width">
</head>
<body>
<form action="mail2.php" enctype="multipart/form-data" method="POST">
<input name="numT" type="text" value="[email protected]" />
<table>
<tr>
<td>Mittente: </td>
<td><input name="mitt" type="text" value="[email protected]" /></td>
</tr>
<tr>
<td>Oggetto: </td>
<td><input name="subj" type="text" /></td>
</tr>
<tr>
<td>Messaggio: </td>
<td><textarea name="msg"></textarea></td>
</tr>
<tr>
<td>Carica File</td>
<td><input name="uploadfile" type="file" />
<td><input name="uploadfile1" type="file" />
</td>
</tr>
</table>
<input class="butt" type="submit" value="Invia!" />
</form>
</body></html>
RECUPERO DELLE VARIABILI:
PHP:
<?
require_once("class.phpmailer.php");
include 'functions_contact.php';
$msg = $_POST['msg'];
$subj = $_POST['subj'];
$from = $_POST['mitt'];
$dest = $_POST['numT'];
$doc = false;
$tit = '';
if(is_uploaded_file($_FILES['uploadfile']['tmp_name'])){
if ($_FILES['uploadfile']['error'] == 0){
echo "Upload terminato con successo: ";
echo "Nome file: ".$_FILES['uploadfile']['name']."";
echo "Dimensione file (kB): ".number_format((($_FILES['uploadfile']['size'])/8)/(1024), 2, '.', '')."";
echo "Tipo MIME file: ".$_FILES['uploadfile']['type'];
}else{
if ($_FILES['uploadfile']['error'] == 2)
die("Errore, file troppo grande: il massimo consentito è 1MB");
else
die("Errore, impossibile caricare il file");
}
echo '';
$doc = file_get_contents($_FILES['uploadfile']['tmp_name']);
$tit = $_FILES['uploadfile']['name'];
}else{
$doc = false;
$tit = '';
}
sendMail($dest, $msg, $subj, $mitt, $mitt, $doc, $tit);
?>
INVIO EMAIL:
PHP:
<?
function sendMail($dest, $msg, $subj, $from, $rep_to, $doc, $tit){
$msg = utf8_decode($msg);
$subj = utf8_decode($subj);
$mail = new PHPmailer();
$mail->From=$from;
$mail->FromName='xxxxxxx';
$mail->AddAddress($dest);
$mail->AddReplyTo($rep_to);
$mail->Subject=$subj;
$mail->Body=$msg;
if($doc != false)
$mail->AddStringAttachment($doc, $tit, 'base64', 'application/octet-stream');
if(!$mail->Send()){
echo "ERRORE: ".$mail->ErrorInfo;
}else{
echo 'Email inviata correttamente!';
}
unset($mail);
}
?>