formular prüfen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • formular prüfen

    hallo gemeinschaft

    könnt ihr mal schauen - wie bekomme ich es hin, dass die daten, die ich eingegeben habe bestehen bleiben - wenn ich das formular so losschicken möchte (ich weiss - es fehlt noch code) sind die vorhereingegebenen daten weg - was muss ich da machen

    PHP-Code:
    <?PHP

    $script 
    'http://' $_SERVER["SERVER_NAME"] . $_SERVER["SCRIPT_NAME"];

    $errorFields = array(                     'telefone',
                                             
    'lastname',
                                             
    'email'
                                             
    );    

    for(
    $x=0;$x<count($errorFields);$x++)
    {
        
    $errorClass[$errorFields[$x]] = 'inputField';
    }

    if(isset(
    $_POST['submit']))
    {
        
        
    $error FALSE;
        foreach(
    $errorFields as $key => $value)
        {
        
            if(empty(
    $_POST[$errorFields[$key]]))
            {
                
    $error TRUE;
                
    $errorClass[$value] = 'errorField';
                
    $errorPicture[$value] = '<img src="achtung_klein.gif">&nbsp;';
            }
        
        }

    }

    if(
    $_GET['check'] == "TRUE")
    {
        
    $errorMessage '<table width="100%" class="errorTable"><tr><td><b>
                                         Ihr Angebot war erfolgreich!</b><br><br>
                                         </td></tr></table><br>'
    ;
    }

    if(isset(
    $_POST['submit'])){
        
        if(
    $error == TRUE)
        {
            
    $errorMessage '<table width="100%" class="errorTable"><tr><td>
                                             <img src="achtung_gross.gif"></td><td>
    <b>Achtung!</b><br>

                                             Es ist zu einem Fehler gekommen. Bitte
     füllen Sie alle 

                                             farblich markierten Pflichtfelder aus.</td>
    </tr></table><br>'
    ;

        }
        else
        {
            
            
    // Alles ist in Ordnung
            // Daten können gespeichert werden
            
            // Seite neu laden und Hinweis anzeigen
            
    $email2 "test@web.de";
            
    mail($email2,$betreff,$mailadresse1,"From: $email1 <$email1>;");
            
    header("Location: $script?check=TRUE");
        }

    }

    ?>

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Formular</title>
    <link rel="stylesheet" type="text/css" href="formStyle.css">
    </head>

    <body>
    <div id="inhalt">

      <table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr background="css/hintergrund.jpg"> 
          <td height="835">&nbsp;</td>
          <td width="960"> 
            <table width="960" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="34" background="css/hintergrund_links.jpg">&nbsp;</td>
                <td width="34" background="css/hintergrund_rechts.jpg">&nbsp;</td>
              </tr>
            </table></td>
          <td>&nbsp;</td>
        </tr>
      </table>

    </div>
    <FORM action="<?PHP echo $script?>" method=post>
    <div id="text">
        <table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr> 
            <td>Hersteller</td>
            <td>&nbsp;</td>
            <td> <select name="hersteller">
                <option value="0">-- Bitte w&auml;hlen --</option>
                <option value="Alfa Romeo">Alfa Romeo</option>
                <option value="Aston Martin">Aston Martin</option>
                <option value="Audi">Audi</option>
                <option value="Bentley">Bentley</option>
                <option value="BMW">BMW</option>
                <option value="Chevrolet">Chevrolet</option>
                <option value="Chrysler">Chrysler</option>
                <option value="Citroen">Citroen</option>
                <option value="Daewoo">Daewoo</option>
                <option value="Daihatsu">Daihatsu</option>
                <option value="Dodge">Dodge</option>
                <option value="Ferrari">Ferrari</option>
                <option value="Fiat">Fiat</option>
                <option value="Ford">Ford</option>
                <option value="Honda">Honda</option>
                <option value="Hyundai">Hyundai</option>
                <option value="Isuzu">Isuzu</option>
                <option value="Jaguar">Jaguar</option>
                <option value="Kia">Kia</option>
                <option value="Lancia">Lancia</option>
                <option value="Land Rover">Land Rover</option>
                <option value="Lexus">Lexus</option>
                <option value="Lotus">Lotus</option>
                <option value="Maserati">Maserati</option>
                <option value="Mazda">Mazda</option>
                <option value="Mercedes-Benz">Mercedes-Benz</option>
                <option value="MG">MG</option>
                <option value="Mini">Mini</option>
                <option value="Mitsubishi">Mitsubishi</option>
                <option value="Nissan">Nissan</option>
                <option value="Opel">Opel</option>
                <option value="Peugeot">Peugeot</option>
                <option value="Porsche">Porsche</option>
                <option value="Renault">Renault</option>
                <option value="Rover">Rover</option>
                <option value="Saab">Saab</option>
                <option value="Seat">Seat</option>
                <option value="Skoda">Skoda</option>
                <option value="Smart">Smart</option>
                <option value="Subaru">Subaru</option>
                <option value="Suzuki">Suzuki</option>
                <option value="Toyota">Toyota</option>
                <option value="Volvo">Volvo</option>
                <option value="VW">VW</option>
                <option value="Sonstige">Sonstige</option>
              </select> </td>
          </tr>
          <tr> 
            <td>Modell</td>
            <td>&nbsp;</td>
            <td><input name="modell" type="text" id="modell3" maxlength="30" /></td>
          </tr>
          <tr> 
            <td>Erstzulassung</td>
            <td>&nbsp;</td>
            <td><input name="erstzulassung" type="text" id="erstzulassung" /></td>
          </tr>
          <tr> 
            <td>Kilometerleistung</td>
            <td>&nbsp;</td>
            <td><input name="km" type="text" id="km" /></td>
          </tr>
          <tr> 
            <td colspan="3">&nbsp;</td>
          </tr>
        </table>
    </div>
    </FORM>
    </body>
    </html>

  • #2
    Also, ich habe immer Formular und Verarbeitungsscript in einer Datei.

    Am Anfang der Seite überprüfe ich ob Daten übertragen wurden, zum Beispiel kann man dem Absende Button einen Wert zuweisen:

    Code:
    <input type="submit" id="send" name="send" value=" Absenden " />
    Wenn es keine Daten gibt soll ja das Formular angzeigt werden, das ist die Grundeinstellung:

    PHP-Code:
    $form 1
    Dann überprüfe ich, ob es den Wert des Buttons gibt:

    PHP-Code:
    if(isset($_POST['send'])){
     [
    Es wurden Daten übergeben]

    Falls Daten übergeben wurden, überprüfe ich sie auf Korrektheit und Vollständigkeit und speicher ggf. eine Meldung.

    PHP-Code:
    $form_info '';
    if(!isset(
    $_POST['username'] OR strlen($_POST['username']) >= 6)){
     
    $form_info .= 'Dein Username ist zu kurz<br />';
    }
    if(!isset(
    $_POST['Wohnort'])){
     
    $form_info .= 'Du hast keinen Ort angegeben<br />';

    Jetzt gucke ich ob eine Meldung existiert, wenn es keine gibt werden die Daten verarbeitet, das Formular wird nicht angezeigt und es gibt eine Erfolgsmeldung:

    PHP-Code:
    if($form_info == ''){
     [
    Daten speichern]
     echo 
    'Alles wurde gespeichert';
     
    $form 0;

    So nun kommt das formular, die Überprüfung ob es angezeigt werden soll, ob es Meldungen gibt und evtl. Einträge:

    PHP-Code:
    <?php
    if($form == 1){
     if(isset(
    $form_info)){
      echo 
    $form_info;
     }
    ?>
    <form action="dateiname.php" method="post" enctype="multipart/form-data" accept-charset="utf-8">  
     Name: <input name="username" id="username" type="text" size="30" maxlength="255" value="<?=$_POST['username']?>"/><br />
     Wohnort: <input name="ort" id="ort" type="text" size="30" maxlength="255" value="<?=$_POST['ort']?>"/><br />
    <input type="submit" id="send" name="send" value=" Absenden " />
    </form>
    <?php ?>
    Das ganze dürfte dann so aussehen:
    PHP-Code:
    <?php
    $form 
    1;
    if(isset(
    $_POST['send'])){
    $form_info '';
     if(!isset(
    $_POST['username'] OR strlen($_POST['username']) >= 6)){
      
    $form_info .= 'Dein Username ist zu kurz<br />';
     }
     if(!isset(
    $_POST['Wohnort'])){
      
    $form_info .= 'Du hast keinen Ort angegeben<br />';
     }
     if(
    $form_info == ''){
      [
    Daten speichern]
      echo 
    'Alles wurde gespeichert';
      
    $form 0;
     }
    }
    <?
    php
    if($form == 1){
     if(isset(
    $form_info)){
      echo 
    $form_info;
     }
    ?>
    <form action="dateiname.php" method="post" enctype="multipart/form-data" accept-charset="utf-8">  
     Name: <input name="username" id="username" type="text" size="30" maxlength="255" value="<?=$_POST['username']?>"/><br />
     Wohnort: <input name="ort" id="ort" type="text" size="30" maxlength="255" value="<?=$_POST['ort']?>"/><br />
    <input type="submit" id="send" name="send" value=" Absenden " />
    </form>
    <?php }
    ?>

    Keine grantie dafür ob ich irgendwo einen Fehler eingebaut habe

    Kommentar


    • #3
      Stichwort Affenformular. 100.000 mal behandelt, einfach ein mal suchen!

      Kommentar


      • #4
        hallo - habe das script von laire verwendet - bekomme nun diese meldung

        Parse error: syntax error, unexpected T_LOGICAL_OR, expecting ',' or ')' in /..../formular.php on line 5

        zeile 5 ist diese
        if(!isset($_POST['username'] OR strlen($_POST['username']) >= 6)){

        Kommentar


        • #5
          Original geschrieben von jhaustein
          Parse error: syntax error, unexpected T_LOGICAL_OR, expecting ',' or ')' in /..../formular.php on line 5

          zeile 5 ist diese
          if(!isset($_POST['username'] OR strlen($_POST['username']) >= 6)){
          Wenn das OR unexpected ist, dann fehlt davor was - und was könnte das wohl sein ...?
          (Ganz fetter Hinweis: Wenn die Meldung auch was von "expecting ..." sagt, dann könnte man das ja vielleicht mal übersetzen, oder?)

          Mann, wirst du eigentlich jemals irgendwas alleine auf die Reihe kriegen?
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            und du biot natürlich mal wieder nicht in der lage, die fehlermeldung zu übersetzen. zähl mal die öffenden und schließenden klammern innerhalb der if-bedingung. und achte auch darauf, wo sie stehen!

            peter
            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
            Meine Seite

            Kommentar

            Lädt...
            X