通过php表单向电子邮件发送文件附件
我试图发送一个文件上传与html从使用php。在我提交表单后,我一直收到一个错误。我似乎能弄明白这里的问题是什么。代码中是否有我做错的地方?还是我缺少任何php库 Html:通过php表单向电子邮件发送文件附件,php,html,forms,Php,Html,Forms,我试图发送一个文件上传与html从使用php。在我提交表单后,我一直收到一个错误。我似乎能弄明白这里的问题是什么。代码中是否有我做错的地方?还是我缺少任何php库 Html: 为什么要用逗号分隔所有文件?我认为这个电话不存在 这不应该是: mail($mailto,$emailSubject,$message,$headers); 如果需要,在标题后添加其他参数?谢谢。这段代码有效。但是我无法获得地址、电子邮件详细信息和姓名。你的代码太乱了。 $mailto = 'admin@gmail.
为什么要用逗号分隔所有文件?我认为这个电话不存在 这不应该是:
mail($mailto,$emailSubject,$message,$headers);
如果需要,在标题后添加其他参数?谢谢。这段代码有效。但是我无法获得地址、电子邮件详细信息和姓名。你的代码太乱了。
$mailto = 'admin@gmail.com';
$emailSubject = 'Customer Has a inquiry';
$fromEmail = $_POST['email'];
$fromName = $_POST['name'];
$message = $_POST['frame'];
$address_1 = $_POST['address_1'];
$address_2 = $_POST['address_2'];
$area_code = $_POST['area_code'];
$city = $_POST['city'];
$country = $_POST['country'];
/* GET File Variables */
$tmpName = $_FILES['attachment']['tmp_name'];
$fileType = $_FILES['attachment']['type'];
$fileName = $_FILES['attachment']['name'];
/* Start of headers */
$headers = "From: $fromName";
if (file($tmpName)) {
/* Reading file ('rb' = read binary) */
$file = fopen($tmpName,'rb');
$data = fread($file,filesize($tmpName));
fclose($file);
/* a boundary string */
$randomVal = md5(time());
$mimeBoundary = "==Multipart_Boundary_x{$randomVal}x";
/* Header for File Attachment */
$headers .= "\nMIME-Version: 1.0\n";
$headers .= "Content-Type: multipart/mixed;\n" ;
$headers .= " boundary=\"{$mimeBoundary}\"";
/* Encoding file data */
$data = chunk_split(base64_encode($data));
/* Adding attchment-file to message*/
$message .= "--{$mimeBoundary}\n" .
"Content-Type: {$fileType};\n" .
" name=\"{$fileName}\"\n" .
"Content-Transfer-Encoding: base64\n\n" .
$data . "\n\n" .
"--{$mimeBoundary}--\n";
}
$flgchk=mail("$mailto","$emailSubject","$address_1","$address_2","$area_code","$city","$country","$message","$headers");
if($flgchk){
echo "A email has been sent";
}
else{
echo "Error in Email sending";
}
?>
mail($mailto,$emailSubject,$message,$headers);