Problem with sending form

Problem with sending form

Hi,

I am new with jQuery. I copied an open source code for sending a contact us form using jQuery. You can see the form at Website at the bottom right side yellow box.
The input fields are as follows: Name, Email, Tel, Comments.

This is my JS file the validates the form and sends to PHP file.
  1. $(document).ready(function() {
        
        //if submit button is clicked
        $('#send_form').click(function () {        
            
            function validEmail(str) {
                return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
            }

            //Get the data from all the fields
            var name = $('input[name=contact_name]');
            var email = $('input[name=contact_email]');
            var phone = $('input[name=contact_tel]');
            var comment = $('textarea[name=contact_message]');

            //Simple validation to make sure user entered something
            //If error found, add hightlight class to the text field
            if (name.val()=='') {
                name.addClass('hightlight');
                return false;
            } else name.removeClass('hightlight');
            
            if ((email.val()=='') || (email.val().indexOf("@")==-1) || (email.val().indexOf(".")==-1)) {
                email.addClass('hightlight');
                return false;
            } else email.removeClass('hightlight');

            if (phone.val()=='') {
                phone.addClass('hightlight');
                return false;
            } else phone.removeClass('hightlight');
            
            if (comment.val()=='') {
                comment.addClass('hightlight');
                return false;
            } else comment.removeClass('hightlight');
            
            //organize the data properly
            var data = 'name=' + name.val() + '&email=' + email.val() + '&phone=' + phone.val() + '&comment='  + encodeURIComponent(comment.val());

            //disabled all the text fields
            $('.text').attr('disabled','true');
            
            //show the loading sign
            $('.loading').show();
            
            //start the ajax
            $.ajax({
                //this is the php file that processes the data and send mail
                url: "/includes/jquery/process_form.php",    
                
                //GET method is used
                type: "POST",

                //pass the data            
                data: data,        
                
                //Do not cache the page
                cache: false,
                //success
                success: function (html) {                
                    //if process_form.php returned 1/true (send mail success)
                    if (html==1) {                    
                        //hide the form
                        $('#contact_form').fadeOut('slow');                    
                        
                        //show the success message
                        $('#contact_done').fadeIn('slow');
                        
                    //if process_form.php returned 0/false (send mail failed)
                    } else {
                        alert('111Sorry, unexpected error. Please try again later.');                
                    }
                }        
            });
            
            //cancel the submit button default behaviours
            return false;
        });    
    });    
















































































This is my PHP form that handles the form itself:
  1. <?php
    require("../phpmailer/class.phpmailer.php"); //Change this to the path to the phpmailer class as stipulated by Brinkster
    function mymailer ($useremail=1, $subject, $message, $useremail_bcc=1) {         
        $mail = new PHPMailer();
        $mail->IsSMTP();                                      // set mailer to use SMTP
        $mail->Host = "localhost";  // change this to Brinkster host
        $mail->SMTPAuth = true;     // turn on SMTP authentication
        $mail->Username = "admin@orchot-hagilboa.com";  // SMTP username
        $mail->Password = "xxxxx"; // SMTP password
        $mail->CharSet = 'utf-8';    //for hebrew only
        
        $mail->From = "admin@orchot-hagilboa.com";
        $mail->FromName = "Orchot Hagilboa";
        if($useremail == 1){
            $mail->AddAddress('info@orchot-hagilboa.com');
        } else {
            $mail->AddAddress($useremail);
        }        
        if($useremail_bcc != 1){    //send emails to multiple address
            foreach(array_keys($useremail_bcc) as $name) {    // now loop through the combined results get NAME & EMAIL
                foreach($useremail_bcc[$name] as $email) {
                    #echo $name.' - '.$email.'<br/>';
                    $mail->AddBCC($email);
                }
            }
        }            
        
        $mail->IsHTML(true);
        $mail->Subject = $subject;
        $mail->Body    = $message;
                
        if(!@$mail->Send()) {
           echo "Message could not be sent. <p>";
           echo "Mailer Error: " . $mail->ErrorInfo;
           exit;
        }
    }

    //Retrieve form data.
    //GET - user submitted data using AJAX
    //POST - in case user does not support javascript, we'll use POST instead
    $name = ($_POST['name']) ? $_POST['name'] : $_POST['name'];
    $email = ($_POST['email']) ?$_POST['email'] : $_POST['email'];
    $phone = ($_POST['phone']) ?$_POST['phone'] : $_POST['phone'];
    $comment = ($_POST['comment']) ?$_POST['comment'] : $_POST['comment'];

    //flag to indicate which method it uses. If POST set it to 1
    if ($_POST) $post=1;

    //Simple server side validation for POST data, of course,
    //you should validate the email
    if (!$name) $errors[count($errors)] = 'Please enter your name.';
    if (!$email) $errors[count($errors)] = 'Please enter your email.';
    //if (!$phone) $errors[count($errors)] = 'Please enter your phone.';
    if (!$comment) $errors[count($errors)] = 'Please enter your comment.';

    //if the errors array is empty, send the mail
    if (!$errors) {

        //recipient - change this to your name and email
        $from = $name . ' <' . $email . '>';
        
        //subject and the html message
        $subject = 'צור קשר מ'.$name;    
        $message = '
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head></head>
        <body>
        <table>
            <tr><td>שם</td><td>' . $name . '</td></tr>
            <tr><td>מייל</td><td>' . $email . '</td></tr>
            <tr><td>טל</td><td>' . $phone . '</td></tr>
            <tr><td>הודעה</td><td>' . nl2br($comment) . '</td></tr>
        </table>
        </body>
        </html>';

        //send the mail
        $result = mymailer($from, $subject, $message);
        
        if ($result) return 1;
        else return 0;

        //if POST was used, display the message straight away
        if ($_POST) {
            if ($result) echo 'Thank you! We have received your message.';
            else echo '222Sorry, unexpected error. Please try again later';
            
        //else if GET was used, return the boolean value so that
        //ajax script can react accordingly
        //1 means success, 0 means failed
        } else {
            echo $result;    
        }

    //if the errors array has values
    } else {
        //display the errors message
        for ($i=0; $i<count($errors); $i++) echo $errors[$i] . '<br/>';
        echo '<a href="form.php">Back</a>';
        exit;
    }
    ?>









































































































I don't understand why it is not working. It is not sending me an email.

thanks