Event-Kalender mit SQLite

PHP, CSS und JavaScript lernen. Anwendungen für Webseiten
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5744
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Tommy Herrmann »

... und wo muss ich nach dieser Nachricht suchen :anmachen:

Bin aber für heute nicht mehr hier.
Benutzeravatar
Werner-Zenk.de
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 755
Registriert: Di 8. Dez 2020, 19:42
Wohnort: Bamberg
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Werner-Zenk.de »

Heute gibt es mal wieder eine kleine Aktualisierung. Das Design wurde etwas angepasst.
Und neue Screenshots auf meiner Website ;)
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5744
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Tommy Herrmann »

Hallo Werner,

danke für die Info :tu:

... war den ganzen Tag unterwegs ...

Ich bin da etwas raus - ich muss ja ganz schön viel jedes Mal ändern, die gesamte CSS-Datei und auch große Teile der Datei "kalender.php" - wenn das nicht wirklich große Veränderungen bringt, scheue ich mich da inzwischen ein wenig.

Benötigt die Anwendung denn jetzt mindestens PHP 8 ? Ich habe ja inzwischen PHP 8 - viele andere Benutzer aber eher noch nicht. Ich frage nur wegen meines Tutorials (will da nix Falsches stehen haben).

Mir fällt eigentlich nur auf, dass Du die optionalen Monatsbilder bei Deinem Beispielkalender entfernt hast - ansonsten sieht der Kalender, auf den ersten Blick, eigentlich genauso wie vorher aus (außer den abgerundeten Ecken):

https://werner-zenk.de/archiv/event-kalender_sqlite.php

... hier zum Vergleich der Kalender auf meiner Seite:

https://www.mobirise-tutorials.com/Even ... er-SQLite/
Benutzeravatar
Werner-Zenk.de
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 755
Registriert: Di 8. Dez 2020, 19:42
Wohnort: Bamberg
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Werner-Zenk.de »

Ich wollte dir das nur mitteilen. Die Änderungen sind nur minimal,
bei mir sind da noch horizontale Streifen hinzugekommen (jede 2 Woche).

Code: Alles auswählen

table#tabelle tbody > tr:nth-child(even) {
  background-color: rgba(125, 125, 125, 0.97);
}
Dafür habe ich das hervorheben der Wochen (mit :hover) entfernt.
Benutzeravatar
Werner-Zenk.de
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 755
Registriert: Di 8. Dez 2020, 19:42
Wohnort: Bamberg
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Werner-Zenk.de »

Nach einer längeren Zeit habe ich mal wieder eine größere Änderung im Kalender gemacht. Bei Benutzern kam der Wunsch auf, dass man Events für mehrere Tage auf einmal eintragen kann (Urlaub, Ferien, Seminar etc.).

Sowas ähnliches hatte ich bereits im großen Kalender gemacht, es sollte aber nicht so kompliziert ablaufen wie dort. Das Problem war nicht das Eintragen der einzelnen Events in die Datenbank, sondern wie bekommt man einen Urlaub mit 30 Einträgen wieder aus der DB gelöscht, alle einzeln löschen ...

Die Lösung war relativ einfach, ich vergebe für jeden Event eine ID, bei mehreren Einträgen nur eine Gruppen-ID, diese gehören dann zusammen.

Screenshot 2023-04-03 193556.png
Tommy, ich weiß das du keine Änderungen mehr an deinem Kalender vornehmen möchtest, es ist nur eine Info damit dieser Thread nicht komplett einschläft.
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5744
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Tommy Herrmann »

Moin Werner,

na doch - ich ändere meine Anwendungen von Dir schon gerne noch - nur nicht jede Änderung, das ist mir manchmal zu viel wenn es keinen "sichtbaren" Grund gibt.

Gerade an diesem Kalender habe ich ganz schön viel selbst angepasst und meine Kalender-Datenbank ist voll mit Einträgen.

Nach einer längeren Zeit fällt es mir manchmal nicht leicht diese Änderungen noch nachzuvollziehen und dann kann ich mir schon mal ganz viel Arbeit machen, weil ich es nicht mehr hin bekomme.

Ich nehme an, dass auch hier die Datenbank eine Änderung erhalten hat und das ist das, was mich immer ein wenig abschreckt. Ich denke das wäre auch ganz wichtig für andere Benutzer, die ihrem bereits verwendeten Skript ein Update geben wollen. Sie müssten doch zumindest wissen, dass es nun eine andere Datenbank gibt und ihre alte Datenbank angepasst werden muss.

Dann muss ich wahrscheinlich wieder viele Tabellen-Einträge händisch ändern und natürlich alle Skripte, die ich so nicht einfach übernehmen kann - insbesondere meine CSS ist ganz anders, für eine Sache (Gruppeneinträge), die ich nie anwenden werde. Auch mein gesamter BBCode ist komplett anders sowie Dutzende von Änderungen in der Datei "kalender.php" ansich.

Am Ende bleibt ja der Einbau in Mobirise dennoch wahrscheinlich gleich und dafür sind ja meine Tutorial-Seiten gedacht.

