PHP- SQL offene Datensatz für andere User sperren

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

  • PHP- SQL offene Datensatz für andere User sperren

    hallo Zusammen

    wie kann ich einen datensatz, den ein user ausliest und bearbeiten möchte, vorübergehend für alle anderen zwar "lesbar" machen, aber nicht editierbar?


    wie realisiert man dies in PHP Code? geht das überhaupt?

    danke für Eure Helfe

    Vivo
    Vivo

  • #2
    auf die schnelle:
    * spalte locked varchar(32) in die zu sperrende tabelle
    * spalte lock_time int(11) ...
    * beim 'öffnen der editier-seite': UPDATE ... set locked = session-id, lock_time = time()
    * beim speichern: UPDATE set locked = NULL , lock_time = NULL
    * alle anderen aktionen dürfen den datensatz nicht bearbeiten.

    achte darauf, dass du keine deadlocks produzierst... dafür ist dann lock_time da. spätestens nach 30 minuten (oder whatever) stirbt ein lock auf jeden fall.

    es gibt auch komplexere mechanismen, design patterns etc dafür, aber ich weiß nicht, ob ich dich nicht schon damit überfordere

    grüße
    axo

    Kommentar


    • #3
      Hallo,

      Danke ax, ich werde es versuchen.
      Vivo

      Kommentar

      Lädt...
      X