Ankündigung

Einklappen
Keine Ankündigung bisher.

MySql Problem: Daten werden nicht eingetragen

Einklappen

Neue Werbung 2019

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

  • MySql Problem: Daten werden nicht eingetragen

    Guten Tag.

    ich hab ein Problem. Ich sass bisher schon 3 Stunden daran, doch ich weiss einfach nicht, was der Fehler ist. Hier der Code.

    PHP-Code:
    <html>
    <head>
    </head>

    <body>
    <?
    if ($submit) {

    //aufbau der datenbankverbindung
    $host = 'localhost';
    $user = 'user_1';
    $password = 'pass_1';
    $db = 'usr_1';

    //verbindung zur db herstellen
    $conn = mysql_connect($host, $user, $password);
    if(! $conn ) { die('Could not connect: ' . mysql_error()); }
    mysql_select_db($db);

    $sql = "INSERT INTO test (name,vorname,anr,email) VALUES ('$_POST[$name]','$_POST[vorname]','$_POST[$anr]','$_POST[$email]')";
    $result = mysql_query($sql);
    if (mysql_errno()) echo mysql_error();
    echo "Ihr Daten wurden abgeschickt! Vielen Dank!<br><br>";

    mysql_close();
    }
    else {
    ?>

    <form method="post" action="<? echo $PHP_SELF ?>">
    <table border="0" align="center">
    <tr>
    <td>Anrede</td>
    <td><select name="anr" size="1">
    <option value="0">Herr
    <option value="1">Frau
    </select></td>
    </tr><tr>
    <td>Vorname</td>
    <td><input type="text" name="vorname" value="<? echo $vorname ?>" size="50"></td>
    </tr><tr>
    <td>Name</td>
    <td><input type="text" name="name" value="<? echo $name ?>" size="50"></td>
    </tr><tr>
    <td>e-mail</td>
    <td><input type="text" name="email" value="<? echo $email ?>" size="50"></td>
    </tr><tr>
    <td>&nbsp;</td>
    <td><input type="submit" name="submit" value="Abschicken"></td>
    </tr>
    </table>
    </form>
    <?
    }
    ?>
    </body>

    </html>
    Hab den Benutzernamen und das Passwort fuer die Datenbank mal ebend zensiert, sie sind jedoch richtig.
    Ich bedanke mich jetzt schon fuer jede Hilfestellung.

  • #2
    Hi.

    Laß Dir mal dein SQL Statement mit echo ausgeben. Das hier soltle vermutlich auch statt

    PHP-Code:
    if ($submit) { 
    eher das hier sein

    PHP-Code:
    if (isset($_POST["submit"])) { 
    mfg Wolf29

    Kommentar


    • #3
      Zitat von wolf29 Beitrag anzeigen
      Das hier soltle vermutlich auch statt

      PHP-Code:
      if ($submit) { 
      eher das hier sein

      PHP-Code:
      if (isset($_POST["submit"])) { 
      mfg Wolf29
      Danke! Jetzt funktioniert!

      Kommentar


      • #4
        ...schau Dir bitte aber nochmal das Thema SQL Injection an - dafür bist du anfällig!!

        mfg Wolf29

        Kommentar


        • #5
          Danke. Über SQL Injection habe ich keine Ahnung!
          Ich habe verstanden was das ist, aber wie schütze ich mich? Hast Du eine gute Anleitung oder Link? Danke

          Kommentar


          • #6
            http://php.net/manual/de/security.da...-injection.php

            und

            http://scytale.name/files/talks/phps...hpsecurity.pdf

            Kommentar

            Lädt...
            X