PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 08-09-2015 23:10:02

CHSCT
Membre
Inscription : 08-09-2015
Messages : 3

Problème de formulaire : je ne reçois pas les messages :(

Bonsoir,
Je suis en train de travailler sur un formulaire. Le fichier html fait appel à un fichier js. Ce dernier fait appel à un fichier PHP.
Lorsque je clique sur "envoyer", j'ai bien en réponse "email sent"... mais rien dans ma boîte mail.
J'ai tenté de comprendre les fichiers js et php, mais vu que je débute : rien trouvé sad
HELP-ME !!! Je vous joins les deux fichiers :


//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:'bat/MailHandler.php',
          ownerEmail:'dm15517@gmail.com',
          stripHTML:true,
          smtpMailServer:'auth.smtp.1and1.fr',
          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(){  
       $('#contact-form').forms({
       ownerEmail:'dm15517@gmail.com'
       })
   })
 

et le code PHP :


<?php
  $owner_email = $_POST["dm15517@gmail.com"];
  $headers = 'From:dm15517@gmail.com' . $_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";
  }
?>
 

Bonne soirée et merci,
CHSCT

Hors ligne

#2 09-09-2015 13:13:12

tof73
Membre
Inscription : 21-12-2014
Messages : 150
Site Web

Re : Problème de formulaire : je ne reçois pas les messages :(

tu reçois bien un email avec un simple :
mail("tonemail@quelque.chose", "subject", "messageBody");
en php ?

Hors ligne

#3 09-09-2015 14:18:54

CHSCT
Membre
Inscription : 08-09-2015
Messages : 3

Re : Problème de formulaire : je ne reçois pas les messages :(

Bonjour tof73 et merci pour ta réponse,
Non, aucune réponse dans ma messagerie sad
Je suis perdu !
Bon après-midi,
CHSCT

Dernière modification par CHSCT (09-09-2015 20:00:36)

Hors ligne

#4 10-09-2015 22:35:25

CHSCT
Membre
Inscription : 08-09-2015
Messages : 3

Re : Problème de formulaire : je ne reçois pas les messages :(

Personne pour m'aider hmm

Hors ligne

Pied de page des forums