PHPMailer:附加位于服务器上的文件

PHPMailer:附加位于服务器上的文件,php,attachment,phpmailer,Php,Attachment,Phpmailer,我正在尝试使用PHPMailer发送最多4个附件。这些文件在我的服务器上 我的脚本就是这样工作的: 用户看到一份工作或简历,并使用联系人表单与他们联系。联系人表单将数据与附件一起存储在服务器上。然后,我们将查看过滤垃圾邮件/诈骗的消息。如果消息是真实的,那么我们将通过发送消息 我的信息存储在服务器上,我可以通过电子邮件发送这些信息,但是附件没有发送 以下是用于发送邮件的代码: if ($_GET['status'] == 'approve') { $id = $_GET['id'];

我正在尝试使用PHPMailer发送最多4个附件。这些文件在我的服务器上

我的脚本就是这样工作的:

用户看到一份工作或简历,并使用联系人表单与他们联系。联系人表单将数据与附件一起存储在服务器上。然后,我们将查看过滤垃圾邮件/诈骗的消息。如果消息是真实的,那么我们将通过发送消息


我的信息存储在服务器上,我可以通过电子邮件发送这些信息,但是附件没有发送

以下是用于发送邮件的代码:

if ($_GET['status'] == 'approve') {

    $id = $_GET['id'];

    dbconnect($dbuser, $dbpass, $db);

    $sql = "SELECT * FROM $db.mail WHERE id = $id";
    $results=mysql_query($sql) or die(mysql_error());

    while($row = mysql_fetch_array($results, MYSQL_ASSOC)) {

    $id         = $row["id"];
    $to         = $row["to"];
    $from       = $row["from"];
    $subject    = $row["subject"];
    $message    = $row["message"];
    $file1      = $row["file1"];
    $file2      = $row["file2"];
    $file3      = $row["file3"];
    $file4      = $row["file4"];


    $result = mysql_query("UPDATE mail SET `status` =  '1', `approvedtime` =  NOW() WHERE id = " . $_GET['id'])
        or die(mysql_error());
        header("Location: mail.php");

        // PHPMailer - Start
        $email = new PHPMailer();
        $email->setLanguage('ja');
        $email->From      = $from;
        $email->FromName  = 'MySite.com';
        $email->Subject   = $subject;
        $email->Body      = $message;
        $email->addAddress($to);


        if (!empty($file1)) {
            $file1 = 'upload/'.$file1;
            $email->AddAttachment($file1);
        }
        if (!empty($file2)) {
            $file2 = 'upload/'.$file2;
            $email->AddAttachment($file2);
        }
        if (!empty($file3)) {
            $file3 = 'upload/'.$file3;
            $email->AddAttachment($file3);
        }
        if (!empty($file4)) {
            $file4 = 'upload/'.$file4;
            $email->AddAttachment($file4);
        }


        return $email->Send();
        // PHPMailer - Start
    }

} elseif ($_GET['status'] == 'reject') {

    dbconnect($dbuser, $dbpass, $db);
    $result = mysql_query("UPDATE mail SET `status` =  '2', `approvedtime` =  NOW() WHERE id = " . $_GET['id'])
        or die(mysql_error());
        header("Location: mail.php");
    }
为什么附件不发送?我的代码中是否缺少一个步骤,或者有什么不正确的地方


谢谢你的帮助

你错过了什么。。。问题我的信息存储在服务器上,我可以通过电子邮件发送这些信息,但是附件没有发送。对不起,我应该说得更清楚些为什么附件不发送?我的代码中是否缺少一个步骤,或者有什么不正确的地方?谢谢。我真傻,我在找一个问号。我错了。很抱歉。如果您的服务器上不存在物理文件,那么它将找不到该文件,作为回报,不会附加该文件。行中的数据是什么样子的?