<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);

require 'phpmail/PHPMailer.php';
require 'phpmail/SMTP.php';
require 'phpmail/Exception.php';

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;

$AdiSoyadi = trim(strip_tags($_POST['AdiSoyadi']));
$MailAdresi = trim(strip_tags($_POST['MailAdresi']));
$MesajKonusu = trim(strip_tags($_POST['MesajKonusu']));
$Mesaj = trim(strip_tags($_POST['Mesaj']));

if($AdiSoyadi && $MailAdresi && $MesajKonusu && $Mesaj) {
    
    $MailSmtpHost = "smtp.gmail.com";
    $MailUserName = "benimmailim@gmail.com";
    $MailPassword = "benimmailim";
    $MailKimeGidecek = "benimmailim@gmail.com";
    
    if (isset($_POST['g-recaptcha-response'])) {
        $captcha = $_POST['g-recaptcha-response'];
    }
    
    if (!$captcha) {
        echo '<script>alert("Lütfen robot olmadığınızı doğrulayın.");</script>';
        exit;
    }
    
    $kontrol = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6LddeJMrAAAAANw5XOIXSBgiIoAdGC22L42rrToG&response=" . $captcha . "&remoteip=" . $_SERVER['REMOTE_ADDR']);
    $kontrol = json_decode($kontrol);
    
    if ($kontrol->success == false) {
        echo 'reCAPTCHA doğrulaması başarısız.';
    } else {
        try {
            $mail = new PHPMailer(true);
            $mail->IsSMTP();
            $mail->SMTPAuth = true;
            $mail->Host = $MailSmtpHost;
            $mail->SMTPSecure = 'tls';
            $mail->Port = 587;
            $mail->Username = $MailUserName;
            $mail->Password = $MailPassword;
            $mail->SetFrom($mail->Username, 'İletişim');
            $mail->AddAddress($MailKimeGidecek, 'Benim Adım');
            $mail->CharSet = 'UTF-8';
            $mail->Subject = $MesajKonusu;
            $mail->MsgHTML("Ad: $AdiSoyadi<br />E-Posta: $MailAdresi<br />Mesaj: $Mesaj");
            
            if($mail->Send()) {
                echo '<script>alert("Mail gönderildi!");</script>';
                header("Refresh: 0;");
            }
        } catch (Exception $e) {
            echo "Mail gönderilirken hata oluştu: {$mail->ErrorInfo}";
        }
    }
}
?>