سلام علي آقا خسته نباشيد شرمنده باز يه سوال ديگه دارم
اگه يادتون باشه طرح قبلي فقط يک پيغام رو به همراه جدول واسه گيرنده ميفرستاد
ولي من الان ميخوام به همون طرح اين امکان رو بدم که بهش فايل هم بشه اضافه کرد
و فايل اضافه کردنش هم خاص باشه مثلا اين طوري باشه که اولا فقط فايل هاي zip رو قبول کنه ثانيا
حجم فايل مورد نظر از مرز 100 kb بالاتر نباشه
فکر کنم يه خورده طرحش پيچيده شد ولي مطمئنم شما از عهده اش بر مي آييد
ببينيد من از اين طرح ساده ميخوام استفاده کنم منتها فقط ميشه با اين طرح يک پيغام از نوع text/plain با قابليت اضافه کردن فايل بهش ,
حالا هر فايل و با هر ظرفيتي ميتونه باشه فرستاد
فايل mail.html هيچ مشکلي نداره واسه همين فقط فايل پردازشگر را اينجا ميزارم
من چه جوري اين قالب رو با طرح قبلي ترکيب کنم که بشه اين کار ها رو باهاش کرد
1. نامه از نوع html باشه
2. متغير message رو چه جوري قرار بدم که بتونم جدول باهاش بفرستم و پيغام نامه درون اين جدول باشه
خواستم از طرح قبلي هم براي اين استفاده کنم منتها وقتي اين کار رو ميکني
جدول رو ميفرسته بدون فايل Attache شده اش
3.نوع فايل و ظرفيت فايل Attache شده را هم مد نظر داشته باشه
خيلي ممنون از کمکهات علي آقا
راستي اگه بشه بهش اين قابليت رو هم اضافه کرد که کاربر حتما فيلد هاي ورودي فايل mail.html رو
بايد پر کنه که در غير اين صورت Error مربوط به آن فيلد نمايش داده بشه
و تا وقتي که کامل فيلد ها رو پر نکرد mail فرستاده نشود
ديگه نور علي نور ميشه
قربانت برم شرمنده اگه مي بيني يه خورده زياد شده
اگه يادتون باشه طرح قبلي فقط يک پيغام رو به همراه جدول واسه گيرنده ميفرستاد
ولي من الان ميخوام به همون طرح اين امکان رو بدم که بهش فايل هم بشه اضافه کرد
و فايل اضافه کردنش هم خاص باشه مثلا اين طوري باشه که اولا فقط فايل هاي zip رو قبول کنه ثانيا
حجم فايل مورد نظر از مرز 100 kb بالاتر نباشه
فکر کنم يه خورده طرحش پيچيده شد ولي مطمئنم شما از عهده اش بر مي آييد
ببينيد من از اين طرح ساده ميخوام استفاده کنم منتها فقط ميشه با اين طرح يک پيغام از نوع text/plain با قابليت اضافه کردن فايل بهش ,
حالا هر فايل و با هر ظرفيتي ميتونه باشه فرستاد
فايل mail.html هيچ مشکلي نداره واسه همين فقط فايل پردازشگر را اينجا ميزارم
کد:
<html>
<head>
<title> Sending Email </title>
</head>
<body>
<?php
// Read POST request params into global vars
$to = $_POST['to'];
$from = $_POST['from'];
$subject = $_POST['subject'];
$message = $_POST['message'];
// Obtain file upload vars
$fileatt = $_FILES['fileatt']['tmp_name'];
$fileatt_type = $_FILES['fileatt']['type'];
$fileatt_name = $_FILES['fileatt']['name'];
$headers = "From: $from";
if (is_uploaded_file($fileatt)) {
// Read the file to be attached ('rb' = read binary)
$file = fopen($fileatt,'rb');
$data = fread($file,filesize($fileatt));
fclose($file);
// Generate a boundary string
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
// Add the headers for a file attachment
$headers .= "\nMIME-Version: 1.0\n" .
"Content-Type: multipart/mixed;\n" .
" boundary=\"{$mime_boundary}\"";
// Add a multipart boundary above the plain message
$message = "This is a multi-part message in MIME format.\n\n" .
"--{$mime_boundary}\n" .
"Content-Type: text/plain; charset=\"iso-8859-1\"\n" .
"Content-Transfer-Encoding: 7bit\n\n" .
$message . "\n\n";
// Base64 encode the file data
$data = chunk_split(base64_encode($data));
// Add file attachment to the message
$message .= "--{$mime_boundary}\n" .
"Content-Type: {$fileatt_type};\n" .
" name=\"{$fileatt_name}\"\n" .
//"Content-Disposition: attachment;\n" .
//" filename=\"{$fileatt_name}\"\n" .
"Content-Transfer-Encoding: base64\n\n" .
$data . "\n\n" .
"--{$mime_boundary}--\n";
}
// Send the message
$ok = @mail($to, $subject, $message, $headers);
if ($ok) {
echo "<p>Mail sent! Yay PHP!</p>";
} else {
echo "<p>Mail could not be sent. Sorry!</p>";
}
?>
</body>
</html>
1. نامه از نوع html باشه
2. متغير message رو چه جوري قرار بدم که بتونم جدول باهاش بفرستم و پيغام نامه درون اين جدول باشه
خواستم از طرح قبلي هم براي اين استفاده کنم منتها وقتي اين کار رو ميکني
جدول رو ميفرسته بدون فايل Attache شده اش
3.نوع فايل و ظرفيت فايل Attache شده را هم مد نظر داشته باشه
خيلي ممنون از کمکهات علي آقا
راستي اگه بشه بهش اين قابليت رو هم اضافه کرد که کاربر حتما فيلد هاي ورودي فايل mail.html رو
بايد پر کنه که در غير اين صورت Error مربوط به آن فيلد نمايش داده بشه
و تا وقتي که کامل فيلد ها رو پر نکرد mail فرستاده نشود
ديگه نور علي نور ميشه
قربانت برم شرمنده اگه مي بيني يه خورده زياد شده