Frank: MySQL: Einfügen funktioniert nicht

Hallo,

ich habe folgendes Skript:

$sql = "INSERT INTO $tabelle (indizierung, kategorie) VALUES ('$indizierung','$tabelle');";
echo "$sql   <br><br>";
$datenbank = connect();
if (mysql_query($sql, $datenbank))
{echo "funzt!";}
mysql_close($datenbank);

Die Ausgabe ist
INSERT INTO p (indizierung, kategorie) VALUES ('p031048858772','p');

wie man sieht, fehlt das funzt! --> ich schließe daraus, daß der Eintrag nicht eingetragen wurde. Wie kann das denn sein? Ich bin mir sicher, alles richtig gemacht zu haben.

Danke schonmal, Frank

  1. Hallo

    $datenbank = connect();

    connect() ist keine PHP-Funktion.
    Meinst du vielleicht mysql_connect()? http://php3.de/mysql-connect
    Gibt dein Script sonst einen Fehler an?

    Grüße

    David

    --
    "Nobody will ever need more than 640k RAM!"
    1981 Bill Gates
  2. Hallo Frank,

    $sql = "INSERT INTO $tabelle (indizierung, kategorie) VALUES ('$indizierung','$tabelle');";

    woher kommt $tabelle und $indizierung (wobei das ja zu funktionieren scheint)

    $datenbank = connect();

    wie sieht deine Funktion connect() aus?

    Die Ausgabe ist
    INSERT INTO p (indizierung, kategorie) VALUES ('p031048858772','p');

    was soll es bringen in eine Tabelle den Tabellennamen reinzuschreiben?

    wie man sieht, fehlt das funzt! --> ich schließe daraus, daß der Eintrag nicht eingetragen wurde.

    was sagt mysql_error()?

    Ich bin mir sicher, alles richtig gemacht zu haben.

    das war ich mir schon auch des öfteren - und dann war es doch irgend ein dummer Fehler :-)

    Grüße aus Nürnberg
    Tobias

    --
    Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
    1. Hallo Frank,

      $sql = "INSERT INTO $tabelle (indizierung, kategorie) VALUES ('$indizierung','$tabelle');";
      woher kommt $tabelle und $indizierung (wobei das ja zu funktionieren scheint)
      die sind vorher definiert

      $datenbank = connect();
      wie sieht deine Funktion connect() aus?
      die funktioniert problemlos und ist ausgelagert

      Die Ausgabe ist
      INSERT INTO p (indizierung, kategorie) VALUES ('p031048858772','p');
      was soll es bringen in eine Tabelle den Tabellennamen reinzuschreiben?
      wieso nicht?

      Gruß, Frank

      PS: Bin immer noch nicht schlauer...

      1. Hallo Frank,

        wie sieht deine Funktion connect() aus?
        die funktioniert problemlos und ist ausgelagert

        bist du sicher, dass sie funktioniert? Poste die vielleicht doch besser mal.

        was soll es bringen in eine Tabelle den Tabellennamen reinzuschreiben?
        wieso nicht?

        du speicherst in der Datenbank bei jedem Datensatzt, wie die Tabelle heißt in der der Datensatz steht - da du aber zum Abfragen sowieso wissen musst, wie die Tabelle heißt ist das überflüssig und kostet nur unnötig Speicher.

        PS: Bin immer noch nicht schlauer...

        da du zu wenig Informationen lieferst kann ich dir auch nicht helfen. Kommt irgendwo eine Fehlermeldung? was sagt mysql_error()? Steht in der Datenbank schon was drin? Wenn ja, funktioniert das Auslesen? Hast du dir evtl. mal die mysql-Funktionen von php (->http://www.php.net/manual/de/ref.mysql.php) angeschaut?

        Grüße aus Nürnberg
        Tobias

        ps: mach doch bitte keine Zitatzeichen vor das was du schreibst - ich musste erst dreimal hinschauen, bis ich gemerkt habe das du mehr als "Gruß, Frank \n\n PS: Bin [...]" geschrieben hast.

        --
        Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|