tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
1
ZUGRIFFE
131
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    _SimonSez_ _SimonSez_ ist offline Mitglied Bronze
    Registriert seit
    Feb 2010
    Beiträge
    41
    Hallo zusammen,

    habe von einem Kollegen ein Kontaktformular bekommen, und es ein wenig gekürzt und jetzt bekomme ich eine Fehlermeldung.
    Es soll ein Fehler nach </form> bei dem "else" sein. Leider habe ich noch nicht die Ahnung von PHP. Kann mir jemand helfen?

    hier der Code:
    PHP-Code:
    <?php
      
      $formularAnzeigen 
    false;
      if (!empty(
    $_POST["senden"]) && (
          empty(
    $_POST["Name"]) ||
          empty(
    $_POST["eMail"]) ||
          empty(
    $_POST["betreff"]) ||
          !
    $captchaValidierungOk ||
          empty(
    $_POST["nachricht"]))) {
        
    $formularAnzeigen true;
        echo 
    '<span style="color: #FF0000; font-size: x-large;">Bitte alle Pflichtfelder ausfuellen.</span>';
      } else if (!empty(
    $_POST["senden"]) &&
                 !
    isEmail($_POST["eMail"])) {
        
    $formularAnzeigen true;  
        echo 
    '<span style="color: #FF0000; font-size: x-large;">Die E-Mail-Adresse ist nicht korrekt.</span>';
      } else if (empty(
    $_POST["senden"])) {
        
    $formularAnzeigen true;  
      }
      if (
    $formularAnzeigen) {
    ?>
    <form name="kontaktFormular" method="post" action="<?=$_SERVER[PHP_SELF]; ?>" onSubmit="return isValid()">
      <table width="187" border="0">  
        <tr><td width="181"><strong>Name:</strong><br><input name="nachName" type="text" value="<?=$_POST['Name']; ?>" /></td></tr>
        <tr><td><strong>E-Mail:</strong><br><input name="eMail" type="text" id="eMail" value="<?=$_POST['eMail']; ?>" /></td></tr>
        <tr><td><strong>Betreff:</strong><br><input name="betreff1" type="text" id="betreff1" value="<?=$_POST['betreff']; ?>" /></td></tr>
        <tr><td><strong>Nachricht:</strong><br><textarea name="nachricht" rows="10"><?=$_POST['nachricht']; ?></textarea></td></tr>
        <tr><td>Code: <?=$code?><br><input type="text" name="captcha_code" size="4" /></td></tr>   
        <tr><td><div><input name="senden" type="submit" value="Senden" /></div></td></tr>
      </table>
    </form>

    <?php
       
    else {
        
    $eMail '
            
    Name:
    '
    .$_POST['Name'].'
            
    E-Mail:
    '
    .$_POST['eMail'].'
            
    Betreff:
    '
    .$_POST['betreff'].'
            
    Nachricht:
    '
    .$_POST['nachricht'].'
            

    '
    .$_POST['captcha'].'';
        
        if (@
    mail("######",
             
    "Neue Nachricht vom Kontaktformular",
             
    $eMail)) {
          echo 
    "Vielen Dank für Ihre Nachricht..<br />"
        } else {
          echo 
    "E-Mail-Verkehr funktioniert zur Zeit nicht<br />";
        }
        if (
    $_POST['kopie']) {
          if (@
    mail($_POST['eMail'],
               
    "Ihre Kopie",
               
    $eMail)) {
            echo 
    "Eine Kopie Ihrer Nachricht, wurde an Sie verschickt.<br />";
          }
        }
      }
      
      function 
    isEmail($email) {
        
    $nonascii      "\x80-\xff"
        
    $nqtext        "[^\\$nonascii\015\012\"]";
        
    $qchar         "\\[^$nonascii]";
        
    $protocol      "(?:mailto:)";
        
    $normuser      "[a-zA-Z0-9][a-zA-Z0-9_.-]*";
        
    $quotedstring  "\"(?:$nqtext|$qchar)+\"";
        
    $user_part     "(?:$normuser|$quotedstring)";
        
    $dom_mainpart  "[a-zA-Z0-9][a-zA-Z0-9._-]*\.";
        
    $dom_subpart   "(?:[a-zA-Z0-9][a-zA-Z0-9._-]*\.)*";
        
    $dom_tldpart   "[a-zA-Z]{2,5}";
        
    $domain_part   "$dom_subpart$dom_mainpart$dom_tldpart";
        
    $regex         "$protocol?$user_part\@$domain_part";
        if (
    preg_match("/^$regex$/",$email)) {
          return 
    true;
        }
        return 
    false;
      }
    ?>
    Gruß
    Simon
     

  2. #2
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Hab keine Lust zum selber testen. Also, wie sieht denn die Fehlermeldung aus?

    Nun gut, habs getestet.

    Parse error: syntax error, unexpected T_ELSE in I:\xampp\htdocs\test\test.php on line 33

    Und? Genau, bevor man ein else schreibt, muss man das if schliessen

    if(true){
    } else {
    }
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

Ähnliche Themen

  1. Kontaktformular
    Von kdc im Forum PHP
    Antworten: 3
    Letzter Beitrag: 05.03.08, 16:46
  2. Fehleranzeige in modalem Dialog
    Von HowlinMad im Forum .NET Web und Kommunikation
    Antworten: 0
    Letzter Beitrag: 19.09.07, 13:18
  3. PC-Absturz ohne Fehleranzeige
    Von SpockData im Forum Microsoft Windows
    Antworten: 2
    Letzter Beitrag: 01.01.07, 17:05
  4. Fehleranzeige
    Von Zimtgruen im Forum PHP
    Antworten: 1
    Letzter Beitrag: 27.08.05, 13:48
  5. Kontaktformular
    Von Gismon im Forum PHP
    Antworten: 6
    Letzter Beitrag: 03.02.05, 20:30