From 79b5d815d68b02e23c792285e1a2ba51deb9d1a9 Mon Sep 17 00:00:00 2001 From: Marcus Bointon Date: Tue, 4 Aug 2020 08:51:48 +0200 Subject: [PATCH] Better error checking & reporting on file uploads --- examples/send_file_upload.phps | 4 +++- examples/send_multiple_file_upload.phps | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/examples/send_file_upload.phps b/examples/send_file_upload.phps index 7c2a86bb..efe0500a 100644 --- a/examples/send_file_upload.phps +++ b/examples/send_file_upload.phps @@ -22,7 +22,9 @@ if (array_key_exists('userfile', $_FILES)) { $mail->Subject = 'PHPMailer file sender'; $mail->Body = 'My message body'; // Attach the uploaded file - $mail->addAttachment($uploadfile, 'My uploaded file'); + if (!$mail->addAttachment($uploadfile, 'My uploaded file')) { + $msg .= 'Failed to attach file ' . $_FILES['userfile']['name']; + } if (!$mail->send()) { $msg .= 'Mailer Error: '. $mail->ErrorInfo; } else { diff --git a/examples/send_multiple_file_upload.phps b/examples/send_multiple_file_upload.phps index cc43a366..22907e4b 100644 --- a/examples/send_multiple_file_upload.phps +++ b/examples/send_multiple_file_upload.phps @@ -16,11 +16,13 @@ if (array_key_exists('userfile', $_FILES)) { $mail->Subject = 'PHPMailer file sender'; $mail->Body = 'My message body'; //Attach multiple files one by one - for ($ct = 0; $ct < count($_FILES['userfile']['tmp_name']); $ct++) { + for ($ct = 0, $ctMax = count($_FILES['userfile']['tmp_name']); $ct < $ctMax; $ct++) { $uploadfile = tempnam(sys_get_temp_dir(), hash('sha256', $_FILES['userfile']['name'][$ct])); $filename = $_FILES['userfile']['name'][$ct]; if (move_uploaded_file($_FILES['userfile']['tmp_name'][$ct], $uploadfile)) { - $mail->addAttachment($uploadfile, $filename); + if (!$mail->addAttachment($uploadfile, $filename)) { + $msg .= 'Failed to attach file ' . $filename; + } } else { $msg .= 'Failed to move file to ' . $uploadfile; }