carsten schlichting: mysql_query verabeitet insert nicht

Hallo

Habe ein problem bei einem insert_befehl in mySQL und wollte fragen ob mir jemand ganz formlos einen Tip geben kann.

mysql_connect() funktioniert definitiv.

mysql_select_db(...) auch

die beiden sachen funktionieren zusammen mit select Anweisungen.

jetzt habe ich einen insert_befehl der 100% so in der Variable steht, das er den korrekten syntax hat. d.h.manuell kann ich im SQL die Befehlzeile ohne Fehlermeldung laufen lassen.

aber wenn ich jetzt schreibe

mysql_query($insertbefehl);
$num=mysql_affected_rows();

bekommt $num den wert=-1 zugewiesen, was ja heißt , dass der befehl gescheitert ist.Und natürlich sind keine Daten geschrieben worden.

????

der benutzer mit dem ich angemeldet bin hat alle rechte??

woran könnte es denn noch liegen das das insert nicht funktioniert??

grüße von mir und danke

carsten

  1. hi,

    aber wenn ich jetzt schreibe

    mysql_query($insertbefehl);
    $num=mysql_affected_rows();

    Nutze mysql_error - das dürfte dir doch wohl mittlerweile schon oft genug empfohlen worden sein.

    mysql_query($insertbefehl) or die(mysql_error().'<br>Query: '.htmlspecialchars($insertbefehl));

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. mysql_query($insertbefehl) or die(mysql_error().'<br>Query: '.htmlspecialchars($insertbefehl));

      Hallo ich habe den mysql_error befehl angewendet und die fehlermeldung , die dabei rauskam hieß wieder, dass ein syntax_Fehler im mysql _befehl aufgetreten ist.

      jetzt habe ich bis jetzt probiert und es gott sei dank endlich hingekriegt.

      also dankeschön--kannte den befehl aber noch nicht

      carsten

      1. hi

        hoff jetzt einfach mal, dass jemand dieses Posting  noch sieht.

        und zwar habe ich doch ein immer_wieder_kehrendes Problem bei der übergabe des mysql_query() befehls.

        und zwar wird " ; " nicht richtig übergeben und das führt dazu, dass bei der übergabe die befehle nicht funktionieren, aber wenn man denselben Befehl aus der variable in der Session_Ausgabe manuell in das sql von mysql kopiert, der Befehl doch funktioniert.

        welchen "escape_befehl" von den vielen benötige ich denn da jetzt?

        grüße von mir

        vielleicht sieht jemand ja noch dieses Posting

        carsten

        1. hi,

          hoff jetzt einfach mal, dass jemand dieses Posting  noch sieht.

          Tja, das mit der Hoffnung ist so'ne Sache ... manche hier hoffen sicher auch, dass du langsam mal anfängst, auch mal ins Manual zu schauen und dich zu informieren, _bevor_ du fragst. Offenbar immer noch vergebens ...

          und zwar wird " ; " nicht richtig übergeben und das führt dazu, dass bei der übergabe die befehle nicht funktionieren,

          mysql_query() kann nur _genau eine_ Query an die Datenbank übergeben.

          Und dass auch eine einzelne Query nicht mit einem Semikolon enden sollte, sagt das Manual in aller Deutlichkeit.

          aber wenn man denselben Befehl aus der variable in der Session_Ausgabe manuell in das sql von mysql kopiert, der Befehl doch funktioniert.

          Dann benutzt du eine andere Schnittstelle - die durchaus in der Lage (bzw. willens) ist, mehrere Queries auf einmal entgegenzunehmen.

          welchen "escape_befehl" von den vielen benötige ich denn da jetzt?

          Gar keinen.

          gruß,
          wahsaga

          --
          /voodoo.css:
          #GeorgeWBush { position:absolute; bottom:-6ft; }
          1. hi

            du bist echt sau gut - ja.

            in 5 minuten klappt das endlich, was ich den ganzen tag probiert habe.

            also wenn ich mal geld verdiene, spende ich was an selfHTML.

            grüße von mir

            carsten

            1. Hallo Freunde des gehobenen Forumsgenusses,

              in 5 minuten klappt das endlich, was ich den ganzen tag probiert habe.

              "Zehn Stunden ausprobieren können dir 2 Minuten Handuchlesen ersparen" (frei nach einer Quelle, die ich gerade nicht finde)

              Gruß
              Alexander Brock