HTML PHP表单文件上传 - 在提交时显示文件名并将文件发送到电子邮件

时间:2011-07-24 20:06:21

标签: php html forms email file-upload

我有一个html表单我有一个文件上传按钮 - 它可以将文件上传到上传文件夹。我需要

  • 在提交时显示上传的文件名。它应该被添加到这个块中:

    <?php if(isset($emailSent) && $emailSent == true) { //If email is sent ?>
      <div id="sadhu">
        <p class="general_site">First Name:<strong><?php echo $firstname;?></strong></p>
        <p class="general_site">Last Name:<strong><?php echo $lastname;?></strong></p>
        <p class="general_site">Email:<strong><?php echo $email;?></strong></p>
        <p class="general_site">Theme:<strong><?php echo $theme;?></strong></p>
        <p class="general_site">Type:<strong><?php echo $type;?></strong></p>
        <p class="general_site">Upload:<strong><?php print_r($_FILES['datafile']);?></strong></p>
      </div>
    <?php } ?>
    

目前print_r显示文件但是在一个凌乱的数组中我需要清理它......

  • 提交此表单后,出现的电子邮件没有附件。在发送电子邮件的部分中我只有:

    //If there is no error, send the email
    if(!isset($hasError)) {
      $emailTo = 'info@bgv.co.za'; //Put your own email address here
      $body = "First Name: $firstname \n\nLast Name: $lastname \n\nEmail: $email \n\nTheme: $theme \n\nType of Abstract: $type \n\nUpload: $datafile \n\n";
      $headers = 'From: My Site <'.$emailTo.'>' . "\r\n" . 'Reply-To: ' . $email;
    
      mail($emailTo, $subject, $body, $headers);
      $emailSent = true;
    }
    

1 个答案:

答案 0 :(得分:0)

第一个问题使用$_FILES['datafile']['name']

对于第二个,将文件附加到电子邮件有点棘手。看看这个tutorial,它在我开始时给了我很多帮助