Formular Daten werden nicht in die DB übertragen

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

  • #16
    So,

    wunderbar, ich habe also jetzt eine Datei generiert, die den unten stehenden Inhalt hat und über das action Attribut des Formulars aufgerufen wird, so wie ihr mir gesagt habt.
    Hiermit wird zur DB connected und die Felder überprüft. Allerdings werden die Daten nicht mehr in die DB eingetragen und die Weiterleitung funktioniert ebenfalls nicht mher korrekt.

    Was muss ich noch ergänzen, damit erst geprüft wird und bei richtiger Eingabe dann die Formularfelder in die Datenbank eingetragen werden und aif die nächste Seite weitergeleitet wird?

    Ich denke das hat doch was mit den false oder true zu tun, was bei der Formularprüfung als Resultat zustande kommt. Nur ich weiß nicht wie man das irgendwie weitergeben kann.


    PHP-Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Unbenanntes Dokument</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body>
    <?php
        
    //Verbindung zur DB Herstellen und Fehlerausgabe
        
    error_reporting(E_ALL);

        include 
    'konstante_chars.php';
        
    // Konfigurationsdatei laden

        
    if(!@mysql_connect(MYSQL_HOSTMYSQL_USERMYSQL_PASS)) {
            die(
    "Es konnte keine Verbindung zur Datenbank aufgebaut werden. Bitte versuchen Sie es später erneut.");
        }

        
    // echo "Verbindung wurde aufgebaut<br />\n";

        
    if(!mysql_select_db(MYSQL_DATABASE)) {
            die(
    "Konnte Datenbank nicht benutzen, Fehlermeldung: ".mysql_error());
        }

        
    // echo "Die Datenbank wurde ausgewählt";
    ?>
    <?php
        
    // die Felder werden überprüft, ob diese auch ausgefüllt sind.
        
    function checkForm(){

    $counter=0;

    //Name check

    if ($Name!=""){
    echo 
    "<p>$Name</p>";}
    else{
    echo 
    "<p>Bitte den Namen eintragen!</p>";
    $counter++;}
    echo 
    "<!--Name checked -->\n";

    $counter=0;

    //Vorname check

    if ($Name!=""){
    echo 
    "<p>$Vorname</p>";}
    else{
    echo 
    "<p>Bitte den Vornamen eintragen!</p>";
    $counter++;}
    echo 
    "<!--Vorname checked -->\n";

    $counter=0;

    //Straße check

    if ($Straße!=""){
    echo 
    "<p>$Straße</p>";}
    else{
    echo 
    "<p>Bitte die Straße eintragen!</p>";
    $counter++;}
    echo 
    "<!--Name checked -->\n";

    $counter=0;

    //Hausnummer check

    if ($Hausnummer!=""){
    echo 
    "<p>$Hausnummer</p>";}
    else{
    echo 
    "<p>Bitte die Hausnummer eintragen!</p>";
    $counter++;}
    echo 
    "<!--Hausnummer checked -->\n";

    $counter=0;

    //Wohnort check
    if ($Wohnort!=""){
    echo 
    "<p>$Wohnort</p>";}
    else{
    echo 
    "<p>Bitte den Wohnort eintragen!</p>";
    $counter++;}
    echo 
    "<!--Wohnort checked -->\n";

    //Postleitzahl check

    if ($Postleitzahl!="" && $Postleitzahl 1000 && $Postleitzahl <= 99998 ){
    echo 
    "<p>Postleitzahl</p>";}
    else {
    echo 
    "<p>Postleitzahl</p>";
    $counter++;}

    //eMail check

    if ($eMail!="" && ereg("^([a-zA-Z0-9\.\_\-]+)@([a-zA-Z0-9\.\-]+\.[A-Za-z][A-Za-z]+)$"$eMail))

    {

    echo 
    "<p>eMail</p>";
    echo 
    "<!--eMail is ok -->\n";}
    else {
    echo 
    "<p>eMail</p>";
    $counter++;}
    echo 
    "<!--eMail checked -->\n";

             return 
    false
             
    }

    return 
    true
    }

    //Die Formulardaten werden mit diesem Script in die DB geschrieben

    if(!empty($_POST))
    {
    $sql "INSERT INTO  TABELLE
    (
    Vorname,
    Name,
    Straße,
    Hausnummer,
    Wohnort,
    Postleitzahl,
    eMail
    )
    VALUES
    (
    '" 
    addslashes($_POST["Vorname"]) . "',
    '" 
    addslashes($_POST["Name"]) . "',
    '" 
    addslashes($_POST["Straße"]) . "',
    '" 
    addslashes($_POST["Hausnummer"]) . "',
    '" 
    addslashes($_POST["Wohnort"]) . "',
    '" 
    addslashes($_POST["Postleitzahl"]) . "',
    '" 
    addslashes($_POST["eMail"]) . "'
    )
    "
    ;
    mysql_query($sql) OR die(mysql_error());

    header("Location: [url]http://www.***.htm[/url]"); 

    exit;
    }
    ?>
    </body>
    </html>
    mfG

    Matty

    Kommentar


    • #17
      Original geschrieben von Matty2k
      Was muss ich noch ergänzen, damit erst geprüft wird und bei richtiger Eingabe dann die Formularfelder in die Datenbank eingetragen werden und aif die nächste Seite weitergeleitet wird?
      clienseitig würde man das mit einer onSubmit im form aufgerufenen überprüfungsroutine machen;
      serverseitig ist das ein fall für's affenformular.
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #18
        Aha,

        OK, hab mir das Script mal angeschaut. Werde mal versuchen es zu verwenden. Aber das kann ich doch mit dem Submit Button aufrufen oder?
        Ich hoffe mal das Script wird dann mit dem function Tag des Formulars aufgerufen ...

        Naja, mal schauen ob ich das irgendwann noch mal richtig hinbekomme, so dass auch die Daten dann korrekt eingetragen und auch auf die nächste HTML Seite weitergeleitet wird.

        Aber vorerst danke für eure Hilfe, man muss wohl doch besser bei PHP von Beginn an starten, um die Struktur genau zu verstehen ... ;-)

        mfG

        Matty

        Kommentar

        Lädt...
        X