Quantcast
Channel: Adobe Community: Message List
Viewing all articles
Browse latest Browse all 114192

Help with JS form, PHP Contact Form....

$
0
0

I originally posted this in another area, but had no luck...

 

I'm having trouble with a template that I downloaded (from Template Monster). My contact form shows "submitted", but I get no email.  I will submit my coding below & see if someone can help... My JS.forms is in a "JS" sub-folder in the main directory and my index.html and MailHandler.php/ashx files are in the main directory.

 

MailHandler.php --

 

<?php

    $owner_email = $_POST["owner_email"];

    $headers = 'From:' . $_POST["email"];

    $subject = 'A message from your site visitor ' . $_POST["name"];

    $messageBody = "";

   

    if($_POST['name']!='nope'){

        $messageBody .= '<p>Visitor: ' . $_POST["name"] . '</p>' . "\n";

        $messageBody .= '<br>' . "\n";

    }

    if($_POST['email']!='nope'){

        $messageBody .= '<p>Email Address: ' . $_POST['email'] . '</p>' . "\n";

        $messageBody .= '<br>' . "\n";

    }else{

        $headers = '';

    }

    if($_POST['state']!='nope'){       

        $messageBody .= '<p>State: ' . $_POST['state'] . '</p>' . "\n";

        $messageBody .= '<br>' . "\n";

    }

    if($_POST['phone']!='nope'){       

        $messageBody .= '<p>Phone Number: ' . $_POST['phone'] . '</p>' . "\n";

        $messageBody .= '<br>' . "\n";

    }   

    if($_POST['fax']!='nope'){       

        $messageBody .= '<p>Fax Number: ' . $_POST['fax'] . '</p>' . "\n";

        $messageBody .= '<br>' . "\n";

    }

    if($_POST['message']!='nope'){

        $messageBody .= '<p>Message: ' . $_POST['message'] . '</p>' . "\n";

    }

   

    if($_POST["stripHTML"] == 'true'){

        $messageBody = strip_tags($messageBody);

    }

   

    try{

        if(!mail($owner_email, $subject, $messageBody, $headers)){

            throw new Exception('mail failed');

        }else{

            echo 'mail sent';

        }

    }catch(Exception $e){

        echo $e->getMessage() ."\n";

    }

?>

 

 

 

JS Form --

//forms