Ich habe entsprechende Hinweise auf meine Tutorial-Seite zu dieser neuen Version vom 02.04.2023 geschrieben:

https://www.mobirise-tutorials.com/Even ... er-SQLite/

Es hat sich die Datenbank nun wieder geändert - es gibt das neue Feld "gruppe" - jetzt habe ich gerade erst einmal vergessen wie ich das bei meiner Datenbank hinzufügen muss.

Struktur-Neu.jpg


Ich hatte mir da aber eine Anleitung mit Screenshots hinterlegt. Nur müsste ich da wieder einen Haufen Einträge einzeln ändern und überall eine 0 eintragen oder wie macht man das automatisch? Ich kenne mich mit den Datenbanken leider nicht so aus.

Weiterhin hast Du jetzt PHP 8 als Voraussetzung angegeben - ist das so oder geht dieser Kalender auch noch mit PHP 7.4? Hat ja vielleicht nun noch nicht jeder PHP 8 am Server zu laufen.





P.S.:

Wäre das so denn richtig? Ist es eigentlich egal an welcher Position das neue Feld "gruppe" steht oder muss es vor "datum" stehen?


Feld Gruppe hinzufügen.jpg



Ist das Feld "gruppe" ein alphanumerisches Textfeld? Wie ersetze ich alle Felder mit dem Wert 0 automatisch oder muss ich tatsächlich 124 Mal eine 0 eintragen? Da gibt es doch sicher eine Funktion für.


Feld Gruppe Wert 0.jpg
Benutzeravatar
Werner-Zenk.de
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 755
Registriert: Di 8. Dez 2020, 19:42
Wohnort: Bamberg
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Werner-Zenk.de »

Moin Tommy.
Wenn du die Spalte 'gruppe' angelegt hast, im Registerreiter "SQL ausführen" folgendes einfügen:
UPDATE `kalender` SET `gruppe` = '0' und ausführen.

Beachte aber, dass nun jeder Datensatz die 0 hat und bei jedem Eintrag eine zusätzliche Checkbox (mit Alle 124 Events dieser Gruppe löschen) angezeigt wird.

Moment, ich habe eine einfachere Lösung: https://werner-zenk.de/test/tipp2.mp4

Die Position der Spalte ist egal, aber das passt so wie du es gemacht hast :tu:
Ich verwende den DB-Browser auch nicht zu oft, muss mich da immer wieder neu zurechtfinden.

Es gibt da keinen Grund mehr auf PHP 7.4 zu bleiben, soviel hat sich zu 8.2 nicht verändert.
Aktuell verwende ich zwar keine neuen PHP-Funktionen im Code, aber das kann sich ja mal ändern.
Ich möchte da nicht immer nach einer Lösung suchen die auch ältere PHP-Versionen verstehen und dann 5 Jahre warten, bis ich diese Funktionen auch verwenden kann.
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5744
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Tommy Herrmann »

Moin,

danke für die Info :)

Der Tipp mit dem kopieren ist genial - super - danke :tu:

Ich weiß jetzt nicht welche Programme nicht mit PHP 8 laufen - aber es gibt sicherlich welche.

Bis vor wenigen Wochen hatte sogar noch diese Forum-Software teilweise Probleme mit PHP 8, die erst mit dem neuesten Update behoben werden konnten ...

... und meine alten "NetObjects Fusion" Anwendungen (NOF) laufen mit PHP 8 überhaupt nicht mehr (die meisten Sachen schon mit PHP 7.4 nicht mehr) - deswegen habe ich dort sogar immer noch PHP 5.6 an meiner Domain für NOF, was mich jeden Monat schlappe 10,00 EUR für den PHP-Support von "1&1 IONOS" kostet :eek:

Das ist echt ein Nachteil bei PHP, dass diese Anwendungen alle irgendwann nicht mehr funktionieren, da die Auszeichnungssprache sich immer wieder ändert. Man muss also alle naselang immer wieder alles neu machen oder es geht nichts mehr :(
Benutzeravatar
Werner-Zenk.de
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 755
Registriert: Di 8. Dez 2020, 19:42
Wohnort: Bamberg
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Werner-Zenk.de »

Ja stimmt, JavaScript wird vom Browser aktualisiert, da haben Mozilla und Chrome einen Vorteil (ich erwähne hier absichtlich nicht Webkit, denn die machen teilweise ihr eigenes Ding und kümmern sich nicht um Standards).

Den PHP-Support gab es doch früher* auch nicht, anscheinend sehen die Provider da eine weitere Einnahmequelle :(
Mancher PHP-Code ist halt schon so alt, dass ich einige alte Anweisungen überhaupt nicht mehr kenne.

Das ist eigentlich bei jeder Programmiersprache der Fall, man braucht einen (aktuellen) Übersetzer, der den Code kompiliert und in Maschinensprache übersetzt und ausführt.
Benutzeravatar
Werner-Zenk.de
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 755
Registriert: Di 8. Dez 2020, 19:42
Wohnort: Bamberg
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Werner-Zenk.de »

Es gibt mal wieder eine neue Version des Event-Kalenders mit SQLite
Demo: https://werner-zenk.de/archiv/scripts/_ ... e/demo.htm
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5744
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Tommy Herrmann »

... danke :kiss:

Mein Gott, wie viele Revisionen hast Du da inzwischen vorgenommen - mindestens 25 :eek: :tu:
Benutzeravatar
hansjuerg
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 116
Registriert: Di 15. Dez 2020, 12:54
Wohnort: Urdorf ZH
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von hansjuerg »

Hallo zusammen

Ich bin da auf einen Fehler im Kalender mit SQLite von Werner Zenk gestossen.

Wird ein Event als "Festtag" markiert - also jährlich wiederkehrend - wird die Jahrzahl nicht aktualisiert.

Der Fehler zeigt sich auch bei Tommy's Tutorial-Kalender beim Eintrag am 20. Februar 2022. Öffnet man diesen Eintrag am 20. Februar 2023, wird der falsche Wochentag und noch immer mit dem Jahr 2022 angezeigt.

Ich bin sicher, jemand von euch kann das korrigieren. Ich selber habe keine Ahnung wo ich was anpassen müsste.

Schon mal vielen Dank!
Kalender-01.png
Kalender-02.png
Schöne Grüsse aus der Schweiz :)
hansjuerg

VMC Urdorf
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5744
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Tommy Herrmann »

... ist mir noch gar nicht aufgefallen :confused:

Ich denke aber, dass das nicht ein Fehler vom Programm ist, sondern eher ein Fehler beim Kopieren.

Man kopiert ja das Ereignis und man darf natürlich dabei nicht vergessen (wie auch ich) das Datum anzupassen. Das Programm kann ja nicht wissen, ob man das Event (Ereignis) nun ins kommende Jahr kopieren will oder vielleicht erst in das Jahr 2034.

Andere wiederum wollen vielleicht bei Geburtstagen nicht das laufenden Jahr sondern das tatsächliche Geburtsjahr anzeigen lassen, um das Alter darzustellen.

Ich glaube die Option "Kopieren" hat Werner eher dafür gedacht, dass man den Text oder vielleicht Bilder und ähnliches nicht nochmals neu eintragen muss.
Benutzeravatar
hansjuerg
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 116
Registriert: Di 15. Dez 2020, 12:54
Wohnort: Urdorf ZH
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von hansjuerg »

Super schnell wie immer, danke.

Das Ereignis (Geburtstag) kopiert man ja nicht, man aktiviert doch nur das Kästchen Festtag. Damit müsste doch der Event jährlich wiederholt werden. Oder habe ich das falsch verstanden?
Schöne Grüsse aus der Schweiz :)
hansjuerg

VMC Urdorf
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5744
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Tommy Herrmann »

... ja - keine Ahnung wie Werner das gedacht hat.

Vielleicht wirklich zum Beispiel bei einem Geburtstag das eigentliche Geburtsjahr, das ja dann immer gleich bleibt. So habe ich es bei den Geburtstagen beispielhaft getan.

https://www.mobirise-tutorials.com/Even ... er-SQLite/

Vielleicht meldet sich Werner hier in den nächsten Tagen - sonst frage ich ihn mal.
Benutzeravatar
hansjuerg
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 116
Registriert: Di 15. Dez 2020, 12:54
Wohnort: Urdorf ZH
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von hansjuerg »

Ich denke schon, dass Werner diese Überlegung gemacht hat. Steht auf jeden Fall so im Tooltip.

Danke und eine schöne Altjahrswoche.
Kalender-03.png
Schöne Grüsse aus der Schweiz :)
hansjuerg

VMC Urdorf
Benutzeravatar
Werner-Zenk.de
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 755
Registriert: Di 8. Dez 2020, 19:42
Wohnort: Bamberg
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Werner-Zenk.de »

Moin,
das ist kein Fehler und so gewünscht :)
Der Event (mit der Option Festtag) wird dann jedes Jahr am gleichen Tag/Monat angezeigt.
Natürlich steht da das originale Datum mit der "Jahrzahl" drin und nicht das aktuelle Jahr.

Wenn der Event als Festtag markiert ist, steht es auch immer im Tooltip drinnen:
Screenshot 2023-12-29 101805.png
In der neuen Version, die ich gerade erstelle, wird der Festtag auch im Event-Fenster angezeigt:
Dateianhänge
Screenshot 2023-12-29 103419.png
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5744
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von Tommy Herrmann »

Hallo Werner,

danke für die nochmalige Erklärung, so hatte ich diese Option eigentlich auch verstanden.
Benutzeravatar
hansjuerg
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 116
Registriert: Di 15. Dez 2020, 12:54
Wohnort: Urdorf ZH
Kontaktdaten:

Re: Event-Kalender mit SQLite

Ungelesener Beitrag von hansjuerg »

Vielen Dank für die Erklärung und sorry, dass ich das als Fehler gemeldet habe.

Bei Geburtstagen trägt man in dem Fall das Geburtsjahr ein. Da werden nicht alle Damen im Verein begeistert sein :D

Allseits ein fröhlicher Jahreswechsel und ein glückliches neues Jahr.
Schöne Grüsse aus der Schweiz :)
hansjuerg

VMC Urdorf
Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 13 Gäste