Nachrichten-Skript von Werner Zenk

PHP, CSS und JavaScript lernen. Anwendungen für Webseiten
Klaus
Supporter
Supporter
Beiträge: 446
Registriert: Mi 21. Jul 2021, 00:43

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Klaus »

@Tommy, das Problem tritt ja nur auf wenn Du eine vorhandene Nachricht vom Bild her änderst.
(Also das Bild mal bei einer schon vorhandenen Nachricht löschen und die Nachricht dann aktualisieren und dann noch mal die Nachricht aufrufen und wieder ein Bild zufügen und aktualisieren.)

Eine Version vom 19.12.2020 hab ich natürlich auch nicht aber wenn man einen BUG in der von Deiner Seite (30.08.2020) vermutet und eine neuere (04.01.2024) zur Verfügung hat (auf Werners Seite) dann guckt man halt mal in die lies_micht.txt. In der vermerkt Werner immer was sich von Version zu Version geändert hat und der eine Punkt "richt" halt nach dem Fehler.
Benutzeravatar
struggle
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 438
Registriert: So 4. Dez 2022, 11:55
Wohnort: Brandenburg

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von struggle »

Verstopfung ist behoben. Mein Vorgänger hat im Keller die waagerechte Abwasserleitung (HT-Rohr) an einer Stelle mit einem 90 Grad winkel um die Ecke geführt. Das ist sträflich, da ist das Problem vorprogrammiert. Ich werde zwei Winkel mit 45 Grad einsetzen.
Gruss
Reinhard
Benutzeravatar
struggle
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 438
Registriert: So 4. Dez 2022, 11:55
Wohnort: Brandenburg

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von struggle »

Also, ich wollte mich mit den bestehenden Dateien nicht weiter verzetteln. Deshalb habe ich jetzt alles unwiderruflich gelöscht, ich fange nochmal von vorne an.

Ich weiß leider nicht, wo ich die Version "04.01.24° runterladen kann, ich bitte um Hilfe !
Gruss
Reinhard
Benutzeravatar
Volker
Moderator
Moderator
Beiträge: 855
Registriert: Sa 12. Dez 2020, 22:35
Wohnort: Wildberg
Kontaktdaten:

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Volker »

Gruß Volker
Benutzeravatar
struggle
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 438
Registriert: So 4. Dez 2022, 11:55
Wohnort: Brandenburg

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von struggle »

Hallo Volker,
dankeschön, aber bist Du Dir sicher, daß das die neueste Version vom 04.01.24 ist ?

Zu dieser Version gibt es Kommentare aus dem Jahr 2022 (weiter unten auf seiner Seite), das macht mich stutzig!
Gruss
Reinhard
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5865
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Tommy Herrmann »

Moin zusammen,
Klaus hat geschrieben: Do 11. Jan 2024, 18:57 @Tommy, das Problem tritt ja nur auf wenn Du eine vorhandene Nachricht vom Bild her änderst.
also Klaus hat Recht.

Hier ist noch die Datei "lies_mich.txt" zur derzeit allerneuesten Version der "MySQL Nachrichten" vom 04.01.2024, die ich aber nicht eingebaut habe:

https://www.mobirise-tutorials.com/News/lies_mich.txt

Ich habe jetzt in meinem Download auch die zur Zeit aktuelle Version vom 04.01.2024 bereitgestellt.

Vielleicht hatte Werner da auch vom Andy irgendwie Infos erhalten, die nicht ganz stimmten (denn ich hatte nie einen Fehler beim Hochladen bemerkt - seit der allerersten Version) und nicht richtig kontrolliert. Ich benutze die Anwendung "MySQL Nachrichten" seit Anfang 2013 fehlerfrei!

Hat das vielleicht mit der PHP-Version zu tun, die am Server verwendet wird?





Oder liegt der Fehler denn dann vielleicht darin, dass das Datum nur beim Setzen in der POST Variable als STRING vorhanden ist?

Code: Alles auswählen

sscanf($_POST["datum"], "%10s %2s:%2s:%2s", $d, $h, $m, $s);
$dateiname = "${d}_$h-$m-$s." . $dateiendung;
... ansonsten eben $_POST["datum"] leer ist oder bereits keinen Typ STRING mehr hat, sondern den Typ DATETIME ?!