;(function($){

    $.fn.forms=function(o){

        return this.each(function(){

            var th=$(this)

                ,_=th.data('forms')||{

                    errorCl:'error',

                    emptyCl:'empty',

                    invalidCl:'invalid',

                    notRequiredCl:'notRequired',

                    successCl:'success',

                    successShow:'4000',

                    mailHandlerURL:'MailHandler.php',

                    ownerEmail:'I have Client's Email Here',

                    stripHTML:true,

                    smtpMailServer:'localhost',

                    targets:'input,textarea',

                    controls:'a[data-type=reset],a[data-type=submit]',

                    validate:true,

                    rx:{

                        ".name":{rx:/^[a-zA-Z'][a-zA-Z-' ]+[a-zA-Z']?$/,target:'input'},

                        ".state":{rx:/^[a-zA-Z'][a-zA-Z-' ]+[a-zA-Z']?$/,target:'input'},

                        ".email":{rx:/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@(( ?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1 [0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][ 0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i,target:'input'},

                        ".phone":{rx:/^\+?(\d[\d\-\+\(\) ]{5,}\d$)/,target:'input'},

                        ".fax":{rx:/^\+?(\d[\d\-\+\(\) ]{5,}\d$)/,target:'input'},

                        ".message":{rx:/.{20}/,target:'textarea'}

                    },

                    preFu:function(){

                        _.labels.each(function(){

                            var label=$(this),

                                inp=$(_.targets,this),

                                defVal=inp.val(),

                                trueVal=(function(){

                                            var tmp=inp.is('input')?(tmp=label.html().match(/value=['"](.+?)['"].+/),!!tmp&&!!tmp[1]&&tmp [1]):inp.html()

                                            return defVal==''?defVal:tmp

                                        })()

                            trueVal!=defVal

                                &&inp.val(defVal=trueVal||defVal)

                            label.data({defVal:defVal})                               

                            inp

                                .bind('focus',function(){

                                    inp.val()==defVal

                                        &&(inp.val(''),_.hideEmptyFu(label),label.removeClass(_.invalidCl))

                                })

                                .bind('blur',function(){

                                    _.validateFu(label)

                                    if(_.isEmpty(label))

                                        inp.val(defVal)

                                        ,_.hideErrorFu(label.removeClass(_.invalidCl))                                           

                                })

                                .bind('keyup',function(){

                                    label.hasClass(_.invalidCl)

                                        &&_.validateFu(label)

                                })

                            label.find('.'+_.errorCl+',.'+_.emptyCl).css({display:'block'}).hide()

                        })

                        _.success=$('.'+_.successCl,_.form).hide()

                    },

                    isRequired:function(el){                           

                        return !el.hasClass(_.notRequiredCl)

                    },

                    isValid:function(el){                           

                        var ret=true

                        $.each(_.rx,function(k,d){

                            if(el.is(k))

                                ret=d.rx.test(el.find(d.target).val())                                       

                        })

                        return ret                           

                    },

                    isEmpty:function(el){

                        var tmp

                        return (tmp=el.find(_.targets).val())==''||tmp==el.data('defVal')

                    },

                    validateFu:function(el){                           

                        el.each(function(){

                            var th=$(this)

                                ,req=_.isRequired(th)

                                ,empty=_.isEmpty(th)

                                ,valid=_.isValid(th)                               

                           

                            if(empty&&req)

                                _.showEmptyFu(th.addClass(_.invalidCl))

                            else

                                _.hideEmptyFu(th.removeClass(_.invalidCl))

                           

                            if(!empty)

                                if(valid)

                                    _.hideErrorFu(th.removeClass(_.invalidCl))

                                else

                                    _.showErrorFu(th.addClass(_.invalidCl))                               

                        })

                    },

                    getValFromLabel:function(label){

                        var val=$('input,textarea',label).val()

                            ,defVal=label.data('defVal')                               

                        return label.length?val==defVal?'nope':val:'nope'

                    }

                    ,submitFu:function(){

                        _.validateFu(_.labels)                           

                        if(!_.form.has('.'+_.invalidCl).length)

                            $.ajax({

                                type: "POST",

                                url:_.mailHandlerURL,

                                data:{

                                    name:_.getValFromLabel($('.name',_.form)),

                                    email:_.getValFromLabel($('.email',_.form)),

                                    phone:_.getValFromLabel($('.phone',_.form)),

                                    fax:_.getValFromLabel($('.fax',_.form)),

                                    state:_.getValFromLabel($('.state',_.form)),

                                    message:_.getValFromLabel($('.message',_.form)),

                                    owner_email:_.ownerEmail,

                                    stripHTML:_.stripHTML

                                },

                                success: function(){

                                    _.showFu()

                                }

                            })           

                    },

                    showFu:function(){

                        _.success.slideDown(function(){

                            setTimeout(function(){

                                _.success.slideUp()

                                _.form.trigger('reset')

                            },_.successShow)

                        })

                    },

                    controlsFu:function(){

                        $(_.controls,_.form).each(function(){

                            var th=$(this)

                            th

                                .bind('click',function(){

                                    _.form.trigger(th.data('type'))

                                    return false

                                })

                        })

                    },

                    showErrorFu:function(label){

                        label.find('.'+_.errorCl).slideDown()

                    },

                    hideErrorFu:function(label){

                        label.find('.'+_.errorCl).slideUp()

                    },

                    showEmptyFu:function(label){

                        label.find('.'+_.emptyCl).slideDown()

                        _.hideErrorFu(label)

                    },

                    hideEmptyFu:function(label){

                        label.find('.'+_.emptyCl).slideUp()

                    },

                    init:function(){

                        _.form=_.me                       

                        _.labels=$('label',_.form)

 

                        _.preFu()

                       

                        _.controlsFu()

                                                       

                        _.form

                            .bind('submit',function(){

                                if(_.validate)

                                    _.submitFu()

                                else

                                    _.form[0].submit()

                                return false

                            })

                            .bind('reset',function(){

                                _.labels.removeClass(_.invalidCl)                                   

                                _.labels.each(function(){

                                    var th=$(this)

                                    _.hideErrorFu(th)

                                    _.hideEmptyFu(th)

                                })

                            })

                        _.form.trigger('reset')

                    }

                }

            _.me||_.init(_.me=th.data({forms:_}))

            typeof o=='object'

                &&$.extend(_,o)

        })

    }

})(jQuery)

$(window).load(function() {   

    $('#ContactForm').forms({

        ownerEmail:'I Have Client's Email Here'

    })

})

 

 

 

Contact HTML --

 

<form action="contact.php" method="post" id="ContactForm">

                            <div class="success"> Contact form submitted!<br>

                              <strong>We will be in touch soon.</strong> </div>

                            <fieldset>

                              <div class="wrapper">

                                <span class="col1">Name:</span>

                                <label class="name">

                                  <span class="bg"><input name="cf_name" type="text" class="input"></span>

                                  <span class="error">*This is not a valid name.</span> <span class="empty">*This field is required.</span>

                                  </label>

                                </div>

                              <div class="wrapper">

                                <span class="col1">Email:</span>

                                <label class="email">

                                  <span class="bg"><input name="cf_email" type="text" class="input"></span>

                                  <span class="error">*This is not a valid email address.</span> <span class="empty">*This field is required.</span>

                                  </label>

                                </div>

                              <div class="wrapper">

                                <span class="col1">Phone:</span>

                                <label class="phone">

                                  <span class="bg"><input name="cf_phone" type="text" class="input"></span>

                                  <span class="error">*This is not a valid phone number.</span> <span class="empty">*This field is required.</span>

                                  </label>

                                </div>

                              <div class="wrapper">

                                <span class="col1">Message:</span>

                                <label class="message">

                                  <span class="bg"><textarea name="cf_message" rows="1" cols="1"></textarea></span>

                                  <span class="error">*The message is too short.</span> <span class="empty">*This field is required.</span>

                                  </label>

                                </div>

                              <div class="btns"><a href="#" class="link1" data-type="submit">Send</a><a href="#" class="link1" data-type="reset">Clear</a></div>

                              </fieldset>

                            </form>


Viewing all articles
Browse latest Browse all 114192

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>