Helmut: ein asp script ausführen beim schließen des browsers

Hallo zusammen,
wie kann ich beim schließen des Browsers ein ASP Script ausführen wenn es geht sofort nicht in der global.asa wo es in der seesion erst nach 15 min. ausgeführt wird.

Ich möchte nämlich in einer datenbank schreiben wann der besucher da war weil ich das brauche um vergleiche zu machen mit worddokumenten mit dem änderungsdatum.

Weill wenn der besucher das nächstemal da ist kann ich ihn auffordern das er sich das Dokument ansieht das geändert worden ist. Wir haben nur besucher mit fester also statischer IP-Adresse.

Kann mir irgend einer helfen ????

mfg
Helmut

  1. Hallo Helmut,
    ich hab das ganze so gelöst:

    • js function überprüft ob das fenster geschlossen wurde
    • js aufruf einer neuen seite
    • neue seite speichert
    • neue seite schliesst sich von selbst

    sieht zwar scheisse aus, da sich kurz ein fenster öffnet und sich wieder schliesst, aber eine andere lösung hab ich leider auch nicht gefunden.

    viel erfolg

    GugelHupf

    1. Das Problem ist mit JS hab ich noch nicht viel gemacht. Sowos eigentlich noch nie.

      Ich hab aber schon öfters gesehen das wenn man die seite verläßt bzw. den browser schließt das ein hinweis angezeigt wird. Wie kann man den das lösen?

      Weil da könnte ich ja dann den verweis auf das script machen.

    2. Hi,

      sieht zwar scheisse aus, da sich kurz ein fenster öffnet und sich wieder schliesst, aber eine andere lösung hab ich leider auch nicht gefunden.

      man kann a) das Ereignis mit JS programmieren, das ausgeloest wird, wenn die Seite entladen wird und b) auf die Idee kommen, davon die Finger zu lassen, weil JS z.B. abgeschaltet ist oder der Client auf einmal weg ist und die Resultate bzgl. der "Verweildauer" ohnehin relativ zweifelhaft sind.

      Gruss,
      Lude

      1. und wie würdest du das lösen?

        mfg
        Helmut

        1. Hi,

          und wie würdest du das lösen?

          mfg
          Helmut

          auf keinen Fall wuerde ich das genannte Ereignis programmieren, sondern stattdessen entweder trocken die Serverlogs auswerten bzw. die Sessions (sofern diese dauerhaft, beispielsweise auf einem Datenserver, gespeichert werden - das laesst sich konfigurieren), aber anhand des Zeitstempels mit dem die Sitzung geoeffnet wurde und des Zeitstempels mit dem sie Sitzung ausgetimt ist.

          Gruss,
          Lude

          1. Hi,

            jetzt bin ich einwenig im Walde,

            ich möchte, wenn der Besucher von unserem Intranet, das Intranet besucht und wenn er es verläßt soll das script mir ein paar Daten in eine Datenbank schreiben.

            Des wegen brauch ich das.

            mfg
            Helmut

            1. Hi,

              ich möchte, wenn der Besucher von unserem Intranet, das Intranet besucht und wenn er es verläßt soll das script mir ein paar Daten in eine Datenbank schreiben.

              was heisst denn Intranet verlassen?   ;-)
              Was mit den Server-Logs? Mal reingeschaut?

              Gruss,
              Lude

              1. Ja habe ich,
                1. die Serverlog die gerade läuft ist kein zugriff drauf
                2. es wird schon die uhrzeit geloggt beim start.

                1. Hi,

                  Ja habe ich,

                  1. die Serverlog die gerade läuft ist kein zugriff drauf
                  2. es wird schon die uhrzeit geloggt beim start.

                  und was? - Gut oda schlecht?

                  Gruss,
                  Lude

                  1. Ja schlecht,

                    deswegen möchte ich ja wenn er das Intranet verläßt
                    (Intranet bei uns so aufgebaut wie eine normale HP) ein script ausführen wie z.B. logstat.asp.

                    Das Script speichert dann die daten wie ip datum uhrzeit und so weiter in die datenbank.

                    1. Hi,

                      Ja schlecht,

                      deswegen möchte ich ja wenn er das Intranet verläßt
                      (Intranet bei uns so aufgebaut wie eine normale HP) ein script ausführen wie z.B. logstat.asp.

                      Das Script speichert dann die daten wie ip datum uhrzeit und so weiter in die datenbank.

                      man kann wegen der Verbindungslosigkeit von http das "Intranet" nicht verlassen.

                      Gruss,
                      Lude

                      1. Kann ich also das nicht abfangen wenn der besucher den Browser schließt bzw oben in der Adressleißte eine ander Internetseite eingibt?

                        mfg
                        Helmut

                        1. Hi,

                          Kann ich also das nicht abfangen wenn der besucher den Browser schließt bzw oben in der Adressleißte eine ander Internetseite eingibt?

                          doch, durch Programmierung des genannten Ereignisses, aber diese Loesung waere dann mangelhaft. Aber Du kannst es, wie gesagt, machen und spaeter gerne mal berichten, ob die gewonnenen Daten was getaugt haben.

                          Gruss,
                          Lude

                          1. was hälst du davon?

                            <body onunload="location.href='´logstat.asp';">;

                            und in der logstat.asp die anweisung was ich machen will und am schluss das hier:

                            <script language="Javascript"> <!-- self.close(); --> </script>

          2. auf keinen Fall wuerde ich das genannte Ereignis programmieren, sondern stattdessen entweder trocken die Serverlogs auswerten bzw. die Sessions (sofern diese dauerhaft, beispielsweise auf einem Datenserver, gespeichert werden - das laesst sich konfigurieren), aber anhand des Zeitstempels mit dem die Sitzung geoeffnet wurde und des Zeitstempels mit dem sie Sitzung ausgetimt ist.

            Funktioniert auch nur, wenn man auf die Serverlogs zugriff hat. Das mit der Session in der Global.asa ist absolut unzuverlässig!
            Du köntest ein Clientseitiges ASP Script laufen lassen, funktioniert jedoch nur, wenn der Client IE benutzt.
            die Javascript-Lösung nur, wenn JS aktiviert ist.

            Ich glaub du musst dich für eine Lösung entscheiden. 100% ist keine.

            Gruß Bernhard

    3. Hi,

      ich weiß ja nicht, wieviel du vorhast in deiner "verlassmich"-ASP-Seite. Aber wenn es nur um einen simplen Zeitstempel geht, dann mach doch das umgekehrte: Jedes Mal, wenn der Benutzer eine Seite anfordert, setzt du den Zeitstempel letzteAktivität in deiner Datenbank. Wenn der Benutzer dann irgendwann geht weißt du, wann er das letzte Mal eine Seite angeschaut hat, also wann er die letzten Änderungen gesehen hat (wenn er die Seite nur betrachtet wird sie ja wohl nicht im Hintergrund aktualisieren ohne ASP-Anforderung, oder?)

      MfG
      Rouven

      --

      -------------------
      ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(