Kalender Erinnerungsfunktion

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

  • Kalender Erinnerungsfunktion

    Hallo,
    ich bin dabei einen Kalender zu schreiben. Dank diesem Forum, ist die Datenbank jetzt wunderbar. Erstmal vielen Dank nochmal dafür!

    In meinem Script hat jeder Benutzer seinen eigenen Kalender. Zusätzlich kann er globale Kalender (Teams etc.) einbinden.

    Ich frage mich jetzt, wie es wohl am sinnvollsten wäre, eine Erinnerungsfunktion einzubauen. Die User, die meinen Kalender benutzen, haben Ihn immer geöffnet. Habe jetzt ein Iframe eingebaut (Breite=0, Höhe=0) in dem jede Minute eine Datei neu geladen wird.

    Wenn jetzt ein Termin in einer halben Stunde anliegt, dann kriege ich auch mittels Javascript ein Popup zustande. (So habe ich mir das auch vorgestellt).
    Dieses Popup kommt dann aber natürlich jede Minute :-(

    Hat jemand eine Idee, wie ich dem Script sagen kann, dass dieser User schon eine Erinnerung bekommen hat?

    Vielen Dank im voraus

  • #2
    mit einem Flag in der Datenbank ...
    h.a.n.d.
    Schmalle

    http://impressed.by
    http://blog.schmalenberger.it



    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
    ... nur ohne :-)

    Kommentar


    • #3
      ,

      wie muss das denn aussehen?
      Muss ich eine extra Tabelle haben, damit ich den Termin mit dem User verknüpfen kann, oder gibt es da noch eine andere möglichkeit.
      Ich muss ja auch dran denken, dass es globale Termine gibt, die evtl. 6 Leute erinnern etc...

      Ich habe das jetzt so verstanden, dass ich eine Tabelle anlegen, in der ich die Terminid und die Userid reinschreibe, sobald das Script ihn erinnert hat. Zusätzlich vielleicht noch die aktuelle Uhrzeit.

      Dann könnte ich ja noch eine Routine laufen lassen, die alle einträge, die z.B. älter als 12 Stunden sind löscht.

      Kommentar


      • #4
        Wenn's Termine geben soll die mehrere User erinnern sollen, dann solltest das schon über eine eigene 'Mapping'-Tabelle lösen, also du hast da schon richtig verstanden

        Welche Einträge genau willst nach 12 Stunden löschen? Die Termine selbst? Oder die Einträge der Mapping-Tabelle?

        Gruss
        Quetschi
        Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
        Schön - etwas Geschichte kann ja nicht schaden.
        Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

        Kommentar


        • #5
          Original geschrieben von Quetschi
          Wenn's Termine geben soll die mehrere User erinnern sollen
          dann wäre das indealerweise ja schon in einer struktur
          TerminId | UserId
          abgelegt :-)

          und da könnte man ja problemlos noch eine spalte für die erinnerung hinzufügen.
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            @ wahsaga: Habe es so gelöst, dass alle Termine in einer Tabelle "Termine" drin sind. Jeder Kalender steht in einer Tabelle "Kalender" drin und diese ID steht in der Tabelle "Termine". Ein User hat dann über die Tabelle "Berechtigungen" zugriff auf die einzelnen Datensätze aus der Tabelle "Termine".


            Dann werde ich jetzt mal eine neue Tabelle anlegen.

            Kommentar


            • #7
              Original geschrieben von wahsaga
              dann wäre das indealerweise ja schon in einer struktur
              TerminId | UserId
              abgelegt :-)

              und da könnte man ja problemlos noch eine spalte für die erinnerung hinzufügen.
              Stimmt genau
              Wieso komm ich da nicht selber drauf
              Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
              Schön - etwas Geschichte kann ja nicht schaden.
              Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

              Kommentar


              • #8
                Habe noch eine kleine Frage. Habe die Erinnerungsfunktion soweit fertig gemacht. Läuft ziemlich gut. Der IFrame wird alle Minute refreshed. Sobald ein Erinnerungstermin eintritt, kommt mittels

                PHP-Code:
                echo'<body onload=javascript:window.open("erinnerung.php?hauptuserid='.$hauptuserid.'&tid='.$tid.'",300,400);></body>'
                ein Popup-Fenster, in dem dann die jeweilige Erinnerung drinsteht.


                Jetzt hab ich mal rumgespielt, wenn jemand im Urlaub ist und es waren meinetwegen 6 Erinnerungen. Dann kommt nur eine, obwohl ich da mit einer While-Schleife durchlaufe. Schätze es liegt am <body onload.....

                Gibt es da vielleicht noch eine andere Möglichkeit das Popup zu starten (ohne onload???)

                Vielen Dank für eure vielen Tipps.

                Kommentar


                • #9
                  dann willst du dem user also sechs popups auf einmal um die ohren hauen ...?

                  da würde ich doch lieber das anzeigescript so aufbauen, dass es nur die userid übergeben bekommt - und dann alle relevanten termine anzeigt.
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar

                  Lädt...
                  X