php无表单上传文件,php – 来自表单的WP邮件附件,无文件管理器上传文件

从表单通过wp_mail函数我正在尝试发送带附件的电子邮件,而不将文件上传到文件管理器.

我收到附件的电子邮件.但附件名称不正确,没有文件类型.请帮忙解决这个问题.

这是HTML表单

有我的PHP代码

if (isset($_POST['Submit'])) {

$attachments = $_FILES['Attached']['tmp_name'];

$recipients = "john@mail.com";

$SenderName = get_bloginfo('name');

$SenderEmail = "noreply@domain.com";

$body = "How are you what are you doing now. bla bla bla";

$recipients = array($to);

$headers[] = "From: $SenderName " . "\r\n";

$headers[] = "Content-Type: text/html";

$subj = "This is mail subject";

$SendMail = wp_mail( $recipients, $subj, $body, $headers, $attachments );

}

解决方法:

好吧,我不得不为这一个提出解决方法

我做的是

>将文件上传到服务器

>使用wp-mail发送电子邮件

>成功发送电子邮件或不成功;取消上传图片的链接

1.将文件上传到服务器

/*image upload */

/* GET File Variables */

$target_dir = $_SERVER['DOCUMENT_ROOT']. "/uploads/";

$image_name = $_FILES['YOUR_IMAGE']['name'];

$target_file = $target_dir . basename($_FILES['YOUR_IMAGE']['name']);

$uploadOk = 1;

$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));

// Check if image file is a actual image or fake image

$check = getimagesize($_FILES["YOUR_IMAGE"]["tmp_name"]);

if($check !== false) {

echo "File is an image - " . $check["mime"] . ".";

$uploadOk = 1;

} else {

echo "File is not an image.";

$uploadOk = 0;

}

// Check file size

if ($_FILES["YOUR_IMAGE"]["size"] > 500000) {

echo "Sorry, your file is too large.";

$uploadOk = 0;

}

// Allow certain file formats

if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"

&& $imageFileType != "gif" ) {

echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";

$uploadOk = 0;

}

// Check if $uploadOk is set to 0 by an error

if ($uploadOk == 0) {

echo "Sorry, your file was not uploaded.";

// if everything is ok, try to upload file

} else {

if (move_uploaded_file($_FILES["YOUR_IMAGE"]["tmp_name"], $target_file)) {

echo "The file ". basename( $_FILES["YOUR_IMAGE"]["name"]). " has been uploaded.";

} else {

echo "Sorry, there was an error uploading your file.";

}

}

$attachment = array($target_file);

2.使用wp-mail邮件

$to = $Email; // put your email here

$headers = array('Content-Type: text/html; charset=UTF-8','From:' . $name . '');

// $headers = 'From:' . $name . '' . "\r\n"; // put user's email here or duplicate your email

$subject = 'Apply Online Form';

if (wp_mail($to, $subject, $message, $headers, $attachment ) === false) {

echo "Error";

unlink($target_file);

} else {

unlink($target_file);

echo "

Mail Sent Successfully

";

}

3.成功发送电子邮件或不取消链接上传的图像

unlink($target_file);

来源:https://www.icode9.com/content-1-317501.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值