Ankündigung

Einklappen
Keine Ankündigung bisher.

Script alle drei Sekunden lang innerhalb von funf Minuten ausführen.

Einklappen

Neue Werbung 2019

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

  • Script alle drei Sekunden lang innerhalb von funf Minuten ausführen.

    Für eine Seitensperre wird ein Script benötigt der alle drei Sekunden innerhalb von fünf Minuten eine Adresse aufruft (Inhalt unwichtig). Hinter der Adresse ist ein PHP-Script der die Sperrzeit in der MySQL Tabelle auffrischt.
    Wenn ein Benutzer eine Seite öffnet soll sie für andere solange gesperrt sein bis er sie schließt oder bis die Sperrzeit fon funf minuten vorbei ist. PHP und MySQL laufen, von Java Script habe ich leider wenig Ahnung.

    Wie soll ein Inline Java Script aussehen der innerhalb von funf Minuten alle drei Sekunden eine HTML Seite zum Beispiel in eine Variable lädt?

    Etwas wie:
    Code:
     <script type='text/javascript'>
                        <!--
                            $(document).ready(function($){
    
                   window.setTimeout("...",3000);                         ....
                            });
                        -->
                    </script>

  • #2
    Wenn die Sperrzeit immer 5 Minuten ist, was willst du da auffrischen? Du schreibst einmal in deine Datenbank wann die 5 Minuten vorbei sind und von da an prüfst du immer ob der Zeitpunkt schon gekommen ist.
    Anbei wenn du eine "Sperre" haben willst ist Javascript quatsch. Das läuft im Browser und kann problemlos ausgeschaltet oder manipuliert werden.

    Kommentar


    • #3
      1. Wenn der Benutzer die Seite nach 20 Sekunden verlässt ist es unpraktisch 4Miniuten und 40 Sekunden für den anderen zu warten bis der Datensatz frei ist.
      2. Unter PHP läuft der Skript schon. den kann ich auf beliebige Zeit setzen. Der erste der die Seite betretten hat besitzt die Schreibrechte, der andere muss warten. Auch wenn der Script manipuliert oder abgeschaltet wird läuf der PHP Skript immer noch. Alles was passieren kann ist, dass der erste der die Seite aufgemacht hat sein Schreibrecht verlieren. Nur den wollte ich auf drei Sekunden setzen und mit Java die Zeit auffrischen. Wenn jedoch der Benutzer die Seite aufmacht und weggeht soll sie nicht ewig gesperrt bleiben, deswegen fünf Minuten.

      Kommentar


      • #4
        Wenn ein Benutzer eine Seite öffnet soll sie für andere solange gesperrt sein bis er sie schließt oder bis die Sperrzeit fon funf minuten vorbei ist.
        Du weisst aber nie wann genau der User die Seite verlässt.
        The string "()()" is not palindrom but the String "())(" is.

        Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
        PHP.de Wissenssammlung | Kein Support per PN

        Kommentar


        • #5
          Hinter der Adresse ist ein PHP-Script der die Sperrzeit in der MySQL Tabelle auffrischt.
          was genau Du da für eine Apllication schreibst weiß ich nicht, aber Datenbank tabellen "über die Zeit" zu sperren ist in meinen Augen ein NO-GO.

          Locks may be used to emulate transactions or to get more speed when updating tables. This is explained in more detail later in this section.
          Steht in der Docu.

          Kommentar


          • #6
            Zitat von hausl Beitrag anzeigen

            Du weisst aber nie wann genau der User die Seite verlässt.
            Dafür kann man Java Skript verwenden. Wenn kein Zeitstempel mehr durch Javaskript gesetzt wird dann ist die Seite ja nicht mehr geöffnet.


            was genau Du da für eine Apllication schreibst weiß ich nicht, aber Datenbank tabellen "über die Zeit" zu sperren ist in meinen Augen ein NO-GO.
            Locks may be used to emulate transactions or to get more speed when updating tables. This is explained in more detail later in this section.


            Steht in der Docu.
            Programmieren habe ich nie gelernt. Deswegen weiß ich, dass ich alles falsch mache. Ist ja nur eine kleine Sub-Anwendung die in einer kleinen AG läuft.
            Das mit der Zeit habe ich nur bei SAP abgeschaut. Aber man brauch bei denen nicht zu lernen die nichts können. Seit meiner Geburt weiß ich, dass ich alles falsch mache.

            Ich bitte um Entschuldigung, dass ich falsche Frage im falschem Forum gestellt habe!

            Kommentar


            • #7
              Zitat von hruendel Beitrag anzeigen
              Seit meiner Geburt weiß ich, dass ich alles falsch mache.
              Oh Boy

              Kommentar


              • #8
                Sehr informatives Forum! Nach zweitägiger Diskussion weiß ich jetzt wie ich alle programmiere...

                Kommentar


                • #9
                  Gestern, 22:25 -> Heute, 17:22 = 2 Tage?
                  Noch was, was du auf deine Fehlerliste setzen kannst.

                  Diskussion
                  Das kann man keine Diskussion nennen, wenn dein 3. Beitrag eine bockige Reaktion auf die Kommentare bisher ist.
                  Anebei hätte tomBuilder vermutlich gereicht, wenn du gesagt hättest, dass du nicht die Datenbanktabelle sperren willst, sondern in Php prüfst ob der Datensatz "gerade frei" ist. Das tust du doch oder nicht?

                  Wenn die Sperrzeit immer 5 Minuten ist, was willst du da auffrischen? Du schreibst einmal in deine Datenbank wann die 5 Minuten vorbei sind und von da an prüfst du immer ob der Zeitpunkt schon gekommen ist.
                  Das ist das richtige vorgehen, glaub es mir oder nicht.
                  Zur Überprüfung ob der User noch da ist solltest du AJAX einsetzen. Wobei die Zeit von 3 Sekunden hier recht sportlich ist. Sobald da mal die Leitung für ein Momentchen dicht ist, wird der User rausgeschmissen. Ich würde hier vermutlich eher im Bereich 10 Sekunden ansetzen.

                  Kommentar


                  • #10
                    Wir sind immer noch bei Java bzw. Ajax. Und die Frage ist: Wie kann man eine Funktion periodisch innerhalb einer bestimmten Zeit ausführen lassen.

                    Es gibt
                    Code:
                    window.setTimeout("meineFunktion",5000);
                    Der Code führt die Funktion nach Ablauf der Zeit aus. Gibt es auch das Gegenteil davon, dass den Script diese bestimmte Zeit ausführt und dann damit aufhört?

                    Kommentar


                    • #11
                      Java
                      Nein, mit Java hat das herzlich wenig zu tun, Java und JavaScript haben nämlich nichts miteinander zu tun.
                      Ajax
                      http://lmgtfy.com/?q=periodical+ajax+call

                      Der Code führt die Funktion nach Ablauf der Zeit aus. Gibt es auch das Gegenteil davon, dass den Script diese bestimmte Zeit ausführt und dann damit aufhört?
                      Initialisiere einen Zähler mit 0, erhöhe sie nach jeder Ausführung und führe nur aus solange wartesekunden*zaehler/300 kleiner 1 ist.

                      Kommentar

                      Lädt...
                      X