[HTML] Anmeldeformular: Felder werden nicht an DB übergeben

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

  • [HTML] Anmeldeformular: Felder werden nicht an DB übergeben

    Hallo,

    ich bin am verzweifeln, denn ich bin noch ziemlich neu was MySQL etc. angeht, doch hier geht es nur um das HTML Formular. Deswegen habe ich es auch hier gepostet.

    Und zwar, benutze ich diesen HTML Code als Formular:

    (Sieht weiter unten)

    Das Formular wird zwar erfolgreich abgesendet an die Datenbank, jedoch sind die Salten in der die Daten drinstehen sollen leer.

    Damit es besser verstanden wird hier ein Screen: http://img212.imageshack.us/img212/9526/hgfdgwu8.png

    Zum Test habe ich erstmal nur username und passwort erstellt. Ich weiß, dass ich die anderen Felder noch hinzufügen muss, die auch im Formular stehen.

    Wie muss das Formular verändert werden, damit das Formular die Daten überträgt?

    Wäre nett wenn ihn mir helfen könnt.
    Zuletzt geändert von Gravenstein; 04.01.2009, 12:25.

  • #2
    Bei mir steht der gesamte Code in einer Zeile...

    Abgesehen davon fehlt da der wichtige Code - der PHP-Code, der in die Tabelle einträgt.

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      Hier die Codes:

      Anmeldeformular:

      PHP-Code:
      <?php
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <
      html xmlns="http://www.w3.org/1999/xhtml">
      <
      head>
      <
      meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
      <
      title>Unbenanntes Dokument</title>
      </
      head>
      <
      form action="senden.php" method="post" name="form" id="form">
      <
      div width="50px">Anrede</div>
      <
      select name="anrede">
      <
      option>Herr</option>
      <
      option>Frau</option>
      </
      select><br />
      <
      div width="50px">Benutzername:</div> <input type="text" name="benutzername" /><br />
      <
      div width="50px">Vorname:</div> <input type="text" name="vorname" /><br />
      <
      div width="50px">Name:</div><input type="text" name="name" /><br />
      <
      div width="50px">Straße Nr.:</div><input type="text" name="strasse / nr" /><br />
      <
      div width="50px">PLZ Ort:</div><input type="text" name="plz / ort" /><br />
      <
      div width="50px">Land:</div><input type="text" name="land" /><br />
      <
      div width="50px">E-Mail Adresse:</div><input type="text" name="email" /><br />
      <
      div width="50px">Klamm-ID:</div><input type="text" name="klammid" /><br />
      <
      div width="50px">Passwort:</div><input type="passwort" name="passwort" /><br />
      </
      select><br />
      <
      input type="submit" value="Send" />
      <
      input type="reset" value="Reset" />
      </
      form>
      <
      body>
      </
      body>
      </
      html>
      ?>

      PHP Code:
      PHP-Code:
      <?php

      $host 
      "localhost";
      $user "///";
      $passwd "///";

      $db=mysql_connect($host$user$passwd) or exit ("Keine Verbindung hergestellt!");
      mysql_select_db("///") or exit ("Datenbank nicht geöffnet!");

      $sqlbef "insert into user (username, passwort, gruppe) values ('$username', '$passwort', '$gruppe')";
      $sqlerg mysql_query($sqlbef$db) or die(mysql_error());

      if (
      $sqlerg == true) {
           echo
      "Anmeldung erfolgreich!";
      } else {
           echo
      "Anmeldung nicht erfolgreich!";
      }
      mysql_close($db);
      ?>



      An der PHP-Datei liegt es nicht, denn wie ich schon gesagt habe Anmelden funktioniert.

      Der HTML Code für das Formular ist falsch. Ich vermute die einzelnen Zeilen:

      <div width="50px">Klamm-ID:</div><input type="text" name="klammid" /><br />

      sind falsch. Diese müssen glaube ich irgendwie ein $ Zeichen enthalten wie in der PHP Datei. Ich weiß nur nicht wo?
      Zuletzt geändert von Gravenstein; 04.01.2009, 12:59.

      Kommentar


      • #4
        Poste den Code doch bitte (gemäß unseren Regeln) hier im Forum. Das hat den Vorteil, dass dein Problem auch später noch nachvollziehbar bleibt.

        Kommentar


        • #5
          So habe es geändert.

          Kommentar


          • #6
            Perfekt!

            Jetzt noch mal kurz einen Blick hier rein. Und ALLES befolgen! (error-reporting, ausgabe der SQL-Query)

            Wie sieht es mit register_globals aus? On oder Off? Sollten generell off sein, nur dass du deine Programmierung auch daran anpassen solltest.

            Kommentar


            • #7
              Hallo,

              sql Tip: user_ID
              html Tip: das Passwort input Feld ist vom type passworD

              vg
              gourmet

              Kommentar


              • #8
                Original geschrieben von gourmet
                sql Tip: user_ID
                Nirgendwo wird von user_ID gesprochen???

                Kommentar


                • #9
                  Original geschrieben von TobiaZ
                  Perfekt!

                  Jetzt noch mal kurz einen Blick hier rein. Und ALLES befolgen! (error-reporting, ausgabe der SQL-Query)

                  Wie sieht es mit register_globals aus? On oder Off? Sollten generell off sein, nur dass du deine Programmierung auch daran anpassen solltest.
                  register_globals ist glaube ich off. Es handelt sich um einem Free Anbieter. Bei den meisten ist das off.

                  Trotzdem ich glaube ich bin zu blöd dafür. Ich kapiere es einfach nicht .

                  Original geschrieben von gourmet
                  Hallo,

                  sql Tip: user_ID
                  html Tip: das Passwort input Feld ist vom type passworD

                  vg
                  gourmet
                  Danke für den HTML Tip: habe es geändert. Eine User ID brauche ich nicht.

                  Kommentar


                  • #10
                    register_globals ist glaube ich off. Es handelt sich um einem Free Anbieter. Bei den meisten ist das off. Trotzdem ich glaube ich bin zu blöd dafür. Ich kapiere es einfach nicht .
                    Wenn du nicht in der Lage bist $_POST zu verwenden, dann glaube ich das auch. Tut mir leid, aber das sind absolute Grundlagen. Wer die noch nicht drauf hat, sollte lieber noch ein bisschen mit HTML rumspielen.

                    *move* nach PHP, da hier offensichtlich kein HTML-Problem vorliegt.

                    Kommentar


                    • #11
                      Original geschrieben von TobiaZ
                      Nirgendwo wird von user_ID gesprochen???
                      ^^jup, aber seine tabelle user enthält eine spalte ID die nirgends im query auftaucht???

                      Kommentar


                      • #12
                        Wenn du dir den Screenshot mal ansiehst, dürfte dir auffallen, dass er auto_increment gesetzt hat und die Vergabe der ID sinniger Weise dem SQL-Server überlässt.

                        Kommentar


                        • #13
                          Original geschrieben von TobiaZ
                          Wenn du dir den Screenshot mal ansiehst, dürfte dir auffallen, dass er auto_increment gesetzt hat und die Vergabe der ID sinniger Weise dem SQL-Server überlässt.
                          sehen kann man es nicht auf dem Screen, es sieht so aus, aber sicher sein anhand des Screen würde ich mir da nicht.

                          Kommentar


                          • #14
                            Naja, wenn man bedenkt, dass die zugehörige Query keine ID vorgibt, und alle anderen Daten (aufgrund des register_globals-Problems) leer sind, kann man schon davon ausgehen. Zumal man hier immer ein wenig Glaskugel benötigt.

                            Jedenfalls würde ich nie (erst recht nicht pauschal) empfehlen, die UserID vom PHP-Script vorgeben zu lassen.

                            Kommentar


                            • #15
                              So, es funktioniert jetzt alles wunderbar, ich habe es hinbekommen.

                              Kommentar

                              Lädt...
                              X