我有一个简单的表格:
<form>
....
<input type="hidden" name="MAX_FILE_SIZE" value="100000"> <input name="allegato" type="file" multiple>
....
</form>
&#13;
用PHPmailer构建的validete脚本php:
<?php session_start();
//Percorso dove raccoglieremo gli allegati
$percorso = "allegati";
//Raccolta dati form
$marca = $_POST['marca'];
$modello = $_POST['modello'];
$immatricolazione = $_POST['immatricolazione'];
$carburante = $_POST['carburante'];
$cilindrata = $_POST['cilindrata'];
$nditarga = $_POST['nditarga'];
$infosinistro = $_POST['infosinistro'];
$nome = $_POST['nome'];
$cognome = $_POST['cognome'];
$telefono = $_POST['telefono'];
$email = $_POST['email'];
$datipers = $_POST['datipers'];
$newsletter = $_POST['newsletter'];
//Upload dell'allegato
move_uploaded_file($_FILES['allegato']['tmp_name'], $percorso.$_FILES['allegato']['name']);
//Messaggio
$oggetto = "Nuova richiesta preventivo";
$messaggio = " Hai ricevuto i seguenti dati da $nome $cognome <br> Marca: $marca <br> Modello: $modello \r\n Immatricolazione: $immatricolazione \r\n Carburante: $carburante \r\n Cilindrata: $cilindrata \r\n N. di Targa: $nditarga \r\n Maggiori info sul Sinistro: $infosinistro \r\n\r\n Dati del cliente: $nome $cognome \r\n N. di telefono: $telefono \r\n Indirizzo e-mail: $email \r\n\r\n $datipers \r\n $newsletter \r\n";
//Inclusione della libreria
require_once("class.phpmailer.php");
//Creiamo un oggetto PHPMailer e ne settiamo le variabili
$mail = new PHPMailer();
$mail->From = "$email";
$mail->FromName = "$email";
$mail->AddAddress("antonio.junior98@libero.it");
$mail->IsHTML(true);
$mail->Subject = $oggetto;
$mail->Body = $messaggio;
$mail->AddAttachment($percorso.$_FILES['allegato']['name']);
//Inviamo l'email
if($mail->Send())
echo "Email inoltrata correttamente";
?>
&#13;
我的问题是多个附件。我不知道如何添加更多。 这是我工作的一个月,但我不能。你有什么解决方案吗?谢谢。
Antonio Jr.:)
答案 0 :(得分:1)
更改
$mail->AddAttachment($percorso.$_FILES['allegato']['name']);
要
$mail->AddAttachment($percorso.$_FILES['allegato']['tmp_name']);
再次使用该方法和另一个文件,它会将它添加到附加的文件中!
修改强>
我意识到你的文件输入中有“多个”属性。
您希望附加所有这些文件。好的,我们必须知道,当你有“多个”属性时,文件将被存储在一个“怪异”的数组中。
第一个文件是$_FILES['inputname']['tmp_name'][0]
第二个文件是$_FILES['inputname']['tmp_name'][1]
等等。这就是你添加这些附件的方式。
如果您想获得多个上传文件的大小,请使用:
`$_FILES['inputname']['size'][0]` -> Size of the first file
`$_FILES['inputname']['size'][1]` -> Size of the second file
答案 1 :(得分:0)
尝试这个
^