Ankündigung

Einklappen
Keine Ankündigung bisher.

Daten in MySQL speichern

Einklappen

Neue Werbung 2019

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

  • Daten in MySQL speichern

    Hallo,

    ich habe mir ein einfaches Registrierungsformular erstellt, welches nach dem absenden die Daten in MySQL Datenbank speichern soll.
    Die Tabelle mit den Spalten habe ich bereits schon angelegt, aber er schreibt nichts ind ie Datenbank. Kann mir jemand weiter helfen?
    Natürlich ahbe ich meine Dantenbankdaten eingeben.


    Registrierungsformular Code:

    <html>
    <head>
    <title>Dateneingabe</title>
    </head>
    <body>
    <form name="mitarbeiter" action="speichern.php" method="post">
    <font face=arial size=3>
    <br>
    Anrede: <input name="anrede" type="text" size="8" maxsize="8"><br>
    Name und Vorname: <input name="name" type="text" size="40" maxsize="40"><br>
    Anschrift: <input name="anschrift" type="text" size="100" maxsize="100"><br>
    Telefon: <input name="telefon" type="text" size="15" maxsize="15"><br>
    Email: <input name="email" type="text" size="50" maxsize="50"><br>
    <input type="submit" name="eintragen" value="Eintragen">
    <input type="reset" name="abruch" value="Eingaben löschen">
    </b>
    </font>
    </form>
    </body>



    PHP-Code:


    <?
    //aufbau der datenbankverbindung
    $host = 'Hostname';
    $user = 'Username';
    $password = 'Passwort';
    $db = 'Datenbankname';

    //verbindung zur db herstellen
    mysql_connect($host, $user, $password);
    mysql_select_db($db);

    //übergabe der variablen
    $mbanrede= $_POST["anrede"];
    $mbname= $_POST["name"];
    $mbanschrift= $_POST["anschrift"];
    $mbtelefon= $_POST["telefon"];
    $mbemail= $_POST["email"];

    //sql-befehl zum eintragen der daten in die tabelle
    $eintrag = "INSERT INTO mitarbeiter (anrede, name, anschrift,
    telefon, email) VALUES ('$mbanrede', '$mbname',
    $mbanschrift', '$mbtelefon','$mbemail')";

    ///nun erfolgt der eintrag in die tabelle
    $eintragen = mysql_query($eintrag);

    //folgende anweisungen rufen die formularseite wieder auf, um
    //weitere daten eingeben zukönnen.
    //datenbank wieder schliessen
    mysql_close();

    ?>
    <html>
    <head>
    <meta name="author" content="alex">
    <meta name="generator" content="texteditor">
    <meta http-equiv=\"refresh\" content=\"0; URL=daten.html\">
    </head>
    <body >
    </body>
    </html>



    Bitte um hilfe.
    danke im voraus

  • #2
    Bei Problemen mit SQL-Anweisungen hilft dir mysql_error weiter.

    $mbanschrift', '$mbtelefon','$mbemail')";
    Bei $mbanschrift fehlt ein Hochkomma.

    Außerdem darfst du die Daten aus dem Formular nie ungeprüft übernehmen. Verwende zumindest mysql_real_escaped_string.

    Kommentar


    • #3
      er schreibt nichts ind ie Datenbank
      ER?

      Welche Fehlermeldung wird ausgegeben?

      Wenn du deinen Code in PHP-Tags klammerst, dann kann man ihn hier besser lesen.
      [PHP]if ($var != 0) {
      $var = 0;
      }[/PHP]

      Kommentar


      • #4
        Hallo,

        vielen Dank. Jetzt hat es funktioniert, das lag nur wegen dem Hochkomma.
        Wie nicht überprüft übergeben?
        Wie lässt man die Daten überprüfen?
        danke im voraus

        gruss

        Kommentar


        • #5
          Hi,

          bitte benutz die BBTags für deinen Quellcode! Welche Fehlermeldung erhältst du, was hast du schon unternommen um das Problem einzugrenzen? Setz mal mysql_error() ein.

          Edit: bißchen spät...
          "[URL="http://www.youtube.com/watch?v=yMAa_t9k2VA&feature=youtu.be&t=25s"]Mein Name ist Lohse, ich kaufe hier ein.[/URL]"

          Kommentar


          • #6
            Hallo,

            es hat funktioneirt, wie Herr Wolla schon gesagt hat, dass ein Hochomma fehlt.

            gruss

            Kommentar


            • #7
              Der Code ist immer noch Fehlerhaft.
              Gib mal als Name das hier ein: O'Neill

              Und versuche herauszufinden was wohl passiert, wenn als Email das hiereingegeben wird :
              ');DELETE FROM mitarbeiter;
              [PHP]if ($var != 0) {
              $var = 0;
              }[/PHP]

              Kommentar


              • #8
                sorry, aber momentan versteh ich grad gar nix mehr

                Kommentar


                • #9
                  Ruf dein Formular auf, füll es aus, und gib im Feld name diesen Namen ein: O'Neill
                  [PHP]if ($var != 0) {
                  $var = 0;
                  }[/PHP]

                  Kommentar


                  • #10
                    hm, dann schreibt er gar nix in die datenbank

                    Kommentar


                    • #11
                      Und warum?

                      Lass dir den SQL String mal ausgeben, bevor du ihn an den Server schickst, und schau ihn dir genau an.
                      Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

                      Kommentar

                      Lädt...
                      X