Insbesondere ist mir aufgefallen, dass das Datum ja den Typ "datetime" in der Datenbank hat und im Script "editor.php" ein STRING mit sscanf umgesetzt wird, der nur bei der Eingabe als solcher vorhanden sein sollte, denn das Datum wird ja nur bei der Eingabe als STRING erkannt und dann als DATETIME in die Datenbank eingetragen.

Daher wird vielleicht beim nachträglichen Hochladen vom Bild das Datum ja bereits im Typ "datetime" falsch interpretiert und die Variable $dateiname dann eben falsch gesetzt.

Das Datum wird als DATE übernommen, also nicht mehr als STRING und aus der Zeit $h-$m-$s,
wird dann eben (unerkannt) "---".

Datenbank-Struktur.jpg


Datenbank-Einträge.jpg

Da ich mich noch zu den Anfängern in Sachen "PHP" zähle, kann ich nicht abschließend beurteilen, ob meine Vermutungen mit dem Anweisung "sscanf" richtig sein könnten. Wenn diese aber richtig sind, dann ist ja das Problem im allerneuesten Script der Anwendung "MySQL-Nachrichten", vom 04.01.2024, immer noch gleich :confused:








Meine heutigen Tests:

Ich habe das jetzt mal ausführlich getestet, denn bisher habe ich immer sofort mit einem Eintrag ein Bild hochgeladen oder auch gar kein Bild bei einem Beitrag hinzugefügt.

Daher habe ich da nie bemerkt.

Die Screenshots zeigen das, was im jeweiligen Screenshot beschrieben steht. Nach dem Löschen und erneuten Hinzufügen bekommt das Bild dieses komische Format:

12.01.2024_---.png

Das hatte ich selbst noch nie gesehen, da ich wohl (fast) nie ein Bild gelöscht habe, um es neu einzufügen - außer bei meinen allerersten Versuchen und die stehen bereits seit 2020 in diesem komischen Datums-Format auch bei mir in der Datenbank, was ich heute zum ersten Mal sehen konnte.

Dennoch wird das Bild, auch mit diesem Format vom Dateinamen, erkannt und richtig dargestellt!

Das wurde bereits auch mit PHP5 ebenso richtig dargestellt - hier ein Einbau aus dem Jahr 2013 mit aktuell PHP5.6 am Server:

http://www.nof-tutorials.com/Nachrichten/

... wie nun aktuell mit PHP8.2 - hier meine aktuelle PHP-Version an der Domain "Mobirise-Tutorials.com":

https://www.mobirise-tutorials.com/PHP/

... hier meine aktuelle Seite mit der Anwendung "MySQL Nachrichten" in PHP8.2 - hier ist meine aktuelle Anwendung "MySQL Nachrichten" - Version vom 30.08.2020 - aus dem Jahr 2020:

https://www.mobirise-tutorials.com/News/



Lädt man das Bild gleich mit hoch (also nicht nachträglich) erhält es das gewollte Format, siehe auch letzter Screenshot vom Editor (vorletztes Bild):

2024-01-12_01-03-54.jpg

Aber egal wie - das Bild wird immer angezeigt.

Beim Reinhard kann eigentlich daher nur noch der Pfad zum Bild in der Datei "verbindung.php" falsch sein, ansonsten wüsste ich nicht was falsch sein könnte, denn an dem Format liegt es nicht.


1-Nachrichten ohne Bild und Bild danach hochgeladen.jpg

2-Nachrichten -Bildname- danach.jpg

3-Nachrichten Bild danach nochmals hochgeladen.jpg

4-Nachrichten Bild Test2 -Bild gleich mit hochgeladen.jpg

5-Nachrichten alle Testeinträge im Blog.jpg
Klaus
Supporter
Supporter
Beiträge: 446
Registriert: Mi 21. Jul 2021, 00:43

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Klaus »

Das Problem ist aber dass andere Bilder die man an dem Tag hochläd bzw. die das gleiche Datum haben überschrieben werden weil ja alle als Namen nur den Tag bekommen.

Die Unterschiedliche "Behandlung" kommt daher dass "Eintragen" und "Aktualisieren" an 2 verschiedenen Stellen "ausgewertet" werden.

