Ankündigung

Einklappen
Keine Ankündigung bisher.

Schribrechte in die Datenbank sperren!

Einklappen

Neue Werbung 2019

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

  • Schribrechte in die Datenbank sperren!

    Hallo PHP-Profis,
    ich hoffe ihr habt euch schon mit diesem Problem beschaeftigt und koenntet mir ein paar Tips geben wie ich es losen koennte.

    Also das Problem:
    Bei meiner Admin-umgebung koennen mehrere Benutzer (mit Admin rechten) per Seiten-Script (so umgefehr wie hier) in die Datenbank schreiben.
    Nun ist es folgenden ich muss dafuer sorgen das die Admins nicht gleichzeitig einen Eintrag edietieren koennen. Dafuehr habe ich eine Sperre vorgesehen in der DB. Also dieser eintrag wird dann als gespert markiert! Wenn der Admin wieder diesen Entrag speichert oder verlaesst, wird es wieder entspert.
    Das Problem ist dass er dabei den Browser einfach schliessen kann (aus welchen Gruenden auch immer).

    Tja wenn er dass tut, wird der Eintrag eben gespert bleiben und keiner kann es mehr editieren.

    Das Problem liesse sich mit JavaScript beseitigen. Aber ich hoffe das man dass auch mit PHP regeln kann.

    Habt ihr ein Tip währe sehr DANKBAR.


  • #2
    das einzige, was du tun kannst, ist einen zeitstempel einbauen, der den letzten zugriff des sperrenden festhält und du mit dem zweiten admin diesen eintrag doch einschreiben lässt, wenn der zeitstempel alt genug ist.

    Kommentar


    • #3
      Danke lordoliver,

      daran hab ich auch schon gedacht, nur habe ich gehoft dass man dass vielleicht noch mit einer Funktion (z.B. on_abbord) oder so in der art machen könnte. Aber ich glaube jetzt auch dass es nur so geht, denn der Broser sendet ja nichts wenn er einfach "weg geklickt wird".

      Tja, DANKE für die Mühe!!!

      Kommentar


      • #4
        HTTP Problem

        Hallo dago,

        habe schon oft mit dem selben Problem zu tun gehabt.
        Wegen des HTTP-Protokolls gibt es halt keine dauerhafte Verbindung zwischen Server und Client.

        Die *einzige* mir bekannt Möglichkeit mittels HTTP, ist halt per Client-Script eine Rückmeldung zum Aufheben der Sperre zu senden.

        ...und das einzige, was in Javascript ein "Browser-Close" meldet ist ein body -> onunload -> document.form.submit mit form target=blank

        Sehr schlechte Lösung, ich weiß...

        Grüße

        Kommentar


        • #5
          Danke! für die Antworten.

          Na ja das mit JavaScript hat auch den nachteil, dass der User in abschalten kann. Nichts desto trotzt, kann man nichts machen. Also ich werde den Vorschlag von lordoliver anwenden. Müssen zwar die anderen Admins etwas länger warten, aber es geht!

          Muss man aber auch bedenken dass der Sperrer selbst dass Fenster schliesst und gleich wieder reingehen will. Aus diesem Grund habe ich den Sper-Eintarag um die Admin_ID ergänzt.

          Ich denk besser kann man dass net machen!

          DANKE lordoliver und brain_overload!

          Kommentar


          • #6
            mit php ist das nicht möglich, du könntest aber mit Java so etwas hinbekommen ...

            Ist zwar auffwendig aber möglich ... dann kann der Beitrag aber nur in einem Java Fenster geöffnet werden ... ausserdem könntest du die option Beitrag entsperren anbieten...

            Kommentar

            Lädt...
            X