• 04-04-2024, 01:16:55
    #1
    merhaba,

    <form id="contact-form" method="POST" action="assets/php/mail.php">
                                    <div class="row">
                                        <div class="col-12">
                                            <div class="form-group">
                                                <input type="text" class="form-control" name="name" placeholder="isim - soyisim" required="required">
                                            </div>
                                            <div class="form-group">
                                                <input type="email" class="form-control" name="email" placeholder="e-posta adresiniz" required="required">
                                            </div>
                                            <div class="form-group">
                                                <input type="text" class="form-control" name="phone" placeholder="telefon numaranız" required="required">
                                            </div>
                                        </div>
                                        <div class="col-12">
                                            <div class="form-group">
                                                <textarea class="form-control" name="message" placeholder="mesajınızı yazın" required="required"></textarea>
                                            </div>
                                        </div>
                                        <div class="col-12">
                                            <button type="submit" class="btn btn-bordered active btn-block mt-3"><span class="text-white pr-3"><i class="fas fa-paper-plane"></i></span>formu gönder</button>
                                        </div>
                                    </div>
                                </form>
    yukarıdaki kod, hazırladığım tek sayfalık html sitenin iletişim formu kısmıdır.

    aşağıda ise bu formla tetiklenen mail.php içeriğini iletiyorum:

    <?php
    
        // Only process POST reqeusts.
    
        if ($_SERVER["REQUEST_METHOD"] == "POST") {
    
            // Get the form fields and remove whitespace.
    
            $name = strip_tags(trim($_POST["name"]));
    
                    $name = str_replace(array("\r","\n"),array(" "," "),$name);
                    
            $email = filter_var(trim($_POST["email"]), FILTER_SANITIZE_EMAIL);
            
            $phone = trim($_POST["phone"]);
    
            $message = trim($_POST["message"]);
    
    
    
            // Check that data was sent to the mailer.
    
            if ( empty($name) OR empty($email) OR empty($phone) OR empty($message)) {
    
                // Set a 400 (bad request) response code and exit.
    
                http_response_code(400);
    
                echo "formda eksikler mevcut, lutfen tamamlayin.";
    
                exit;
    
            }
    
    
    
            // Set the recipient email address.
    
            // FIXME: Update this to your desired email address.
    
            $recipient = "iletisim@xxx.com";
    
    
    
            // Set the email subject.
    
            $subject = "yeni form geldi";
    
    
    
            // Build the email content.
    
            $email_content = "isim: $name\n";
    
            $email_content = "eposta: $email\n";
            
            $email_content = "telefon: $phone\n";
    
            $email_content = "$message\n";
    
    
    
            // Build the email headers.
    
            $email_headers = "From: $name <$email>";
    
    
    
            // Send the email.
    
            if (mail($recipient, $subject, $email_content, $email_headers)) {
    
                // Set a 200 (okay) response code.
    
                http_response_code(200);
    
                echo "talebinizi aldik. arkadaslarimiz hizlica ilettiginiz bilgiler dogrultusunda size ulasacak. tesekkurler.";
    
            } else {
    
                // Set a 500 (internal server error) response code.
    
                http_response_code(500);
    
                echo "sebebini bilmedigimiz bir hata olustu tekrar dener misiniz lutfen?";
    
            }
    
    
    
        } else {
    
            // Not a POST request, set a 403 (forbidden) response code.
    
            http_response_code(403);
    
            echo "sebebini bilmedigimiz bir hata olustu tekrar dener misiniz lutfen?";
    
        }
    
    
    
    ?>
    formu gönder butonuna tıklandığında ise "sebebini bilmedigimiz bir hata olustu tekrar dener misiniz lutfen?" hatasını alıyorum.

    bunun üstesinden nasıl gelebilirim yardımcı olabilir misiniz?

    teşekkürler,
  • 04-04-2024, 01:22:40
    #2
    Hocam,

    hataları ekrana yazdırdığınız yerlede hata kontrolü yaparsanız hatayı net görebilirsiniz.

    https://www.php.net/manual/en/language.exceptions.php
  • 04-04-2024, 01:31:46
    #3
    Sunucunda mail methodu güvenlik sebebiyle engellenmiş olabilir. PHPMailer ile smtp kullanarak gönderim yapmanı tavsiye ederim.
  • 04-04-2024, 01:37:21
    #4
    kazimolmez adlı üyeden alıntı: mesajı görüntüle
    Sunucunda mail methodu güvenlik sebebiyle engellenmiş olabilir. PHPMailer ile smtp kullanarak gönderim yapmanı tavsiye ederim.
    tespitinizin doğru olduğunu öğrendim.

    peki bu mail.php içeriğini aynı şekilde düzgünce phpmailer ile nasıl çalıştırabilirim? beni yönlendirebilir misiniz?
  • 04-04-2024, 01:39:06
    #5
    anydesk gel yapıverelim hocam
  • 04-04-2024, 02:04:17
    #6
    kazimolmez adlı üyeden alıntı: mesajı görüntüle
    anydesk gel yapıverelim hocam
    çok çok teşekkür ederim yardımlarınız için tekrar.