打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

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

从表单通过wp_mail函数我正在尝试发送带附件的电子邮件,而不将文件上传到文件管理器.
我收到附件的电子邮件.但附件名称不正确,没有文件类型.请帮忙解决这个问题.

这是HTML表单

<form action="POST" enctype="multipart/form-data">    <table>        <input type="file" name="Attached">        <input type="Submit" name="Submit">    </table></form>

有我的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 <$SenderEmail>" . "\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 sizeif ($_FILES["YOUR_IMAGE"]["size"] > 500000) {    echo "Sorry, your file is too large.";    $uploadOk = 0;}// Allow certain file formatsif($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 errorif ($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 . '<' . $fromEmail . '>');        // $headers = 'From:' . $name . '<' . $studentEmail . '>' . "\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 "<h3> Mail Sent Successfully</h3>";        }

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

unlink($target_file);
来源:https://www.icode9.com/content-1-317501.html
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
WordPress创建管理面板主题
PHP文件上传实例详解
php多文件上传解析和代码示例
任务8 网上购物系统后台模块开发
PHP:实现给上传图片加水印的程序代码
简单的PHP图片上传程序
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服