Event-Kalender mit SQLite
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Danke für diese Klarstellung, das wusste ich noch nicht.
... so - bin jetzt zurück und hab da wohl etwas komplett falsch gesehen und war ein Querdenker
Im Nachhinein fragt man sich - äh
Ich habe daraus schlichtweg nochmals ein JavaScript erträumt, was ja nicht nur vollkommener Quatsch ist, sondern auch noch vollkommen überflüssig, da ja die Datei "kalender.php" inkludiert ist und dort schon alles definiert ist. Habe das jetzt richtig gestellt:
https://www.mobirise-tutorials.com/Even ... -Liste.php
Sorry ....
... so - bin jetzt zurück und hab da wohl etwas komplett falsch gesehen und war ein Querdenker
Im Nachhinein fragt man sich - äh
Ich habe daraus schlichtweg nochmals ein JavaScript erträumt, was ja nicht nur vollkommener Quatsch ist, sondern auch noch vollkommen überflüssig, da ja die Datei "kalender.php" inkludiert ist und dort schon alles definiert ist. Habe das jetzt richtig gestellt:
https://www.mobirise-tutorials.com/Even ... -Liste.php
Sorry ....
- Werner-Zenk.de
- Mitglied (Level 10)
- Beiträge: 755
- Registriert: Di 8. Dez 2020, 19:42
- Wohnort: Bamberg
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Quelltext gecheckt, passt perfekt (Huch, das reimt sich sogar )
Werner
https://werner-zenk.de
https://werner-zenk.de
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
... was ich aber schon interessant finde ist, dass Du wohl so ziemlich jeden Mist in ein <script> Tag </script> schreiben kannst, ohne dass da irgendein Browser meckert - GUT, dass es da noch den Browser "Werner" gibt
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
... ich hoffe jetzt nicht noch einen Denkfehler zu machen aber ich habe mal einfach das <p> Tag </p> in der Foreach-Schleife durch ein <div> Tag </div> erstezt und nun ist der Quellcode fehlerfrei, da ja ein <div>, im Gegensatz zu einem <p>, immer außen stehen darf
Code: Alles auswählen
foreach ($events as $event) {
sscanf($event["datum"], "%4s-%2s-%2s %5s", $dbJahr, $dbMonat, $dbTag, $dbUhr);
echo '<div>' . $dbTag . '.' . $dbMonat . '.' . $dbJahr . ' ' . $dbUhr . ' Uhr - ' .
$event["event"] . '<br>' . textFormatierung($event["beschreibung"]) . '</div>';
}
- Werner-Zenk.de
- Mitglied (Level 10)
- Beiträge: 755
- Registriert: Di 8. Dez 2020, 19:42
- Wohnort: Bamberg
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Das wäre auch meine Lösung gewesen. Dann mit CSS, Absätze (margin) hinzufügen.
Werner
https://werner-zenk.de
https://werner-zenk.de
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
... ja - die Idee kam mir vorhin auch schon, weil das ja nahtlos alle Events untereinander geschrieben hatte.
Ich habe jetzt diese class="abstand":
mit an das <div> geschrieben:
Ich habe nun auch mein Tutorial dazu geschrieben:
https://www.mobirise-tutorials.com/Even ... -Liste.php
Ich habe jetzt diese class="abstand":
Code: Alles auswählen
.abstand {
margin: 20px 0px 20px 0px;
}
Code: Alles auswählen
foreach ($events as $event) {
sscanf($event["datum"], "%4s-%2s-%2s %5s", $dbJahr, $dbMonat, $dbTag, $dbUhr);
echo '<div class="abstand">' . $dbTag . '.' . $dbMonat . '.' . $dbJahr . ' ' . $dbUhr . ' Uhr - ' .
$event["event"] . '<br>' . textFormatierung($event["beschreibung"]) . '</div><hr>';
}
https://www.mobirise-tutorials.com/Even ... -Liste.php
- Werner-Zenk.de
- Mitglied (Level 10)
- Beiträge: 755
- Registriert: Di 8. Dez 2020, 19:42
- Wohnort: Bamberg
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Hi Tommy,
hast du dich schon gewundert, warum es dieses WE keine neue Version gab. Ich musste noch einige Dinge testen, bevor ich diese Version veröffentliche.
Version: 28.02.2022
Checkbox (Nachricht) - Benachrichtigung per E-Mail versenden (optional).
Passwortschutz für mehrere Benutzer.
Taste: [D] - Drucken (öffnet die Druckvorschau).
Benachrichtigungen per E-Mail versenden:
Rufen Sie die PHP-Datei über: "kalender.php?cron" mit einer Cron
1-mal am Tag auf. (http://de.wikipedia.org/wiki/Cron)
hast du dich schon gewundert, warum es dieses WE keine neue Version gab. Ich musste noch einige Dinge testen, bevor ich diese Version veröffentliche.
Version: 28.02.2022
Checkbox (Nachricht) - Benachrichtigung per E-Mail versenden (optional).
Passwortschutz für mehrere Benutzer.
Taste: [D] - Drucken (öffnet die Druckvorschau).
Benachrichtigungen per E-Mail versenden:
Rufen Sie die PHP-Datei über: "kalender.php?cron" mit einer Cron
1-mal am Tag auf. (http://de.wikipedia.org/wiki/Cron)
Werner
https://werner-zenk.de
https://werner-zenk.de
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Hallo Werner,
supi !!!
... mache es nicht zu kompliziert, das wird sonst viele davon abschrecken. Den Alleskönner an Kalender gibt es doch schon mit der MySQL-Variante.
Leider habe ich heute keinerlei Zeit mehr zu gucken. Gab es wieder Datenbank-Änderungen oder nicht?
supi !!!
... mache es nicht zu kompliziert, das wird sonst viele davon abschrecken. Den Alleskönner an Kalender gibt es doch schon mit der MySQL-Variante.
Leider habe ich heute keinerlei Zeit mehr zu gucken. Gab es wieder Datenbank-Änderungen oder nicht?
- Werner-Zenk.de
- Mitglied (Level 10)
- Beiträge: 755
- Registriert: Di 8. Dez 2020, 19:42
- Wohnort: Bamberg
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Ja, es gab Änderungen in der Datenbank, die neue Spalte: "nachricht" mit dem Wert 0 belegen.
Das muss man im Quelltext jetzt selbst anpassen: WHERE DATE(`datum`) = DATE('now','+1 day')
Darauf achte ich; Ich habe eine Option im Quelltext nicht hinzugefügt, die es dem Benutzer ermöglicht hätte, die Tage anzugeben wann die Benachrichtigung versendet werden soll.... mache es nicht zu kompliziert, das wird sonst viele davon abschrecken.
Das muss man im Quelltext jetzt selbst anpassen: WHERE DATE(`datum`) = DATE('now','+1 day')
Werner
https://werner-zenk.de
https://werner-zenk.de
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Hallo Werner,
ich habe die Umstellung so weit hin bekommen, verstehe aber nicht alles. Daher habe ich diese Version so jetzt noch nicht übernommen. Ich muss heute Morgen noch zu einem Arzt-Termin. Vielleicht hast Du ja eine Antwort für mich, wenn ich zurück bin.
1) Das mit der E-Mail funktioniert bei mir nicht. Wenn ich die Checkbox anhake - egal ob bei einem neuen Event oder bei einem geänderten Event, passiert gar nichts. Ich erhalte keine E-Mail.
2) Das mit dem "Cron" verstehe ich erst gar nicht. Wenn ich das aufrufe:
"kalender.php?cron"
... zeigt der Browser eine total leere Seite und ich wüsste nicht, was nun passieren sollte.
Wenn ich das im Skript richtig erkenne, steht ja dieser Cron-Job im Zusammenhang mit dem Senden der E-Mail (innerhalb dieser IF-Bedingung) - oder wie? Das verstehe ich komplett überhaupt nicht
3) Der Druck kann so nicht sein, hier wird nicht der Kalender ausgedruckt, sondern meine gesamte Webseite. Eigentlich müsste doch nur der Kalender als Bereich gedruckt werden, ähnlich meines Tutorials hier:
https://www.mobirise-tutorials.com/Busi ... print.html
ich habe die Umstellung so weit hin bekommen, verstehe aber nicht alles. Daher habe ich diese Version so jetzt noch nicht übernommen. Ich muss heute Morgen noch zu einem Arzt-Termin. Vielleicht hast Du ja eine Antwort für mich, wenn ich zurück bin.
1) Das mit der E-Mail funktioniert bei mir nicht. Wenn ich die Checkbox anhake - egal ob bei einem neuen Event oder bei einem geänderten Event, passiert gar nichts. Ich erhalte keine E-Mail.
2) Das mit dem "Cron" verstehe ich erst gar nicht. Wenn ich das aufrufe:
"kalender.php?cron"
... zeigt der Browser eine total leere Seite und ich wüsste nicht, was nun passieren sollte.
Wenn ich das im Skript richtig erkenne, steht ja dieser Cron-Job im Zusammenhang mit dem Senden der E-Mail (innerhalb dieser IF-Bedingung) - oder wie? Das verstehe ich komplett überhaupt nicht
3) Der Druck kann so nicht sein, hier wird nicht der Kalender ausgedruckt, sondern meine gesamte Webseite. Eigentlich müsste doch nur der Kalender als Bereich gedruckt werden, ähnlich meines Tutorials hier:
https://www.mobirise-tutorials.com/Busi ... print.html
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Ah - ich hatte nicht ganz richtig gelesen und zuerst einen Eintrag "heute" getestet. Nun habe ich entsprechend der Anweisung im Skript (+1 day) den Eintrag morgen eingetragen und anschließend "Cron" im Browser aufgerufen und erhalte eine Mail.Werner-Zenk.de hat geschrieben: ↑Mo 28. Feb 2022, 17:37 Das muss man im Quelltext jetzt selbst anpassen: WHERE DATE(`datum`) = DATE('now','+1 day')
Es kann also immer nur ein ganz bestimmter, dort angegebener Tag, versendet werden. +2 days würde dann nur den Entrag von übermorgen senden. Wozu soll das überhaupt gut sein? Ich verstehe den Sinn dessen gar nicht.
Was ist einzutragen oder zu tun, wenn jeder Eintrag (auch 10 pro Tag) als E-Mail gesendet werden soll, z.B. für die kommenden 5 Jahre?
So wird ja gerade ausschließlich ein Eintrag am kommenden Tag als Mail gesendet und nur wenn ich "Cron" aufrufe ...
Ich glaube nicht, dass das irgendjemand versteht und bedienen könnte und wüsste das jetzt in meinem Tutorial noch gar nicht korrekt zu formulieren
Ich denke, das müsste bereits voreingestellt sein, dass immer eine Mail gesendet wird (ohne "Cron") und egal wann, sobald die Checkbox "Nachricht" angehakt wurde (dafür ist ja eine Checkbox auch gedacht). So ist das entschieden zu kompliziert und für jemanden, der sich damit nicht beschäftigt hat auch restlos unverständlich.
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Hallo Werner,
ich habe inzwischen das Update übernommen:
https://www.mobirise-tutorials.com/Even ... er-SQLite/
... und auch versucht das mit der E-Mail zu beschreiben:
https://www.mobirise-tutorials.com/Even ... html#email
Bist Du so nett und liest das mal Korrektur.
Ich muss aber definitiv, nach jedem Event-Eintrag mit Häkchen bei "Nachricht" immer wieder neu "cron" im "Firefox" Browser aufrufen, damit überhaupt eine E-Mail gesendet wird.
kalender.php?cron
... bist Du so nett und versuchst das nochmals zu erklären - danke ...
ich habe inzwischen das Update übernommen:
https://www.mobirise-tutorials.com/Even ... er-SQLite/
... und auch versucht das mit der E-Mail zu beschreiben:
https://www.mobirise-tutorials.com/Even ... html#email
Bist Du so nett und liest das mal Korrektur.
Ich muss aber definitiv, nach jedem Event-Eintrag mit Häkchen bei "Nachricht" immer wieder neu "cron" im "Firefox" Browser aufrufen, damit überhaupt eine E-Mail gesendet wird.
kalender.php?cron
... bist Du so nett und versuchst das nochmals zu erklären - danke ...
- Werner-Zenk.de
- Mitglied (Level 10)
- Beiträge: 755
- Registriert: Di 8. Dez 2020, 19:42
- Wohnort: Bamberg
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Upps, nein nicht mit dem Firefox aufrufen, sondern beim Provider (Ionos) einen Cronjob (Cron, Crontab) anlegen.
Deswegen habe ich auch den Artikel zu Wikipedia verlinkt.
Bei Ionos ist dieser zu finden unter: Hosting-Übersicht > Weitere Funktionen > Cronjob-Manager.
1-mal am Tag die Datei: kalender.php?cron (als URL eintragen). Die E-Mail wird dann einen Tag vor dem Event gesendet.
Deswegen habe ich auch den Artikel zu Wikipedia verlinkt.
Bei Ionos ist dieser zu finden unter: Hosting-Übersicht > Weitere Funktionen > Cronjob-Manager.
1-mal am Tag die Datei: kalender.php?cron (als URL eintragen). Die E-Mail wird dann einen Tag vor dem Event gesendet.
Werner
https://werner-zenk.de
https://werner-zenk.de
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Ah - OK - so ist das, wenn man vor etwas ganz Neuem steht
Ich hatte noch nie etwas mit einem "Cronjob" zu tun - daher habe ich mich da etwas "neu" angestellt
Ich habe das jetzt mal bei 1und1 angelegt. Ist das so richtig?
Auf jeden Fall besteht dort die Möglichkeit zum Testen und es kam sogleich (ganz richtig) eine Mail von meinen beiden Einträgen von morgen:
Man kann also so bestimmen, wann die Mail für Einträge automatisch gesendet wird, also auch z.B. 7 Tage vorher:
Ist das so richtig verstanden?
Weiterhin wird durch das GET
überhaupt erst festgestellt, ob ein "Cronjob" angelegt wurde.
Ich hatte noch nie etwas mit einem "Cronjob" zu tun - daher habe ich mich da etwas "neu" angestellt
Ich habe das jetzt mal bei 1und1 angelegt. Ist das so richtig?
Auf jeden Fall besteht dort die Möglichkeit zum Testen und es kam sogleich (ganz richtig) eine Mail von meinen beiden Einträgen von morgen:
Man kann also so bestimmen, wann die Mail für Einträge automatisch gesendet wird, also auch z.B. 7 Tage vorher:
Code: Alles auswählen
WHERE DATE(`datum`) = DATE('now','+7 days')
Weiterhin wird durch das GET
Code: Alles auswählen
if (isset($_GET["cron"]))
- Werner-Zenk.de
- Mitglied (Level 10)
- Beiträge: 755
- Registriert: Di 8. Dez 2020, 19:42
- Wohnort: Bamberg
- Kontaktdaten:
Re: Event-Kalender mit SQLite
So passt das bei 1und1, ich habe den Cronjob genauso angelegt.
Durch JavaScript wird diese Datei (kalender.php) praktisch bei jedem Klick aufgerufen.
Die Alternative wäre eine extra Datei dafür zu erstellen, aber das wollte ich nicht (wegen den wenigen Zeilen).
Ich habe meine Beschreibung zum Cronjob etwas angepasst, ich hoffe dass diese dadurch verständlicher wird:
Es wird auch angezeigt, wenn es ein Privater Event ist, ein Festtag oder eine Benachrichtigung.
Ich werde das aber wahrscheinlich wieder (kosmetisch) anpassen, weil so gefällt es mir nicht ganz ...
Damit soll zuerst einmal verhindert werden, dass die Funktion bei jedem Aufrufen der Datei gestartet wird.Weiterhin wird durch das GET
überhaupt erst festgestellt, ob ein "Cronjob" angelegt wurde.
Durch JavaScript wird diese Datei (kalender.php) praktisch bei jedem Klick aufgerufen.
Die Alternative wäre eine extra Datei dafür zu erstellen, aber das wollte ich nicht (wegen den wenigen Zeilen).
Ich habe meine Beschreibung zum Cronjob etwas angepasst, ich hoffe dass diese dadurch verständlicher wird:
Benachrichtigungen automatisch per E-Mail versenden:
Rufen Sie die PHP-Datei über: "kalender.php?cron" mit einer Cron
1-mal am Tag auf. Beim Provider muss dazu ein Cronjob angelegt werden
(http://de.wikipedia.org/wiki/Cron).
Es wird auch angezeigt, wenn es ein Privater Event ist, ein Festtag oder eine Benachrichtigung.
Ich werde das aber wahrscheinlich wieder (kosmetisch) anpassen, weil so gefällt es mir nicht ganz ...
Werner
https://werner-zenk.de
https://werner-zenk.de
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
... und wo zum Teufel steht diese Beschreibung vom Cronjob bei Dir - ich habe die noch nirgendwo gesehen
... ich glaube, jetzt habe ich das auch verstanden - eigentlich ein tolles Tool so ein Cronjob
... ich glaube, jetzt habe ich das auch verstanden - eigentlich ein tolles Tool so ein Cronjob
- Werner-Zenk.de
- Mitglied (Level 10)
- Beiträge: 755
- Registriert: Di 8. Dez 2020, 19:42
- Wohnort: Bamberg
- Kontaktdaten:
Re: Event-Kalender mit SQLite
In der lies_mich.txt direkt unterhalb des BBCodes Textes.
Aber die Änderung habe ich noch nicht gemacht, weil ich heute bis 11:30 Uhr gearbeitet habe.
So wichtig ist das auch nicht, werde erst am WE die nächste Version auf meiner HP stellen.
Aber die Änderung habe ich noch nicht gemacht, weil ich heute bis 11:30 Uhr gearbeitet habe.
So wichtig ist das auch nicht, werde erst am WE die nächste Version auf meiner HP stellen.
Werner
https://werner-zenk.de
https://werner-zenk.de
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
ach Du meine Güte - das hatte ich sogar ins Englische übersetzt - ick brauch nen Schnaps
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Vielleicht solltest Du in Zukunft in der Datei "lies_mich.txt" vermerken, bei welcher Version die Datenbank geändert werden muss und in welcher Form. Das fände ich recht wichtig.
- Tommy Herrmann
- Site Admin
- Beiträge: 5867
- Registriert: So 6. Dez 2020, 07:37
- Wohnort: Berlin
- Kontaktdaten:
Re: Event-Kalender mit SQLite
Moin Werner,
ich hatte ja nun gestern extra noch einen Eintrag am 03.03.2022 mit angehakter Checkbox "Nachricht" in den Kalender eingetragen:
https://www.mobirise-tutorials.com/Even ... er-SQLite/
... der Cronjob hat sich aber nicht gemeldet und ich habe keine Mail erhalten
Eingetragen ist ja "täglich" zwischen 0 und 6 Uhr, wie man oben im Screenshot erkennen kann.
Ich habe jetzt nochmals einen neuen Cronjob angelegt und 2 Einträge für den Cronjob gemacht - am 04.03. und am 05.03.2022. Ein neuer Test verlief wieder erfolgreich - dann sollte es doch eigentlich auch alles richtig sein.
... es ist doch richtig, dass man beim Cronjob dann die gesamte URL eintragen muss - oder habe ich da noch etwas falsch verstanden - also so:
ich hatte ja nun gestern extra noch einen Eintrag am 03.03.2022 mit angehakter Checkbox "Nachricht" in den Kalender eingetragen:
https://www.mobirise-tutorials.com/Even ... er-SQLite/
... der Cronjob hat sich aber nicht gemeldet und ich habe keine Mail erhalten
Eingetragen ist ja "täglich" zwischen 0 und 6 Uhr, wie man oben im Screenshot erkennen kann.
Ich habe jetzt nochmals einen neuen Cronjob angelegt und 2 Einträge für den Cronjob gemacht - am 04.03. und am 05.03.2022. Ein neuer Test verlief wieder erfolgreich - dann sollte es doch eigentlich auch alles richtig sein.
... es ist doch richtig, dass man beim Cronjob dann die gesamte URL eintragen muss - oder habe ich da noch etwas falsch verstanden - also so:
Code: Alles auswählen
https://www.mobirise-tutorials.com/Event-Kalender-SQLite/kalender.php?cron
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 110 Gäste