Anzeige:
Ergebnis 1 bis 9 von 9

Thema: php/mysql: kann keine daten eintragen...

  1. #1
    Registrierter Benutzer
    Registriert seit
    18.06.2003
    Beiträge
    9

    Unhappy php/mysql: kann keine daten eintragen...

    hallo,

    also, ich bekomme mit php ganz normal ne verbindung zum mysql-server (lokal installiert, apachefriends...) hin. ich kann auch daten mit mysql_fetch_array() auslesen. wenn ich allerdings daten in eine tabelle eintragen will macht er das nicht... mit mysql_connect() bin ich als root angemeldet...

    die einzige möglichkeit tabellen etc. anzulegen ist mit phpmyadmin und das ist ja nicht der sinn der sache...

    mache ich da eventuell fehler beim programmieren?

    beispiel:

    PHP-Code:

    mysql_connect
    ("host""user""password") or die("fehler");
    mysql_select_db("name der db") or die("fehler");

    mysql_query("INSERT INTO table (name, alter, gehirnmasse) VALUES ('david', '22', '10 gr.')"); 
    die mysql befehle werden doch mit mysql_query() übergeben...


    danke schonmal, david...

    p.s. die in dem beispiel verwendete tabelle "table" wurde natürlich per phpmyadmin angelegt, sie existiert also...
    Geändert von david.preuss (04-04-2004 um 09:03 Uhr)

  2. #2
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Gebe die Resourcen Kennung mit an damit du auch eine richtige Fehlermeldung bekommst.
    http://de2.php.net/manual/de/function.mysql-query.php
    http://de2.php.net/manual/de/functio...-select-db.php
    PHP-Code:
    <?php
    $con 
    mysql_connect("host""user""password") or die ("fehler");
    mysql_select_db"name der db"$con ) or die ("fehler");
    $str "INSERT INTO table (name, alter, gehirnmasse) VALUES ('david', '22', '10 gr.')";
    mysql_query$str$con ) or die ( mysql_error() );
    ?>

  3. #3
    Registrierter Benutzer
    Registriert seit
    18.06.2003
    Beiträge
    9
    also, ich bekomme folgende fehlermeldung vom mysql-server:

    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 'alter, dauer, faehigkeiten) VALUES ('Jupp Heynkes', '66', '2002


    die sql syntax stimmt doch (siehe oben)... woran kann's liegen? das erste feld ist VARCHAR(50) das zweite INT(2) dritte DATE und das letzte TEXT...

    wo mache ich den fehler?

    p.s. die felder stimmen jetzt nicht mit dem oberen beispiel-code überein...

  4. #4
    Registrierter Benutzer
    Registriert seit
    18.06.2003
    Beiträge
    9
    also, wenn ich die feldangabe hinter "INSERT INTO tabelle" weglasse und einfach nur die VALUES's eintrage funktioniert es...

    kann mir jemand sagen warum?

  5. #5
    mr.molester
    Gast
    vielleicht hast du die Feldnamen falsch geschrieben (Gross-/Kleinschreibung!!!!)

    nur so als idee...

  6. #6
    Registrierter Benutzer
    Registriert seit
    18.06.2003
    Beiträge
    9
    Original geschrieben von mr.molester
    vielleicht hast du die Feldnamen falsch geschrieben (Gross-/Kleinschreibung!!!!)

    nur so als idee...
    ne, hab ich drauf geachtet...

  7. #7
    mr.molester
    Gast
    ich bin mir ned sicher aba muss da ned bei mysql hinter jeder befehlszeile ein ; (strichpunkt) hin???

  8. #8
    Registrierter Benutzer Avatar von Gaert
    Registriert seit
    09.05.2002
    Ort
    Nußloch
    Beiträge
    1.317
    Hallo david,

    table ist ein Reserviertes Wort in der SQL Syntax, deshalb ist es keine gute Idee eine Tabelle so zu nennen (genausowenig wie DATABASE, WHERE, INSERT usw...). Die Groß und Kleinschreibung spielt dabei keine Rolle.
    Das Semikolon am Ende jedes Statements wird nur benötigt, wenn du mehrere Statements mit einem Query abschicken möchtest.

    Gruß,

    Gaert


  9. #9
    mr.molester
    Gast
    ALTER ist au ein reserviertes wort

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •