繁体   English   中英

上传文件并通过PHP通过电子邮件发送?

[英]Upload a file and email it with PHP?

用以下方法上传文件的最简单方法是: <input type="file" name="clanlogo">并通过电子邮件将其发送到“ 12345@email.com”,但是发现了超级复杂的代码和内容。 我需要它作为附件发送。 在PHP中。 这是我到目前为止的代码:

<?php

## CONFIG ##

# LIST EMAIL ADDRESS
$recipient = "my email Here";

# SUBJECT (Contact Form/Remove)
$subject = "Volunteer Form";

# RESULT PAGE
$location = "thank_you.html";

## FORM VALUES ##

# SENDER
$email = $_REQUEST['email'] ;

# MAIL BODY
$body .= "First Name: ".$_REQUEST['first_name']." \n";

$body .= "Last Name: ".$_REQUEST['last_name']." \n";

$body .= "Email: ".$_REQUEST['email']." \n";

$body .= "Volunteer Choice: ".$_REQUEST['dropdown']." \n";

$body .= "Questions: ".$_REQUEST['comments']." \n";
# add more fields here if required

## SEND MESSGAE ##

我只需要添加一些代码即可允许我上传文件。

使用html表单并添加标签<input type="file" name="uploaded"> ,然后您可以像这样处理PHP中的文件:

<?php

$file = $_FILES['uploaded'];
if (move_uploaded_file($file['tmp_name'], $destination)) {
// do something
}
// do something

?>

我无法编写大量代码,这应该是您入门的动力! 这是一个快速指南 现在要附加它,您可以作为对服务器的ajax请求来执行此操作,存储文件的路径,然后在发送电子邮件时从数据库中再次提取该路径。

下载PHPMailer类,然后尝试...

<html>
<head>
<title>PHPMailer - Mail() basic test</title>
</head>
<body>

<?php

require_once('class.phpmailer.php');

$mail = new PHPMailer();     
$mail->SetFrom('name@yourdomain.com', 'First Last');
$mail->AddReplyTo("name@yourdomain.com","First Last");

$address = "12345@email.com";
$mail->AddAddress($address, "John Doe");

$mail->Subject    = "PHPMailer Test Subject via mail()";

$mail->AltBody    = "To view the message, please use an HTML compatible email viewer!"; // optional

$mail->MsgHTML($body);

move_uploaded_file($_FILES["file"]["tmp_name"],$destination);

$mail->AddAttachment("$destination");  //Your attachment
//$mail->AddAttachment("images/phpmailer.gif");      // attachment
//$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment

if(!$mail->Send()) {
  echo "Mailer Error: " . $mail->ErrorInfo;
} else {
  echo "Message sent!";
}

?>

</body>
</html>
  • 这是来自PHPMailer类的示例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM