Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Select nach Insert...

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] Select nach Insert...

    Hallo,

    nach einem Insert brauche ich die neu ertsellte Id...da das PHP-Skript per Javascript asynchronous gleichzeitig 10 mal aufgerufen wird hilft mir hier mysql_insert_id nicht weiter da sich ja alle 10 von der selben Session aufgerufen werden und es so zu einem konflickt kommen wird.

    Mit einem direkten Select komme ich auch nicht weiter weil ab und zu der Insert noch garnicht verarbeitet wurde.

    Kennt jemand eine Loesung wie ich ohne mysql_insert_id an die Id ran komme?

    Danke !!!


  • #2
    Nach Abschluss der Ajax-Aufrufe einen neuen starten der dir die letzten 10 IDs liefert.

    Mit einem direkten Select komme ich auch nicht weiter weil ab und zu der Insert noch garnicht verarbeitet wurde.
    Wie meinst du das?

    edit: Und hast du mysql_insert_id schon getestet? Wie? Code
    Relax, you're doing fine.
    RTFM | php.de Wissenssammlung | Datenbankindizes | Dateien in der DB?

    Kommentar


    • #3
      Zitat von ionians Beitrag anzeigen
      da das PHP-Skript per Javascript asynchronous gleichzeitig 10 mal aufgerufen wird hilft mir hier mysql_insert_id nicht weiter da sich ja alle 10 von der selben Session aufgerufen werden und es so zu einem konflickt kommen wird.
      Was? mysql_insert_id gibt dir genau die id zurück, die deine Query grade erstellt hat. Da ist es wurscht ob nebenher noch 10 Requests gleichzeitig inserts durchführen.
      Zitat von nikosch
      Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

      Kommentar


      • #4
        Innerhalb einer Transaktion sollte es sicher sein, LAST_INSERT_ID() zu benutzen (Achtung: Die MySQL Funktion nutzen - last_insert_id im PHP Script wird NICHT funktionieren).

        http://stackoverflow.com/questions/1...in-transaction
        Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

        Kommentar


        • #5
          Zitat von tkausl Beitrag anzeigen
          Was? mysql_insert_id gibt dir genau die id zurück, die deine Query grade erstellt hat. Da ist es wurscht ob nebenher noch 10 Requests gleichzeitig inserts durchführen.
          Ich habe nachgelesen das mysql_insert_id dir die letzte id zurueck gibt die aus deiner client Session erzeugt wurde...daraus verstehe ich das wenn mehrere Request gleichzeitig erstellt werden vom selben user es zu einem durcheinander kommen wuerde.

          Wenn das nicht stimmt wuerde mein problem geloesst...

          Kommentar


          • #6
            Zitat von ionians Beitrag anzeigen
            Ich habe nachgelesen das mysql_insert_id dir die letzte id zurueck gibt die aus deiner client Session erzeugt wurde...daraus verstehe ich das wenn mehrere Request gleichzeitig erstellt werden vom selben user es zu einem durcheinander kommen wuerde.
            Verwechsle bitte nicht die Session, die dein Script als Client in der Datenbank hat und die Session die ein User mit deinem Script hat. Das sind zwei komplett verschiedene dinge.
            Zitat von nikosch
            Macht doch alle was Ihr wollt mit Eurem Billigscheiß. Von mir aus sollen alle Eure Server abrauchen.

            Kommentar

            Lädt...
            X