Oluşturulan PDF belgesini E-posta ile gönderme
Eğer PDF belgesi nasıl oluşturulduğu hakkında bilgi sahibi değilseniz, “TCPDF ile PDF nasıl oluşturulur?” yazımı okumak için burayı tıklayın.
Liste halinde ne yapacağımızı sıralarsak, aşağıdaki kod ile,
- İlk önce veritabanından bütün şehirleri çağıracağız
- Verileri PDF belgesi olarak ornek_1.pdf dosyası adında temp klasörüne yükleyeceğiz
- Son olarak, oluşturulan PDF belgesini e-postamıza iliştireceğiz
$db_host = "localhost"; //Host address (most likely localhost) $db_name = "veritabnı_ismi"; //veritabani ismi $db_user = "root"; //veritabani kullanici ismi $db_pass = "788888"; //sifre $mysqli = new mysqli($db_host, $db_user, $db_pass, $db_name); $mysqli->query("SET NAMES utf8"); require_once('config/lang/eng.php'); require_once('tcpdf.php'); $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); $pdf->SetFont('dejavusans', '', 14, '', true); $pdf->AddPage(); // $q = 'SELECT * FROM `iller` ORDER BY sehir ASC'; $res = $mysqli->query($q); $html=''; while($nt=$res->fetch_array()){ $html .= $nt['sehir'].'<br>'; } // $pdf->writeHTML($html, true, false, true, false, 'L'); $pdf->Output('temp/ornek_1.pdf', 'F'); // oluşturulan belge ismi - ornek_1.pdf /* I - PDF belgesini tarayıcıya satır içi gönder (tarayıcıda göster) D - PDF belgesini yüklemek için uyar F - PDF belgesini yerel sunucuya yükle */
Yukarıda PDF belgesini oluşturduk ve temp klasörüne yükledik.
Oluşturduğumuz PDF belgesini e-postamıza iliştireceğiz.E-postamızı göndermek için PHPMailer PHP sınıfını kullanacağız. PHPMailer’ i buradan yükleyebilirsiniz.
<?PHP require("PHPMailer/class.phpmailer.php"); $eposta = new PHPMailer(); $eposta->From = 'isminiz@bilgisayar.me'; //e-posta adresiniz $eposta->FromName = 'Isminiz'; // Isminiz ve adresiniz $eposta->Subject = 'Mesaj Başlığı'; $eposta->Body = 'Mesajınız'; //Mesajınız $eposta->AddAddress( 'isim@bilgisayar.me' ); // kime gidiyor $dosya = 'temp/ornek_1.pdf'; // $eposta->AddAttachment( $dosya , 'ornek_1.pdf' ); if(!$eposta->Send()) { echo "Hata Oluştu: " . $eposta->ErrorInfo; } else { echo "Mesaj Gönerildi!"; } ?>
Kodları birleştirelim.
<?PHP $db_host = "localhost"; //Host address (most likely localhost) $db_name = "veritabnı_ismi"; //veritabani ismi $db_user = "root"; //veritabani kullanici ismi $db_pass = "788888"; //sifre $mysqli = new mysqli($db_host, $db_user, $db_pass, $db_name); $mysqli->query("SET NAMES utf8"); require_once('config/lang/eng.php'); require_once('tcpdf.php'); require_once("PHPMailer/class.phpmailer.php"); $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); $pdf->SetFont('dejavusans', '', 14, '', true); $pdf->AddPage(); // $q = 'SELECT * FROM `iller` ORDER BY sehir ASC'; $res = $mysqli->query($q); $html=''; while($nt=$res->fetch_array()){ $html .= $nt['sehir'].'<br>'; } // $pdf->writeHTML($html, true, false, true, false, 'L'); $pdf->Output('temp/ornek_1.pdf', 'F'); // oluşturulan belge ismi - ornek_1.pdf /* I - PDF belgesini tarayıcıya satır içi gönder (tarayıcıda göster) D - PDF belgesini yüklemek için uyar F - PDF belgesini yerel sunucuya yükle */ $eposta = new PHPMailer(); $eposta->From = 'isminiz@bilgisayar.me'; //e-posta adresiniz $eposta->FromName = 'Isminiz'; // Isminiz ve adresiniz $eposta->Subject = 'Mesaj Başlığı'; $eposta->Body = 'Mesajınız'; //Mesajınız $eposta->AddAddress( 'isim@bilgisayar.me' ); // kime gidiyor $dosya = 'temp/ornek_1.pdf'; // $eposta->AddAttachment( $dosya , 'ornek_1.pdf' ); if(!$eposta->Send()) { echo "Hata Oluştu: " . $eposta->ErrorInfo; } else { echo "Mesaj Gönerildi!"; } ?>