0

so I am building a contact for mon my website, but for some reasons, I am getting this error [![error image][1]][1] (https://prnt.sc/vw49gd - link to image as the one uploaded doesn't seem to get it)

My HTML form is fairly simple:

<form class="nk-form-submit" action="form/contact.php" method="post">
    <div class="row">
        <div class="col-sm-6">
            <div class="field-item animated" data-animate="fadeInUp" data-delay="0.8">
                <label class="field-label textSubTittleColors ttu">Your Name</label>
                <div class="field-wrap">
                    <input name="contact-name" placeholder="First & Last Name" type="text" class="input-bordered contactUsTextfields required">
                </div>
            </div>
        </div>
        <div class="col-sm-6">
            <div class="field-item animated" data-animate="fadeInUp" data-delay="0.9">
                <label class="field-label textSubTittleColors ttu">Your Email</label>
                <div class="field-wrap">
                    <input name="contact-email" placeholder="example@gmail.com" type="email" class="input-bordered contactUsTextfields required email">
                </div>
            </div>
        </div>
    </div>
    <div class="field-item animated" data-animate="fadeInUp" data-delay="1.0">
        <label class="field-label textSubTittleColors ttu">Your Message</label>
        <div class="field-wrap ">
            <textarea name="contact-message" placeholder="Leave your question or comment here" class="input-bordered contactUsTextfields input-textarea required"></textarea>
        </div>
    </div>
    <input type="text" class="d-none" name="form-anti-honeypot" value="">
    <div class="row">
        <div class="col-sm-5 text-right animated" data-animate="fadeInUp" data-delay="1.1">
            <button type="submit" name="submit" class="btn sendButton"  >SEND</button>
        </div>
        <div class="col-sm-7 order-sm-first">
            <div class="form-results"></div>
        </div>
    </div>
</form>

But the issue relies on the contact.php code:

<?php
header('Content-type: application/json');
require_once('php-mailer/PHPMailerAutoload.php'); // Include PHPMailer

$mail = new PHPMailer();
$emailTO = $emailBCC =  $emailCC = array(); $formEmail = '';

### Enter Your Sitename 
$sitename = 'Organization';

### Enter your email addresses: @required
$emailTO[] = array( 'email' => 'myname@microsoftMail.org', 'name' => 'name' ); 

### Enable bellow parameters & update your BCC email if require.
//$emailBCC[] = array( 'email' => 'email@yoursite.com', 'name' => 'Your Name' );

### Enable bellow parameters & update your CC email if require.
//$emailCC[] = array( 'email' => 'email@yoursite.com', 'name' => 'Your Name' );

### Enter Email Subject
$subject = "Contact Us " . ' - ' . $sitename; 

### If your did not recive email after submit form please enable below line and must change to your correct domain name. eg. noreply@example.com
//$formEmail = 'noreply@yoursite.com';

### Success Messages
$msg_success = "We have <strong>successfully</strong> received your message. We'll get back to you soon.";

if( $_SERVER['REQUEST_METHOD'] == 'POST') {
    if (isset($_POST["contact-email"]) && $_POST["contact-email"] != '' && isset($_POST["contact-name"]) && $_POST["contact-name"] != '') {
        ### Form Fields
        $cf_email = $_POST["contact-email"];
        $cf_name = $_POST["contact-name"];
        $cf_message = isset($_POST["contact-message"]) ? $_POST["contact-message"] : '';

        $honeypot   = isset($_POST["form-anti-honeypot"]) ? $_POST["form-anti-honeypot"] : 'bot';
        $bodymsg = '';
        
        if ($honeypot == '' && !(empty($emailTO))) {
            ### If you want use SMTP 
            // $mail->isSMTP();
            // $mail->SMTPDebug = 0;
            // $mail->Host = 'smtp_host';
            // $mail->Port = 587;
            // $mail->SMTPAuth = true;
            // $mail->Username = 'smtp_username';
            // $mail->Password = 'smtp_password';

            ### Regular email configure
            $mail->IsHTML(true);
            $mail->CharSet = 'UTF-8';

            $mail->From = ($formEmail !='') ? $formEmail : $cf_email;
            $mail->FromName = $cf_name . ' - ' . $sitename;
            $mail->AddReplyTo($cf_email, $cf_name);
            $mail->Subject = $subject;
            
            foreach( $emailTO as $to ) {
                $mail->AddAddress( $to['email'] , $to['name'] );
            }
            
            ### if CC found
            if (!empty($emailCC)) {
                foreach( $emailCC as $cc ) {
                    $mail->AddCC( $cc['email'] , $cc['name'] );
                }
            }
            
            ### if BCC found
            if (!empty($emailBCC)) {
                foreach( $emailBCC as $bcc ) {
                    $mail->AddBCC( $bcc['email'] , $bcc['name'] );
                }               
            }

            ### Include Form Fields into Body Message
            $bodymsg .= isset($cf_name) ? "Contact Name: $cf_name<br><br>" : '';
            $bodymsg .= isset($cf_email) ? "Contact Email: $cf_email<br><br>" : '';
            $bodymsg .= isset($cf_message) ? "Message: $cf_message<br><br>" : '';
            $bodymsg .= $_SERVER['HTTP_REFERER'] ? '<br>---<br><br>This email was sent from: ' . $_SERVER['HTTP_REFERER'] : '';
            
            // Mailing
            $mail->MsgHTML( $bodymsg );
            $is_emailed = $mail->Send();

            if( $is_emailed === true ) {
                $response = array ('result' => "success", 'message' => $msg_success);
            } else {
                $response = array ('result' => "error", 'message' => $mail->ErrorInfo);
            }
            echo json_encode($response);
            
        } else {
            echo json_encode(array ('result' => "error", 'message' => "Bot <strong>Detected</strong>.! Clean yourself Botster.!"));
        }
    } else {
        echo json_encode(array ('result' => "error", 'message' => "Please <strong>Fill up</strong> all required fields and try again."));
    }
}

I have uploaded this on the hostgator domain, but every time I click the send button I keep getting the error mentioned above.

I also tried several different codes from either other posts here in stackoverflow or from youtube videos I have seen, but its all the same result. [1]: https://i.stack.imgur.com/MQQxS.png

Lee Taylor
  • 7,761
  • 16
  • 33
  • 49
  • check out these settings, they work on bluehost. https://stackoverflow.com/questions/39731844/how-to-use-phpmailer-issmtp-on-bluehost – DCR Dec 05 '20 at 01:00
  • I don't see any images in your code. Are the any error messages in the console? – DCR Dec 05 '20 at 01:01
  • @DCR uploaded a link –  Dec 05 '20 at 01:09
  • @DCR wit hthat bluehost, can i include my outlook email/password? –  Dec 05 '20 at 01:11

1 Answers1

-1

You may have used the wrong HTTP request type. Try the method attribute as shown below.

method="get"

As used in: Change your HTML to:

<form class="nk-form-submit" action="form/contact.php" method="get">
                                        <div class="row">
                                            <div class="col-sm-6">
                                                <div class="field-item animated" data-animate="fadeInUp" data-delay="0.8">
                                                    <label class="field-label textSubTittleColors ttu">Your Name</label>
                                                    <div class="field-wrap">
                                                        <input name="contact-name" placeholder="First & Last Name" type="text" class="input-bordered contactUsTextfields required">
                                                    </div>
                                                </div>
                                            </div>
                                            <div class="col-sm-6">
                                                <div class="field-item animated" data-animate="fadeInUp" data-delay="0.9">
                                                    <label class="field-label textSubTittleColors ttu">Your Email</label>
                                                    <div class="field-wrap">
                                                        <input name="contact-email" placeholder="example@gmail.com" type="email" class="input-bordered contactUsTextfields required email">
                                                    </div>
                                                </div>
                                            </div>
                                        </div>
                                        <div class="field-item animated" data-animate="fadeInUp" data-delay="1.0">
                                            <label class="field-label textSubTittleColors ttu">Your Message</label>
                                            <div class="field-wrap ">
                                                <textarea name="contact-message" placeholder="Leave your question or comment here" class="input-bordered contactUsTextfields input-textarea required"></textarea>
                                            </div>
                                        </div>
                                        <input type="text" class="d-none" name="form-anti-honeypot" value="">
                                        <div class="row">
                                            <div class="col-sm-5 text-right animated" data-animate="fadeInUp" data-delay="1.1">
                                                <button type="submit" name="submit" class="btn sendButton"  >SEND</button>
                                            </div>
                                            <div class="col-sm-7 order-sm-first">
                                                <div class="form-results"></div>
                                            </div>
                                        </div>
                                    </form>
9pfs
  • 560
  • 5
  • 17
  • where should I use this? contact.php? –  Dec 05 '20 at 01:13
  • I'll show you in a revision, paraphrasing your answer. – 9pfs Dec 05 '20 at 01:14
  • it adds issue " failed to load resource the server responded with a status 409" –  Dec 06 '20 at 09:44
  • Are you saving any data to your server server-side? – 9pfs Dec 10 '20 at 21:38
  • According to [Microsoft Power Automate Discussion](https://powerusers.microsoft.com/t5/General-Power-Automate/Action-quot-Create-File-quot-failed-with-Status-code-409/td-p/118528#:~:text=The%20HTTP%20409%20error%20is%20a%20Conflict%20error%2C,HTTP%20409%20error%2C%20please%20check%20the%20following%20article%3A) that means that there is a conflict in data, similar to how you save a word document but you can't because you opened it in two windows, saved one version of the file with blue font, and saved the other with red font. – 9pfs Dec 10 '20 at 21:42