2012-04-10 5 views
0

im currnetly eine Website und im i habenJavascript Validierung PHP E-Mail-Informationen mit in Felder hinzugefügt

<form name="inputForm" onSubmit="return validateForm();" action="#"> 
<fieldset> 
    <p> 
     <label>First Name:</label> 
     <input type="text" name="first_name"/><br /> 
     <label>Surname:</label> 
     <input type="text" name="surname"/><br /> 
     <label>Address number:</label> 
     <input type="text" name="address_number"/><br /> 
     <label>Address name:</label> 
     <input type="text" name="address_name"/><br /> 
     <label>Suburb:</label> 
     <input type="text" name="suburb"/><br /> 
     <label>Postcode:</label> 
     <input type="text" name="postcode"/><br />  
     <label>State:</label> 
     <select name="state"> 
      <option value="nsw">NSW 
      <option value="qld">QLD 
      <option value="act">ACT 
      <option value="vic">VIC 
      <option value="sa">SA 
      <option value="tas">TAS 
      <option value="nt">NT 
      <option value="wa">WA 
      </SELECT><br /> 
     <label>Email:</label> 
     <input type="text" name="email"/><br /> 
     <label>Phone Number:</label> 
     <input type="text" name="phone"/><br /> 
     <input type="submit" name="submit" value="Send form" /> 
     <input type="reset" name="reset" value="reset" /> 
     </p> 
</fieldset> 
</form> 

, die eine Form stecken machen wird dann durch Javascript

validiert
function validateForm() 
{ 
    var form = document.forms['inputForm']; 
    var formats = 
     { 
      first_name: /^[a-zA-Z]+[\-'\s]?[a-zA-Z]+$/,        /*works for a-Z allows - and '*/ 
      surname: /^[a-zA-Z]+[\-'\s]?[a-zA-z]+$/,        /*works for a-Z allows - and '*/ 
      postcode: /^\d{4}$/,             /*4digit post code australia wide*/ 
      email: /^\w+([\.-]w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/,     /*allows all word characters and normal email formats*/ 
      address_number: /^\d[0-9]$/,             /*allows any number of digits*/ 
      address_name: /^\w?\s?[a-zA-Z]+(,?\s([a-zA-Z])*)*$/,   /*allows numbers space capital letters and other word characters*/ 
      suburb: /^\w?\s?[a-zA-Z]+(,?\s([a-zA-Z])*)*$/,   /*allows numbers space capital letters and other word characters*/ 
      phone: /^\d{8}$/,              /*8 number phone number*/ 
     }; 
     var elCount = form.elements.length; 
     for(var i = 0; i<elCount; i++) 
     { 
      var field = form.elements[i]; 
      if(field.type == 'text') 
      { 
       if(!formats[field.name].test(field.value)) 
       { 
        alert('invalid '+ field.name.replace('_',' ')+'.');    /*alerts the name of the area not filled right in a pop up box*/ 
        field.focus(); 
        return false; 
       } 
      } 
     } 
     alert('All fields correct, the form will now submit.') 
} 

dann muss ich PHP sammeln diese Informationen und senden Sie es an meine E-Mail-Adresse (das ist, wo ich feststecke)

jetzt habe ich b een meinen Kopf über diese für ein paar Tage Kratzen sah es nach oben kann nicht alles im noch das Lernen über PHP und Javascript

die Javascript und HTML Adaequat seine nur die Mail-Funktion finden Sie

+1

Was ist das Problem? Bitte stellen Sie eine Frage. – Bergi

+0

Überprüfen Sie, ob Ihr Server die Funktion mail() verwenden kann. Wenn dies zulässig ist, vergewissern Sie sich, dass Sie die Funktion bestätigen. – Lobo

+0

Versuchen Sie die Mail-Funktion ohne Abhängigkeiten aufzurufen, nur in einem einfachen PHP-Script. Ich denke, das wird wahrscheinlich auch nicht funktionieren, weil Sie die Mail nicht richtig eingerichtet haben (http://www.php.net/manual/en/mail.setup.php). – fragmentedreality

Antwort

0

erste, fügen Methode zu verwenden = "post", um Ihre Form, so dass es wie folgt aussieht:

Weiter

$headers = "from: email\r\n"; 

zu

$headers = "from: {$_POST['email']}\r\n"; 
0

Sie benötigen Hilfe Methode angeben. .

form method="post" 

Und ich bin nicht sicher, ob action="#" auch richtige Weg ist

+0

action = "#" es richtig. Es ist ein Platzhalter für die gleiche Website. – Stony

+0

es sei denn, Sie verwenden '' HTML-Tag, das auf einen anderen Ort zeigt, dann wird es auf andere Seite posten .. was zu Problemen führen kann –

0

Versuchen isemail für E-Mail-Validierung in PHP. Es ist das umfassendste E-Mail-Validierungsskript. Es folgt alle RFCs über E-Mail.