Ergebnis 1 bis 5 von 5
  1. #1
    Rheinischer Krummstiel
    Themenstarter
    Avatar von Justus J.
    Registriert
    12.2007
    Alter
    15
    Beiträge
    380

    PHP-Script stellt nicht angegebene Fehlermeldung dar

    Hallo!
    Ich habe ein Formular mit HTML erstellt und als Aktion beim Klick auf den 'Senden'-Button eine PHP Datei definiert.
    Das ist jetzt das erste Mal, dass ich mich richtig mit PHP beschäftige, deshalb kenne ich mich auch noch nicht so aus.

    Ich habe nun bestimmte Fehlermeldungen festgelegt, die aber nicht angezeigt werden.

    Hier mein Code:
    Code:
    <?PHP  
    extract($_POST);  
    $bericht = stripcslashes(nl2br($bericht));  
    
    $header  = "From: $email\n";  
    $header .= "MIME-Version: 1.0\n";  
    $header .= "Content-Type: text/html;\n";  
    $header .= "X-Mailer: PHP/".phpversion();  
    $empfaenger = "xxx";  
    $subject = "Testleser Formular";  
    
    $error[0] = false; // noch kein fehler 
    if ($_POST["agbs"] == ""){ //exemplarisch für alle anderen wird überprüft ob im Feld "abteilung" etwas übergeben worden ist 
        $error_text[0] = "Um ein Testleseexemplar zu erhalten, musst du unsere Bedingungen akzeptieren."; // wenn nicht wird ein text definiert der dann irgendwo ausgegeben werden kann 
        $error_text[1] = "Nein";
        
        
        $error[0] = true; // und natürlich brauchen wir noch eine variable die an der wir erkennen wo der fehler aufgetreten ist 
    } 
    $error[2] = false; // noch kein fehler
    if ($_POST["vorname"] == "")
    if ($_POST["nachname"] == "")
    if ($_POST["email"] == "") {
        $error_text[2] = "Du hast nicht alle Felder ausgefüllt";
      
        $error[2] = true;
    }
    
    $error[3] = false;
    if ($_POST["emailbestaetigt"] == "$email")
        $error_text[3] = "Die beiden eMail-Adressen sind nicht identisch";
        
        $error[3] = true;
        
    
    echo "<center><u><b>Sie haben folgende Angaben gemacht:</u><p> ";  
    $message = "  
    <table border='0' cellspacing='0' cellpadding='10' style='width:700px;margin:50px auto;border:1px solid #7F7F7F'>  
     <colgroup>  
      <col style='width:200px'></col>  
      <col></col>  
     </colgroup>  
      <tr>  
      <td>Name</b></td><td>$vorname $name</td> 
      </tr>  
      <tr>  
      <td>Geburtsdatum</b></td><td>$Tag. $Monat $jahr</td>  
      </tr>  
      <tr>  
      <td>eMail</b></td><td>$email</td> 
      </tr>  
      <tr>  
      <td>Newsletter</b></td><td>$journal 
      $error_text[1]
      </td>  
      </tr>  
    </table>  
    ";  
    echo "$message<p>";  
    
    echo $error_text[0]; // Ausgabe bei nicht akzeptierten Bedingungen
    echo $error_text[2]; // Ausgabe bei nicht ausgefüllten Feldern
    echo $error_text[3]; // Ausgabe bei nicht identischen eMail-Adressen
    
    if($error[2] !== true){ // Befehl, damit eMail nicht verschickt wird, falls nicht alle Angaben gemacht wurden
    if($error[0] !== true){ // Befehl, damit eMail nicht verschickt wird, falls nicht alle Angaben gemacht wurden 
    if($error[3] !== true){ // Befehl, damit eMail nicht verschickt wird, falls nicht alle Angaben korrekt sind
        $send = @mail($empfaenger, $subject, $message, $header);  
        if($send)  
        {  
        echo "versendet";  
        }  
        else  
        {  
        echo "nicht versendet";  
        }  
    }}}
    
    
    ?>
    Ich hoffe ihr könnt mir helfen
    Justus J.

  2. #2
    Englischer Kantapfel Avatar von _linx_
    Registriert
    01.2009
    Alter
    19
    Beiträge
    1.086
    Die drei if, mit denen du abfragst, ob es keinen Fehler gibst, kannst du in eine packen. Sie dir den Operator OR an. Dann würde ich persönlich dort eine else machen, die einen Fehler ausgibt, falls es einen hat.

  3. #3
    Lane's Prinz Albert Avatar von zeno
    Registriert
    11.2005
    Ort
    Oberpfaffelbachen
    Beiträge
    4.891
    Ist !== ein neuer Operator von dem ich noch nichts mitgekriegt hab?
    1. Axiom der Quantenphilosophie: Nichts genaues weiß man nicht.
    Dir gefällt dieser Beitrag? --> Flattr mich

  4. #4
    Oxy
    Oxy ist offline
    Antonowka
    Registriert
    03.2007
    Ort
    Gehrden
    Alter
    24
    Beiträge
    363
    Zitat Zitat von zeno Beitrag anzeigen
    Ist !== ein neuer Operator von dem ich noch nichts mitgekriegt hab?
    Ich denke das wird fer Fehler sein xD , also nein du hast nix verpasst es soll wohl " != " heissen.

    Und was Linx sagt stimmt soweit auch , es ist dann nur etwas unübersichtlicher , finde ICH.
    If ( Pc != Null )
    { If(Pc.Os =="Mac Os")
    { Gut }else { Mist }
    }

  5. #5
    Jerseymac Avatar von creative7even
    Registriert
    02.2005
    Alter
    30
    Beiträge
    454
    Zitat Zitat von zeno Beitrag anzeigen
    Ist !== ein neuer Operator von dem ich noch nichts mitgekriegt hab?
    dieser Operator führt zusätzlich eine Typprüfung durch (ich würde diesen zwingend empfehlen ).
    bspw.:
    Code:
    $arg01 = 1;
    $arg02 = '1';
    var_dump($arg01 == $arg02); // evaluates to TRUE
    var_dump($arg01 === $arg02); // evaluates to FALSE
    
    $arg01 = 1;
    $arg02 = TRUE;
    var_dump($arg01 == $arg02); // evaluates to TRUE
    var_dump($arg01 === $arg02); // evaluates to FALSE

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •