• 15-03-2023, 11:08:48
    #1
    Merhaba arkadaşlar herkese iyi günler. Elimde bir html iletişim formu var oradan mail almak istiyorum fakat alamıyorum kodlarda düzenlemem gereken nereleri var yardımcı olurmusunuz çok teşekkür ederim şimdiden.


    HTML sayfası
                            <form action="" method="mailgonder.php">
                                                            <h2 class="lead__subtitle">Bir başvuru bırakın</h2>
                                <div class="mb-3">
                                    <input class="form-control required" id="adi" name="adi" placeholder="Adınız" type="text">
                                </div>
                                <div class="mb-3">
                                    <input class="form-control required" id="soyadi" name="soyadi" placeholder="Soyadınız" type="text">
                                </div>
                                <div class="mb-3">
                                    <input class="form-control required" id="eposta" name="eposta" placeholder="E-Posta Adresiniz" type="email">
                                </div>
                                <div class="mb-3">
                                    <input class="form-control required" id="telefon" name="telefon" placeholder="Telefon Numaranız" type="text">
                                </div>
                                <h6>Dikkat! Yönticimiz sizi  arayacaktır.
                                    Anlayışınız için çok teşekkür ederiz</h6>
                                <div class="form-check">
                                    <input checked type="checkbox" class="form-check-input" id="exampleCheck1">
                                    <label class="form-check-label text-muted" for="exampleCheck1"><a class="text-muted text-decoration-none" href="privacy.html" target="_blank">Gizlilik Politikasını</a> kabul ediyorum</label>
                                </div>
                                <div class="mb-3 form-check">
                                    <input checked type="checkbox" class="form-check-input" id="exampleCheck2">
                                    <label class="form-check-label" for="exampleCheck2"><a class="text-muted text-decoration-none">18 yaşın
                                            üzerindeyim</a></label>
                                </div>
                                <button type="submit" name="submit" class="btn btn-danger w-100">ücretsiz kayıt</button>
                                <input type="hidden" name="phonecc" value="" class="phonecc" />
                                <input type="hidden" name="country" value=""/>
                                <input type="hidden" name="comment" value="" />
                            </form>

    mailgonder.php kodu

    <?php 
        if(isset($_POST['fg-gonder'])){
            $kime = "xxx@gmail.com"; // hedef email
            $adi = $_POST['adi'];
            $soyadi = $_POST['soyadi'];
            $eposta = $_POST['eposta'];
            $telefon = $_POST['telefon'];
    
            <html>
                <head>
                    <title>Örnek İletişim Formu</title>
                </head>
                <body>
                    <p>'.$adi.' '.$soyadi.' aşağıdaki bilgiler ile size form gönderdi</p>
                    <p><b>İsim:</b> '.$adi.'</p>
                    <p><b>Soyisim:</b> '.$soyadi.'</p>
                    <p><b>E-posta:</b> '.$eposta.'</p>
                    <p><b>Telefon:</b> '.$telefon.'</p>
    
                </body>
            </html>'; 
            $header  = "Content-type: text/html; charset=utf-8 \r\n"; 
            mail($kime,$konu,$mesaj,$header);
            echo "<p class='alert alert-success'>Başarıyla Gönderildi. Teşekkür ederiz "    . $adi . ", sizinle iletişime geçeceğiz .</p>";
        }
    ?>
  • Kabul Edilen Cevap
  • 15-03-2023, 11:14:15
    #2
    PHP - WORDPRESS - YAZILIM
    php mail fonksiyonunuz açık olmayabilir bunun yerine https://github.com/PHPMailer/PHPMailer'i formunuza dahil edip o şekilde gönderim yapabilirsiniz.
  • 15-03-2023, 11:14:46
    #3
    Merhaba,
    belki fikir verir, ben son dönemde yaşadığım kod hatalarını Chatgpt'ye soruyorum, hızlı sonuç alıyorum. sizin kod ile ilgili şöyle bir cevabı var

    Bu kodda birkaç sorun var:
    1. HTML kodu, bir değişkene atanmadan doğrudan yazılmış. Bu hatalı bir kullanımdır. HTML kodunu bir değişkene atamak ve sonra o değişkeni kullanmak daha doğru bir yaklaşım olacaktır.
    2. $konu değişkeni tanımlanmamış. E-posta konusu belirtilmediği için mail() işlevinin birinci parametresi olarak $kime değişkeni verilmiş. Ancak mail() işlevinin birinci parametresi, e-posta'nın gönderileceği kişinin e-posta adresi olmalıdır.
    3. $mesaj değişkeni tanımlanmamış. $mesaj değişkeni, HTML kodunun bir değişkene atanması sırasında oluşturulması gerekir.
    4. $adi değişkeni, HTML kodu içinde kullanıldığı yerde doğru şekilde eklenmemiştir.
    Aşağıdaki kod, yukarıdaki sorunları düzeltir:

    <?php 
        if(isset($_POST['fg-gonder'])){
            $kime = "xxx@gmail.com"; // hedef email
            $adi = $_POST['adi'];
            $soyadi = $_POST['soyadi'];
            $eposta = $_POST['eposta'];
            $telefon = $_POST['telefon'];
     
            $konu = "Örnek İletişim Formu";
            $mesaj = '
                <html>
                    <head>
                        <title>Örnek İletişim Formu</title>
                    </head>
                    <body>
                        <p>'.$adi.' '.$soyadi.' aşağıdaki bilgiler ile size form gönderdi</p>
                        <p><b>İsim:</b> '.$adi.'</p>
                        <p><b>Soyisim:</b> '.$soyadi.'</p>
                        <p><b>E-posta:</b> '.$eposta.'</p>
                        <p><b>Telefon:</b> '.$telefon.'</p>
                    </body>
                </html>
            '; 
            $header  = "Content-type: text/html; charset=utf-8 \r\n"; 
            mail($kime, $konu, $mesaj, $header);
            echo "<p class='alert alert-success'>Başarıyla Gönderildi. Teşekkür ederiz " . $adi . ", sizinle iletişime geçeceğiz .</p>";
        }
    ?>
    Bu şekilde kod, e-posta'yı doğru şekilde oluşturacak ve gönderecektir.
  • 15-03-2023, 11:15:45
    #4
    mail fonksiyonu artık çalışmıyor smtp mail kullanmanız gerekiyor.
  • 15-03-2023, 11:16:47
    #5
    ntka adlı üyeden alıntı: mesajı görüntüle
    mail fonksiyonu artık çalışmıyor smtp mail kullanmanız gerekiyor.
    Hocam dönüşünüz için teşekkür ederim. Smtp kullanırım onun için nasıl düzenlemem gerekiyor ?
  • 15-03-2023, 11:19:15
    #6
    Bu cevap, konu sahibi tarafından kabul edilebilir bir cevap olarak işaretlendi.
    Bar00t adlı üyeden alıntı: mesajı görüntüle
    Hocam dönüşünüz için teşekkür ederim. Smtp kullanırım onun için nasıl düzenlemem gerekiyor ?
    https://seditio.com.tr/ucretsizscrip...cript/download
    bunu deneyin.
    kendinize göre düzenleyin.
  • 15-03-2023, 11:20:08
    #7
    ntka adlı üyeden alıntı: mesajı görüntüle
    mail fonksiyonu artık çalışmıyor smtp mail kullanmanız gerekiyor.
    ntka adlı üyeden alıntı: mesajı görüntüle
    https://seditio.com.tr/ucretsizscrip...cript/download
    bunu deneyin.
    kendinize göre düzenleyin.
    Tamamdır hocam çok teşekkür ediyorum
  • 15-03-2023, 11:29:56
    #8
    <form action="" method="mailgonder.php">


    tam tersi olacak. action kısmına php dosya yolunu yazın, method olarak POST yazın.
    https://kodgunlugum.com/phpmailer-ku...erme-ayarlari/ burada kullanılan PHPMailer kütüphanesini kullanın(localhostta mail gönderimi olmuyor, hosting üzerinde deneyin)
  • 15-03-2023, 11:36:17
    #9
    emreyavsan adlı üyeden alıntı: mesajı görüntüle
    <form action="" method="mailgonder.php">


    tam tersi olacak. action kısmına php dosya yolunu yazın, method olarak POST yazın.
    https://kodgunlugum.com/phpmailer-ku...erme-ayarlari/ burada kullanılan PHPMailer kütüphanesini kullanın(localhostta mail gönderimi olmuyor, hosting üzerinde deneyin)

    Teşekkür ederim hocam