Du brauchst in der alten editor.php nur nach rename suchen dann findest Du die 2 Stellen wo die hochgeladene Datei umbenannt wird.

Das Datum in der DB hat nichts mit dem Namen zu tun für den Eintrag in der DB wird das Datum wieder anders berechnet.

Einfach die neue Version nehmen ...

Code: Alles auswählen

 if (in_array($_POST["aktion"], ["eintragen", "aktualisieren", "loeschen"])) {

  // Nachricht eintragen
  if ($_POST["aktion"] == "eintragen") {
  
  ...
  
    // Nachricht aktualisieren
  if ($_POST["aktion"] == "aktualisieren") {

  
  
... und im Browser mit F12 kannst Du ja sehen was beim Post übertragen wird, das landet dann so in PHP:

Code: Alles auswählen

------WebKitFormBoundaryShCa0YyzXTLFmO9u
Content-Disposition: form-data; name="datum"

11.01.2024 - 02:01
------WebKitFormBoundaryShCa0YyzXTLFmO9u
Content-Disposition: form-data; name="tag"
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5865
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Tommy Herrmann »

danke Klaus,

ich gucke mir das morgen mal an - obwohl ich das überhaupt nicht benötige ...

Klaus hat geschrieben: Fr 12. Jan 2024, 18:40 Einfach die neue Version nehmen ...

Weißt Du - so einfach ist das manchmal nicht mit einer neueren Version.

Ich ändere immer jede Menge selbst an den Scripten und weiß nach Jahren nicht mehr unbedingt was ich alles geändert hatte, obwohl ich fast immer alles notiere. Ganz oft fügt Werner auch andere und neue Tabellen-Spalten hinzu und dann geht gar nichts mehr. Das weiß ich auch immer nicht, weil das nicht vermerkt wird.

Bei mir funktioniert meine alte Version jetzt seit 4 Jahren fehlerfrei und ich habe gerade einen Haufen anderer Probleme. Ich lasse meine persönliche Version vorläufig so wie diese ist.

Der Einbau von Werners Scripten geht meist sehr einfach und blitzschnell - an einem Umbau habe ich aber auch schon mal locker 4-5 Stunden gesessen - deswegen höre ich dann auch meist irgendwann auf, die neuesten Versionen zu installieren. Das ist dann bei mir zu viel Arbeit.

Gerade ist auch wieder ein Update für eine Erweiterung (contact-admin) vom Forum gekommen, da sitze ich auch wieder stundenlang, weil alles nicht passt ...
Benutzeravatar
struggle
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 438
Registriert: So 4. Dez 2022, 11:55
Wohnort: Brandenburg

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von struggle »

Hallo,

nach der Neuinstallation funktioniert jetzt das Hochladen von Bildern :freude:

Meinen besten Dank an alle für ihre Hilfe

https://www.meinlangengrassau.de/ereignisse
Gruss
Reinhard
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5865
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Tommy Herrmann »

na Glückwunsch :tu:

... dennoch war da noch etwas anderes falsch, denn auch mit dem alten Skript hätte das funktionieren müssen. Das hatte es ja auch bereits, denn ich hatte bei Dir genau dieses Fotos in diesen "Nachrichten" schon einmal gesehen.

Du hattest mit Sicherheit lediglich einen falschen relativen Pfad zu den Bildern gesetzt, denn nachdem Du die Scripts in ein Verzeichnis "blog" verschoben hattest, wurde die Bilder dann nicht mehr dargestellt - erst dann und nicht zuvor. Nun liegen die Dateien ja auch, wie ich es Dir eigentlich auch geschrieben hatte, im Stammverzeichnis:

https://www.meinlangengrassau.de/anzeige.php

Dennoch gut, dass Du nun schon mal die neustes Version verwendest.
Benutzeravatar
struggle
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 438
Registriert: So 4. Dez 2022, 11:55
Wohnort: Brandenburg

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von struggle »

Ja, scheint jetzt alles gut !

Nun bin ich dabei, in der style.css einige Änderungen vorzunehmen. Einiges im Formularfeld hab ich schon von schwarz auf weiss geändert. Aber ich finde in der style.css einfach nicht den Eintrag für die Anzeige weiterer Kategorien. Diese werden in blau dargestellt, hier möchte ich auch gerne die Farbe ändern
andere farbe.PNG
andere farbe.PNG (7.83 KiB) 385 mal betrachtet
Gruss
Reinhard
Benutzeravatar
Volker
Moderator
Moderator
Beiträge: 855
Registriert: Sa 12. Dez 2020, 22:35
Wohnort: Wildberg
Kontaktdaten:

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Volker »

So wie ich es Dir schon erklärt hatte ;)

Du musst, wenn keine Farbe in der CSS vorgesehen ist, eben eine einfügen.
kat.png
kat.png (2.48 KiB) 384 mal betrachtet
Da einfach ein Color rein nach deiner Wahl

Ah ich seh gerade das sind ja Links.

Dann eben die Linkfarbe ändern
link.png
link.png (3.99 KiB) 381 mal betrachtet
Gruß Volker
Benutzeravatar
struggle
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 438
Registriert: So 4. Dez 2022, 11:55
Wohnort: Brandenburg

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von struggle »

So, wie Du es gesagt hast, habe ich es ja ein paar Mal gemacht. Farbe einfügen war schon klar.

Mir war nicht klar welcher Eintrag dafür zuständig ist. Jetzt hast Du es mir gezeigt, Dankeschön :tu:
Gruss
Reinhard
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5865
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Tommy Herrmann »

Moin,

... nur zum Verständnis, da Mobirise seinen Farben teilweise das Attribut !important (wichtig) gibt, müsstest Du Deine Änderungen in der CSS-Datei vom Werner (style.css) auch mit !important markieren und somit überschreiben, damit das wirkt, also z.B. so:

Code: Alles auswählen

/* Link */
a:link,
a:visited {
  font-family: Verdana, Arial, Sans-Serif;
  color: #ffff00 !important;
  text-decoration: None;
}

a:hover {
  color: #ecec53 !important;
}


a:

Ist der CSS-Selektor (Element) für einen Link, das "a" steht für "anchor" (Anker).


Die oberen beiden

a: link
a: visited

"link" steht für das Verhalten des Links, und nachdem dieser geklickt wurde (visited / besucht).


a: hover

steht für das Verhalten bei Mausüber (hover) am Link.


Weiß oder auch Gelb ist aber nun nicht so wirklich die richtige Farbe auf dem hellen Hintergrund der Einträge. Musst Du mal gucken, ob Du da eine bessere Farbe findest.





... oder - besser - Du machst die Hintergründe etwas anders in den Farben in der CSS-Datei vom Werner (style.css) - also den Eintrag:

background-color (Hintergrund-Farbe)

"even" sind die geraden Felder und "odd" die ungeraden Felder der Einträge (im Wechsel). Vielleicht passen da zwei leicht unterschiedliche Rot-Töne aus dem Rot der Hintergrundfarbe sehr gut.

Hier kannst Du passende Farben zu Deinem Rot #db6400 finden, hellere und dunklere Stufen:

https://www.color-hex.com/color/db6400

Code: Alles auswählen

/* Nachrichten - Hintergrund zeilenweise einfärben! */
dl.nachrichten:nth-child(even) {
  background-color: #eaeaea;
  border-radius: 4px;
  box-shadow: 0px 0px 5px #999999;
  margin-bottom: 25px;
}

dl.nachrichten:nth-child(odd) {
  background-color: #f5f5f5;
  border-radius: 4px;
  box-shadow: 0px 0px 5px #999999;
  margin-bottom: 25px;
} 
Trage vielleicht (ausprobieren) diese beiden Rot-Töne dort ein:

#e28332;

#e9a266;

Die oberste Farbe #e28332; würde dann so aussehen wie im Screenshot unten und dann könntest Du die Link-Farben so lassen, wie diese gerade sind:


Hintergrundfarbe ändern.jpg


Natürlich könntest Du auch die gesamte Textfarbe (oder auch nur bestimmte Bereiche) der Nachrichten in z.B. weiß ändern, indem Du die Farbe noch zum body Element hinzufügst:

color: #ffffff;

Code: Alles auswählen

body {
  font-family: Verdana, Arial, Sans-Serif;
  font-size: 0.95rem;
  margin-bottom: 250px;
  scroll-behavior: smooth;
  color: #ffffff;
}

Hintergrund- und Textfarbe ändern.jpg
Benutzeravatar
struggle
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 438
Registriert: So 4. Dez 2022, 11:55
Wohnort: Brandenburg

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von struggle »

Hallo Tommy,

vielen Dank für die Ausführungen, das hilft sehr :tu:

"!important" kenne ich ja schon von der Hervorhebung meiner Farbe bei der Navigation, das wurde durch Deine Links zu CSS schon toll erklärt, daß nämlich alles bisherige überschrieben wird. Deshalb wundert es mich ein wenig, daß es bei meiner Änderung, lediglich die Farbe hinzuzufügen, auch schon klappt. Ich werde es auf jeden Fall noch hinzuschreiben.

Glücklich bin ich bei meinen Links in gelb auf weissem Hintergrund auch nicht, es war scho 2.00 Uhr früh, da war ich müde und bin ins Bett. Heute wollte ich das in Angriff nehmen.

Ich glaube, ich bleibe meiner kompletten Homepage treu und werde so vogehen:
css.png
css.png (10.58 KiB) 290 mal betrachtet
also den Hintergrund und die Textfarbe ändern. Ich möchte auch, daß sich der Hintergrund klar abhebt.
Da auf meiner Webseite der Link immer gelb ist, wollte ich das so lassen.

Ich glaube, Even und Odd ist mir auch schon mal beim Roulette begegnet (Pair / Impair) :D

Beim Hintergrund werde ich noch eine andere leicht abweichende Farbe zum Wechsel nehmen.
Gruss
Reinhard
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5865
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Tommy Herrmann »

nein - !important (wichtig) muss man NUR dann hinzufügen, wenn die CSS-Anweisung bereits auch mit !important gegründet wurde, sonst nicht.

Wurde eine CSS-Anweisung ohne dieses !important gegründet, dann kann diese auch mit der einfachen Anweisung überschrieben werden.
Benutzeravatar
struggle
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 438
Registriert: So 4. Dez 2022, 11:55
Wohnort: Brandenburg

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von struggle »

Ja, verstanden !
Sagst Du mir bitte noch, wo ich das sehe, ob die CSS-Anweisung schon mit !important gegründet wurde ?
Gruss
Reinhard
Benutzeravatar
Volker
Moderator
Moderator
Beiträge: 855
Registriert: Sa 12. Dez 2020, 22:35
Wohnort: Wildberg
Kontaktdaten:

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Volker »

Hier mal ein sehr gutes Video zum Thema CSS wie ich finde.

https://www.youtube.com/watch?v=I84aQhbJl_Y&t=341s
Gruß Volker
Benutzeravatar
struggle
Mitglied (Level 10)
Mitglied (Level 10)
Beiträge: 438
Registriert: So 4. Dez 2022, 11:55
Wohnort: Brandenburg

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von struggle »

Hallo Volker,
Dankeschön, aber beim Aufruf des Videos kommt die Meldung, es sei ein Fehler aufgetreten.

JETZT geht es ;)
Gruss
Reinhard
Benutzeravatar
Tommy Herrmann
Site Admin
Site Admin
Beiträge: 5865
Registriert: So 6. Dez 2020, 07:37
Wohnort: Berlin
Kontaktdaten:

Re: Nachrichten-Skript von Werner Zenk

Ungelesener Beitrag von Tommy Herrmann »

na ja - sehen kannst Du das nur in den CSS-Anweisungen, die ja meist in irgendwelchen CSS-Dateien stehen.

Mit etwas Erfahrung wie man die Browser-Werkzeuge verwendet, kann man die CSS-Anweisungen recht gut finden. Manchmal ist das aber auch nicht so leicht, dann hilft nur probieren.

Man wundert sich manchmal, wenn man aus > Rot > Blau machen will und es geht nicht. Das ist dann schon oft ein Hinweis, dass eben die Farbe Rot mit !important gegründet wurde.

Ich schreibe das nur, weil man das erstens wissen muss und auch weil eine grundsätzliche Verwendung vom Attribut !important ein ganz schlechter Programmierstil wäre.

Grundsätzlich schreibe einfache CSS-Anweisungen (ohne !important), erst wenn das nicht funktionieren sollte und Du auch den Browser-Cache gelöscht hattest, dann versuche es mit !important.
Antworten

Wer ist online?

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