Andre: My SQL Insert Problem

hi,
ich bastel schon 4 tage en einem datenbank-script.
alles funktioniert, bis auf, das einfügen.
mit PHPMyAdmin funtioniert der eintrag bestens.
nur das eigene script "will" einfach net.
ich habe schon alle möglichen synthax-variationen ausgetestet.
das feld artikel_id_artikel habe ich nicht mit angegeben, da es auf "auto_increment" stehe.
hier mal ein CODE beispiel:

<?php
include("config.hac");
include("session.hac");
mysql_query("INSERT INTO artikel (artikel_artikel, gruppe_id_artikel, text_kurz_artikel, text_lang_artikel, preis_artikel, list_1, list_2, list_3, list_4, list_5, list_6, list_7, list_8, list_9);
VALUES($artikel_artikel,$gruppe_id_artikel, $text_kurz_artikel, $text_lang_artikel, $preis_artikel, $list_1, $list_2, $list_3, $list_4, $list_5, $list_6, $list_7, $list_8, $list_9)");
?>

hat jemand eine idee für funktionierenden synthax??
(die vars kammen auch alle auf dieser seite an. schreibfehler habe ich schon gesucht)

  1. Hallo,

    Sieht auf den ersten Blick nicht schlecht aus, aber probiers mal mit ' drum:

    mysql_query("INSERT INTO artikel ('artikel_artikel', 'gruppe_id_artikel');
    Was soll das ; hier???

    VALUES('$artikel_artikel','$gruppe_id_artikel', etc

    cu Benedikt Loepp

    --
    visite http://www.webocton.de - Aufträge erwünscht :-)
    1. hat leider auch nicht funktionert...
      muss das auto-incrment feld auch angegeben werden?

      vielen dank,
      andre

      1. Hallo Andre,

        hat leider auch nicht funktionert...

        definiere "auch nicht funktioniert". Was funktioniert nicht? was macht der Query (nicht)? Fehlermeldung? Wie sieht der Query jetzt aus?

        muss das auto-incrment feld auch angegeben werden?

        nein, muss es nicht.

        Grüße aus Nürnberg
        Tobias

        --
        Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
        1. keine fehlermeldung...
          der spalte wird aber nicht angelegt.
          danke,
          andre

          1. Sollte der Code so funktieren?

            <?php
            include("config.hac");
            include("session.hac");
            mysql_query("INSERT INTO artikel ('artikel_artikel','hersteller_id_artikel','gruppe_id_artikel','text_kurz_artikel','text_lang_artikel','preis_artikel','list_1','list_2','list_3','list_4','list_5','list_6','list_7','list_8','list_9')
                                      VALUES('$artikel_artikel','$hersteller_id_artikel','$gruppe_id_artikel','$text_kurz_artikel','$text_lang_artikel','$preis_artikel','$list_1','$list_2','$list_3','$list_4','$list_5','$list_6','$list_7','$list_8','$list_9')");
            ?>

            (Sorry, habe erst vor 5 Tagen mit SQL und PHP Angefängen und ausser C 64 Basic auch bisher nichts anderes gamacht) ;-)

            1. Hallo Andre,

              include("config.hac");
              include("session.hac");

              wird in diesen Dateien eine Verbindung zur Datenbank aufgebaut? (btw: ".hac" ist vielleicht als Endung nicht sehr glücklich, da solche Dateien vermutlich als text/plain ausgeliefert werden und der User so deine Passwörter die da drinstehen sehen kann)

              mysql_query("[...]");

              schreib mal das "INSERT INTO ..." in eine Variable und lass die dir ausgeben um zu sehen, was da eigentlich drinsteht. Was sagt eigentlich mysql_error()?

              Grüße aus Nürnberg
              Tobias

              --
              Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
              1. Vielen Dank mit den Endungen für die Connect und Session Datein!
                Das werde ich vorm "lauch" noch mal ändern" ;-)

                Ich weiss leider nicht mehr weiter.
                Ich werde mir mal die SQL-Fehler anzeigen lassen.
                Viellecht komme ich so weiter.
                Muss ein auto_incremet Feld not_null haben?

                Vielen Dank für Eure hilfe an einem der wohl letzen Sommer-Tage dieses Jahres,
                Andre

                1. Gruss

                  Ich weiss leider nicht mehr weiter.
                  Ich werde mir mal die SQL-Fehler anzeigen lassen.
                  Viellecht komme ich so weiter.
                  Muss ein auto_incremet Feld not_null haben?

                  Hm eigetlich ist das das erste was man macht!
                  mysql_query("...", $connid) od die(mysql_error());

                  dann sollte das wie folgt aussehen

                  $query = "INSERT INTO tbl_foo ('spalte1', 'spalte2') VALUES
                             ('".$spalte1."', '".$spalte2."')";
                  $insert = mysql_query($query, $connid) or die(mysql_error());

                  der auto_inrement werd wird automatisch (_AUTO_) eingefügt.

                  Mfg Analpha