Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Formulareingabe

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Formulareingabe

    Wo habe ich einen Fehler gemacht?


    Datei Eingabe
    PHP-Code:
    <!DOCTYPE html>
        <
    html lang="de">
        <
    head>
        <
    title>Daten in eine Datenbank einfügen</title>
        
        <
    meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        </
    head>
        <
    body>
        
        <!-- 
    localhost/gaestebuch/html_formular.php -->
        
        <!-- <
    form action="aktion.php" method="post" accept-charset="ISO-8859-1"> -->
        <
    form action="aktion_datensatz_neu.php" method="post" accept-charset="ISO-8859-1">
        <
    p>Name:<br>
        <
    input name="name" size="40"></p>
        <
    p>E-Mail:<br>
        <
    input name="email" size="40"></p>
        <
    p>Webseite:<br>
        <
    input name="url" size="40"></p>
        <
    p>Datum:<br>
        <
    input name="datum" size="40"></p>
            
        <
    p>Mitteilung:<br>
        <
    textarea name="eintrag" rows="5" cols="50"></textarea></p>
        <
    p><input type="submit" value="Formulardaten absenden"></p>
        </
    form>
        
        </
    body>
        </
    html

    Datei Ausgabe
    PHP-Code:
    !DOCTYPE html>
        <html lang="de">
        <head>
        <title>Daten in eine Datenbank einfügen</title>
        
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        </head>
        <body>
        <?php

        
    //echo var_dump($_POST);
        
        
        // mit dem Datenbankserver verbinden
        
        //localhost/gaestebuch/aktion_datensatz_neu.php
        
        //mysql_connect("mysql.meinserver.de", "benutzer001", "m31np455w0rt") or die (mysql_error ());
        
    mysql_connect("localhost""root""") or die (mysql_error ());

        
    // Datenbank auswählen
        
    mysql_select_db("gaestebuch") or die(mysql_error());

        
    // das SQL-Statement wird aufgebaut

        
    $strSQL "INSERT INTO gaestebuch(";
        
        
    $strSQL $strSQL "name, ";
        
    $strSQL $strSQL "email, ";

        
    $strSQL $strSQL "url, ";
        
    $strSQL $strSQL "datum, ";
        
        
    $strSQL $strSQL "eintrag) ";

        
    $strSQL $strSQL "VALUES(";

        
    $strSQL $strSQL "$_POST[name],"
        
    $strSQL $strSQL "$_POST[email],";

        
    $strSQL $strSQL "$_POST[url],";
        
    $strSQL $strSQL "$_POST[datum],";
        
        
    $strSQL $strSQL "$_POST[eintrag])";
        
        echo 
    $strSQL;
        
        
    // das SQL-Statement wird ausgeführt 
        
    mysql_query($strSQL) or die (mysql_error());

        
    // schließe die Datenbankverbindung
        
    mysql_close();
        
    ?>

        <h1>Die Datenbank wurde aktualisiert!</h1>
        </body>
        </html>

    Ausgabe

    PHP-Code:
    INSERT INTO gaestebuch(nameemailurldatumeintragVALUES(Ernst Plock,email,hds-soft.de,10.12.14,Hier ist ein neuer Text)

    You have an error in your SQL syntaxcheck the manual that corresponds to your MySQL server version for the right syntax to use near 'Plock,email,hds-soft.de,10.12.14,Hier ist ein neuer Text)' at line 1 


  • #2
    Strings werden durch Anführungszeichen gekennzeichnet, die fehlen in deinem SQL-Statement.
    Relax, you're doing fine.
    RTFM | php.de Wissenssammlung | Datenbankindizes | Dateien in der DB?

    Kommentar


    • #3
      Und zwar mit einfachen Anführungszeichen:

      PHP-Code:
      $strSQL $strSQL "'$_POST[name]',"
      Kleiner Tipp: Sieh dir mal die PHP-Erweiterungen MySQLi und PDO an. MySQL ohne das "i" ist als "deprecated" deklariert und wird in der nächsten PHP-Version entfernt.

      Kommentar


      • #4
        Danke für die Hilfe!! Es klappt jetzt

        Kommentar

        Lädt...
        X