kostenloser Webspace werbefrei: lima-city


MySQL error in PHP Script

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    michaelkoepke

    michaelkoepke hat kostenlosen Webspace.

    kamm mir jemand helfen?

    Warum bekomme ich mit diesem Script nur eine Fehlermeldung nach der anderen?

    Habe die meisten Fehler schunn gefunden und behoben aber irgendwie geht es imer no ni.

    index.html
    <html>
    <head>
    <title>Los gehts</title>
    </head>
    <body>
    <form name="mitarbeiter" action="senden.php" method="post">
    
    <font face=arial size=3>
    <b> 
    
    Name: 		<input name="name" 	type="text" size="20" 	maxsize="20" 	value="Name"><br>
    Vorname: 	<input name="vorname" 	type="text" size="20" 	maxsize="20" 	value="Vorname"><br>
    
    <input type="submit" name="eintragen" value="Eintragen">
    <input type="reset" name="abruch" value="Eingaben löschen">
    </b>
    </font>
    </form>
    </body>


    senden.php
    <?php
    
    error_reporting(E_ALL);
    
    $host = "..."; // Server
    $user = "..."; // Benutzername
    $pass = "..."; // Passwort
    $db = "..."; // Datenbank-Name
    
    $link = mysql_connect($host, $user, $pass) or die ("Keine Verbindung zu der Datenbank möglich.");
    mysql_select_db($db, $link);
    
    $name= $_POST["name"];
    $vorname= $_POST["vorname"]; 
    
    mysql_query("INSERT INTO 'eintragen' (name, vorname)
    VALUES ('$name', '$vorname')")
    or die(mysql_error());
    
    mysql_close();


    Bitte um Hilfe MFG Mozie

    Oh hier noch meine Feghlermeldung:

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''eintragen' (name, vorname) VALUES ('Name', 'Vorname')' at line 1

    Beitrag zuletzt geändert: 29.8.2009 11:04:55 von michaelkoepke
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. projektverwaltung

    projektverwaltung hat kostenlosen Webspace.

    Mir ist aufgefalen dass du 'eintragen' in einfache anführungszeichen packst, die MySQL anführungszeichen sehen aber so aus: ` eintragen ` , die brauchst du aber eigentlich auch nicht da der tabellenname kein leerzeichen beinhaltet
  4. thomasba

    Co-Admin Kostenloser Webspace von thomasba

    thomasba hat kostenlosen Webspace.

    Ganz einfach, deine MySQL Abfrage enthält einen kleinen Fehler, bei Datenbanknamen, Tabellennamen und Spaltennamen verwendet man nicht einfachen Anführungszeichen ( ' ) sondern diese dinger: `

    Somit würde die Abfrage so aussehen:
    INSERT INTO `eintragen` (`name`, `vorname`) VALUES ('$name', '$vorname')


    Hast du dir eigentlich schon mal über MySQL-Injections gedanken gemacht?
    Bei deinem Script ist das Derzeit sehr leicht möglich, trag als Namen mal folgendes ein, dann sieht du was ich meine:
    '#bla


    Abhilfe schafft hier die php-Funktion mysql_real_escape_string.
  5. Autor dieses Themas

    michaelkoepke

    michaelkoepke hat kostenlosen Webspace.

    Danke für die schnellen antworten funzt jetzt endlich :thumb:

    MFG Mozie
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!