Beyaz.Net İpucu
SMTP ile ekli dosya -attachment- gönderme
SMTP için kullandığımız sayfalarda gerekli düzenlemeleri yaptıktan sonra fonksiyon halinde mail gönderme işlemini yapıyoruz. Fonksiyon halinde yapmamız sebebi birden fazla kullandığımız için devamlı yazmamaktır.
Fonksiyonumuz :
function mailgonderme($mesaj,$adres,$isim,$subject,$attachmentsayisi,$attachmentdosyalari,$attachmentsayisihtml,$attachmentdosyalarihtml) {
include_once("class.phpmailer.php"); //smtp dosyalarını include ediyoruz.
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SetLanguage("tr","language/");
$mail->CharSet="utf-8";
$mail->IsHTML(true);
$mail->Host = "localhost";
$mail->SMTPAuth = false;
$mail->Username = "SMTP_kullaniciadi";
$mail->Password = "SMTP_sifre";
$mail->From = "GidecekAdresMaili";
$mail->FromName = strip_tags($isim); // Adınız
$mail->AddAddress($adres); // mail gideceği adres
$mail->Subject = strip_tags($subject);
if($attachmentsayisihtml>0) {
$sablonlaribol=explode('{',$attachmentdosyalarihtml);
$sablonlaribolsay=count($sablonlaribol);
for($i=0;$i<$sablonlaribolsay;$i++) {
$attachmentdosyasi='';
$attachmentdosyasi=trim(ereg_replace('}','',$sablonlaribol[$i]));
if($attachmentdosyasi) {
$dosyatanimla='';
$attachmentdosyasiuzantisibol=explode('.',$attachmentdosyasi);
$attachmentdosyasiuzantisi=$attachmentdosyasiuzantisibol[1];
if($attachmentdosyasiuzantisi=='gif' or $attachmentdosyasiuzantisi=='GIF') {
$dosyatanimla="image/gif";
} else if($attachmentdosyasiuzantisi=='jpe' or $attachmentdosyasiuzantisi=='jpeg' or $attachmentdosyasiuzantisi=='jpg' or $attachmentdosyasiuzantisi=='JPE' or $attachmentdosyasiuzantisi=='JPEG' or $attachmentdosyasiuzantisi=='JPG') {
$dosyatanimla="image/jpeg";
} else if($attachmentdosyasiuzantisi=='png' or $attachmentdosyasiuzantisi=='PNG') {
$dosyatanimla="image/png";
} else if($attachmentdosyasiuzantisi=='tif' or $attachmentdosyasiuzantisi=='tiff' or $attachmentdosyasiuzantisi=='TIF' or $attachmentdosyasiuzantisi=='TIFF') {
$dosyatanimla="image/tiff";
} else if($attachmentdosyasiuzantisi=='html' or $attachmentdosyasiuzantisi=='htm' or $attachmentdosyasiuzantisi=='HTML' or $attachmentdosyasiuzantisi=='HTM') {
$dosyatanimla="text/html";
} else {
$dosyatanimla="application/octet-stream";
}
$mail->AddEmbeddedImage("icerikattachmentlar/".$attachmentdosyasi, $attachmentdosyasiuzantisibol[0], $attachmentdosyasiuzantisibol[0], "base64", $dosyatanimla);
}
}
}
$mail->Body = mesajitemizle($mesaj);
if($attachmentsayisi>0) {
$sablonlaribol=explode('{',$attachmentdosyalari);
$sablonlaribolsay=count($sablonlaribol);
for($i=0;$i<$sablonlaribolsay;$i++) {
$attachmentdosyasi='';
$attachmentdosyasi=trim(ereg_replace('}','',$sablonlaribol[$i]));
if($attachmentdosyasi) {
$dosyatanimla='';
$attachmentdosyasiuzantisibol=explode('.',$attachmentdosyasi);
$attachmentdosyasiuzantisi=$attachmentdosyasiuzantisibol[1];
if($attachmentdosyasiuzantisi=='gif' or $attachmentdosyasiuzantisi=='GIF') {
$dosyatanimla="image/gif";
} else if($attachmentdosyasiuzantisi=='jpe' or $attachmentdosyasiuzantisi=='jpeg' or $attachmentdosyasiuzantisi=='jpg' or $attachmentdosyasiuzantisi=='JPE' or $attachmentdosyasiuzantisi=='JPEG' or $attachmentdosyasiuzantisi=='JPG') {
$dosyatanimla="image/jpeg";
} else if($attachmentdosyasiuzantisi=='png' or $attachmentdosyasiuzantisi=='PNG') {
$dosyatanimla="image/png";
} else if($attachmentdosyasiuzantisi=='tif' or $attachmentdosyasiuzantisi=='tiff' or $attachmentdosyasiuzantisi=='TIF' or $attachmentdosyasiuzantisi=='TIFF') {
$dosyatanimla="image/tiff";
} else if($attachmentdosyasiuzantisi=='html' or $attachmentdosyasiuzantisi=='htm' or $attachmentdosyasiuzantisi=='HTML' or $attachmentdosyasiuzantisi=='HTM') {
$dosyatanimla="text/html";
} else {
$dosyatanimla="application/octet-stream";
}
$mail->AddAttachment("attachment/".$attachmentdosyasi,$attachmentdosyasi,$dosyatanimla);
}
}
}
if($mail->Send()) {
echo "Mail Gönderildi.";
return "1";
} else {
echo "<br>Mail Gönderilemedi.Adres=".$adres."Hata ".$mail->ErrorInfo."<br>";
return "0";
}
}
Kullanımı : mailgonderme("$emailicerik","$gidecekemailadresi","$emailkimden_adsoyad","$emailkonusu",
"$attachmentsayısı","$attachmentdosyalari","$attachmenthtmlsayısı","$attachmenthtmldosyalari");
SMTP dosyalarını buradan indirebilirsiniz.
Fonksiyonumuz :
function mailgonderme($mesaj,$adres,$isim,$subject,$attachmentsayisi,$attachmentdosyalari,$attachmentsayisihtml,$attachmentdosyalarihtml) {
include_once("class.phpmailer.php"); //smtp dosyalarını include ediyoruz.
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SetLanguage("tr","language/");
$mail->CharSet="utf-8";
$mail->IsHTML(true);
$mail->Host = "localhost";
$mail->SMTPAuth = false;
$mail->Username = "SMTP_kullaniciadi";
$mail->Password = "SMTP_sifre";
$mail->From = "GidecekAdresMaili";
$mail->FromName = strip_tags($isim); // Adınız
$mail->AddAddress($adres); // mail gideceği adres
$mail->Subject = strip_tags($subject);
if($attachmentsayisihtml>0) {
$sablonlaribol=explode('{',$attachmentdosyalarihtml);
$sablonlaribolsay=count($sablonlaribol);
for($i=0;$i<$sablonlaribolsay;$i++) {
$attachmentdosyasi='';
$attachmentdosyasi=trim(ereg_replace('}','',$sablonlaribol[$i]));
if($attachmentdosyasi) {
$dosyatanimla='';
$attachmentdosyasiuzantisibol=explode('.',$attachmentdosyasi);
$attachmentdosyasiuzantisi=$attachmentdosyasiuzantisibol[1];
if($attachmentdosyasiuzantisi=='gif' or $attachmentdosyasiuzantisi=='GIF') {
$dosyatanimla="image/gif";
} else if($attachmentdosyasiuzantisi=='jpe' or $attachmentdosyasiuzantisi=='jpeg' or $attachmentdosyasiuzantisi=='jpg' or $attachmentdosyasiuzantisi=='JPE' or $attachmentdosyasiuzantisi=='JPEG' or $attachmentdosyasiuzantisi=='JPG') {
$dosyatanimla="image/jpeg";
} else if($attachmentdosyasiuzantisi=='png' or $attachmentdosyasiuzantisi=='PNG') {
$dosyatanimla="image/png";
} else if($attachmentdosyasiuzantisi=='tif' or $attachmentdosyasiuzantisi=='tiff' or $attachmentdosyasiuzantisi=='TIF' or $attachmentdosyasiuzantisi=='TIFF') {
$dosyatanimla="image/tiff";
} else if($attachmentdosyasiuzantisi=='html' or $attachmentdosyasiuzantisi=='htm' or $attachmentdosyasiuzantisi=='HTML' or $attachmentdosyasiuzantisi=='HTM') {
$dosyatanimla="text/html";
} else {
$dosyatanimla="application/octet-stream";
}
$mail->AddEmbeddedImage("icerikattachmentlar/".$attachmentdosyasi, $attachmentdosyasiuzantisibol[0], $attachmentdosyasiuzantisibol[0], "base64", $dosyatanimla);
}
}
}
$mail->Body = mesajitemizle($mesaj);
if($attachmentsayisi>0) {
$sablonlaribol=explode('{',$attachmentdosyalari);
$sablonlaribolsay=count($sablonlaribol);
for($i=0;$i<$sablonlaribolsay;$i++) {
$attachmentdosyasi='';
$attachmentdosyasi=trim(ereg_replace('}','',$sablonlaribol[$i]));
if($attachmentdosyasi) {
$dosyatanimla='';
$attachmentdosyasiuzantisibol=explode('.',$attachmentdosyasi);
$attachmentdosyasiuzantisi=$attachmentdosyasiuzantisibol[1];
if($attachmentdosyasiuzantisi=='gif' or $attachmentdosyasiuzantisi=='GIF') {
$dosyatanimla="image/gif";
} else if($attachmentdosyasiuzantisi=='jpe' or $attachmentdosyasiuzantisi=='jpeg' or $attachmentdosyasiuzantisi=='jpg' or $attachmentdosyasiuzantisi=='JPE' or $attachmentdosyasiuzantisi=='JPEG' or $attachmentdosyasiuzantisi=='JPG') {
$dosyatanimla="image/jpeg";
} else if($attachmentdosyasiuzantisi=='png' or $attachmentdosyasiuzantisi=='PNG') {
$dosyatanimla="image/png";
} else if($attachmentdosyasiuzantisi=='tif' or $attachmentdosyasiuzantisi=='tiff' or $attachmentdosyasiuzantisi=='TIF' or $attachmentdosyasiuzantisi=='TIFF') {
$dosyatanimla="image/tiff";
} else if($attachmentdosyasiuzantisi=='html' or $attachmentdosyasiuzantisi=='htm' or $attachmentdosyasiuzantisi=='HTML' or $attachmentdosyasiuzantisi=='HTM') {
$dosyatanimla="text/html";
} else {
$dosyatanimla="application/octet-stream";
}
$mail->AddAttachment("attachment/".$attachmentdosyasi,$attachmentdosyasi,$dosyatanimla);
}
}
}
if($mail->Send()) {
echo "Mail Gönderildi.";
return "1";
} else {
echo "<br>Mail Gönderilemedi.Adres=".$adres."Hata ".$mail->ErrorInfo."<br>";
return "0";
}
}
Kullanımı : mailgonderme("$emailicerik","$gidecekemailadresi","$emailkimden_adsoyad","$emailkonusu",
"$attachmentsayısı","$attachmentdosyalari","$attachmenthtmlsayısı","$attachmenthtmldosyalari");
SMTP dosyalarını buradan indirebilirsiniz.