Testseite mit Galerie Plugins

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
Post Reply
olape
Posts: 2731
Joined: Fri Mar 13, 2015 8:47 am
Contact:

Re: Testseite mit Galerie Plugins

Post by olape » Mon Nov 22, 2021 1:48 pm

Hast du immer noch JPG als Dateierweiterung?
Dann ist vermutlich das auch hier der Grund.
ein Versuch wäre die beiden str_replace durch str_ireplace zu ersetzen.
oder alternativ jeweils
...

Code: Select all

str_replace(".jpg",".txt",
...
durch
...

Code: Select all

str_replace(array(".jpg", ".JPG"),".txt",
..
Gruß Olaf, Plugins for CMSimple_XH

Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.

Ralf H.
Posts: 495
Joined: Sun Feb 16, 2014 1:45 pm
Location: Münsterland
Contact:

Re: Testseite mit Galerie Plugins

Post by Ralf H. » Mon Nov 22, 2021 3:55 pm

olape wrote:
Mon Nov 22, 2021 1:48 pm
Hast du immer noch JPG als Dateierweiterung?
Dann ist vermutlich das auch hier der Grund.
ein Versuch wäre die beiden str_replace durch str_ireplace zu ersetzen.
oder alternativ jeweils
...

Code: Select all

str_replace(".jpg",".txt",
...
durch
...

Code: Select all

str_replace(array(".jpg", ".JPG"),".txt",
..
Beide Änderungen beheben leider (bei mir) nicht die Fehlermeldungen.

Ich bin inzwischen der Meinung, dass das Puzzel-Bugfixen für euch (und mich), aber insbesondere für den Entwickler möglicherweise zur Verwirrung führen kann. Auf verschiedenen Systemen (php 5-8) mit anderen Templates, Xampp/Online und co. kann es evtl. unterschiedliche Auswirkungen haben?!
Danke für die bisherige Hilfe.
Badminton Individual-/Gruppentraining im Münsterland:
http://www.badminton-tips.de (deutsch)

olape
Posts: 2731
Joined: Fri Mar 13, 2015 8:47 am
Contact:

Re: Testseite mit Galerie Plugins

Post by olape » Mon Nov 22, 2021 4:59 pm

Ralf H. wrote:
Mon Nov 22, 2021 3:55 pm
Ich bin inzwischen der Meinung, dass das Puzzel-Bugfixen für euch (und mich), aber insbesondere für den Entwickler möglicherweise zur Verwirrung führen kann. Auf verschiedenen Systemen (php 5-8) mit anderen Templates, Xampp/Online und co. kann es evtl. unterschiedliche Auswirkungen haben?!
ich bin auch nur am raten, da ich das Plugin nicht habe und entsprechend auch nie genutzt habe.
Und ja, ich denke auch, das macht auf diese Art nicht wirklich Sinn. Wenn sich keiner mal das gesamte Plugin vornimmt und es entsprechend auf die aktuellen Gegebenheiten anpasst, wird das nicht wirklich was.

Verschieden PHP-Versionen und verschiedene Server KÖNNEN natürlich einen Einfluss auf Funktionen / bzw. mögliche Fehler haben.
Es muss aber nicht zwingend so sein.
Gruß Olaf, Plugins for CMSimple_XH

Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Testseite mit Galerie Plugins

Post by lck » Mon Nov 22, 2021 6:05 pm

olape wrote:
Mon Nov 22, 2021 1:48 pm
Hast du immer noch JPG als Dateierweiterung?
Dann ist vermutlich das auch hier der Grund.
ein Versuch wäre die beiden str_replace durch str_ireplace zu ersetzen.
oder alternativ jeweils
...

Code: Select all

str_replace(".jpg",".txt",
...
durch
...

Code: Select all

str_replace(array(".jpg", ".JPG"),".txt",
..
Ralf H. wrote:
Mon Nov 22, 2021 3:55 pm
Beide Änderungen beheben leider (bei mir) nicht die Fehlermeldungen.
Doch das funktioniert.

Code: Select all

	// $org_img=str_replace(".jpg",".txt",$org_img);
	$org_img=str_replace(array(".jpg", ".JPG"),".txt",$org_img);
	// $new_img=str_replace(".jpg",".txt",$new_img);
	$new_img=str_replace(array(".jpg", ".JPG"),".txt",$new_img);
Wichtig, kontrolliere vorher in dem imgalbum Galerie-Ordner, ob die Dateinamen der JPG und der txt-Datei den gleichen Namen haben. Durch das vorherige experimentieren der Umbenennung wurde zwar der Bildname geändert aber der Name der dazugehörigen Textdatei nicht, da es ja dabei zu einen Fehler kam.
Beispiel, wenn der Name Horst.JPG ist muß auch der Name der Textdatei Horst.txt sein. Dann sollte die Umbenennung wieder tadellos klappen.
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Testseite mit Galerie Plugins

Post by lck » Mon Nov 22, 2021 6:29 pm

Zusätzlich muss dann auch noch ~Zeile 510 geändert werden

Code: Select all

	// unlink($path.str_replace(".jpg",".txt",$img)); // delete txt file
	unlink($path.str_replace(array(".jpg", ".JPG"),".txt",$img)); // delete txt file
Sonst gibt es beim Löschen des Bildes per "Rename &Delete" Button einen Fehler.
Debug-Mode wrote:WARNING: unlink(userfiles/images/imgalbum/heros/Horst.JPG): No such file or directory
D:\xampp\htdocs\xh175\plugins\imgalbum\libs\gallery_adminfunctions.php:510
Grundsätzlich sollte man aber immer nur Kleinbuchstaben, keine Umlaute, keine Leerzeichen, Zahlen, Unter- und Bindestriche verwenden.
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Testseite mit Galerie Plugins

Post by cmb » Mon Nov 22, 2021 10:01 pm

Ralf H. wrote:
Mon Nov 22, 2021 3:55 pm
Ich bin inzwischen der Meinung, dass das Puzzel-Bugfixen für euch (und mich), aber insbesondere für den Entwickler möglicherweise zur Verwirrung führen kann.
Ja, das Puzzel-Bugfixen ist definitiv ein Problem, allein schon, weil man sich nachher durch einen langen Thread wühlen muss. Nun gibt es leider kein öffentliches Repo, wo man einzelne Bugs melden, und vielleicht auch gleich Pull-Requests einreichen könnte. Vielleicht sollten wir unter "Addons and Plugins" einen Thread erstellen, wo wir versuchen, einen einzigen Post pro Bug (idealerweise mit Patch-Vorschlag) zu erstellen, um Jerry den Überblick zu erleichtern? Dann könnten Moderatoren das Pflegen, nachdem hier im Thread das Puzzel-Bugfixen durchgeführt wurde.
olape wrote:
Mon Nov 22, 2021 4:59 pm
ich bin auch nur am raten, da ich das Plugin nicht habe und entsprechend auch nie genutzt habe.
Du kannst es von https://simplesolutions.dk/?Gallery_Col ... mage_Album herunter laden. :)
lck wrote:
Mon Nov 22, 2021 6:29 pm
Grundsätzlich sollte man aber immer nur Kleinbuchstaben, keine Umlaute, keine Leerzeichen, Zahlen, Unter- und Bindestriche verwenden.
Ist heutzutage kaum noch haltbar, und vielleicht auch nicht mehr nötig. Ab PHP 7.1 funktionieren UTF-8 kodierte Dateinamen unter Windows ganz hervorragend, und ich glaube, unter Linux in aller Regel sowieso. Einige spezielle Zeichen (wie z.B. die Wildcards * und ?) sollte man vermeiden, aber Umlaute etc. sind vermutlich kein besonderes Problem. Ein bisschen Aufpassen muss man aber wegen Groß-/Kleinschreibung, da manche Systeme case-sensitive sind (Linux), und andere case-insensitive (Windows/NTFS, u.U. auch macOS). Man kann unter Linux eben mein.txt und MEIN.TXT und Mein.Txt im gleichen Verzeichnis haben, unter Windows aber nicht.

Jedenfalls sind die einfachen Stringfunktionen von PHP (bis auf ein paar Ausnahmen) nicht für UTF-8 geeignet. Insbesondere str_ireplace(), stristr() und stripos() funktionieren nicht wie gewünscht. Statt dessen sollte man die entsprechenden MBString-Funktionen verwenden, oder CMSimple_XHs utf8_stripos(). Oder man verwendet PCRE mit dem u-Modifier und ggf. entsprechende Zeichenklassen. Dabei ist aber zu berücksichtigen, dass MBString (und utf8_stripos()) keine Unicode-Normalisierung durchführen (bei PCRE bin ich nicht sicher). Das kann ein Problem sein, muss aber nicht. Wird die Normalisierung benötigt, dann hilft Normalizer.
olape wrote:
Mon Nov 22, 2021 12:27 pm

Code: Select all

if(preg_match('/^[a-z0-9-_]+\.jpg$/i', $filename)) {
sollte das eigentlich tun (hoffe ich)
Ja, aber eben nur für lateinische Buchstaben (a-z), und auch nur, wenn der String nur ASCII-Zeichen enthält (also das entsprechende Subset von UTF-8). Allgemeiner wäre:

Code: Select all

if(preg_match('/^[\pL0-9-_]+\.jpg$/iu', $filename)) {
Vielleicht sollte CMSimple_XH da einen passenden Regex bereit stellen (oder mehrere)? Hätte zumindest den Vorteil, dass nicht zu viele Regexs im Spiel sind, da PHP diese nur bis zu einer bestimmten Anzahl in einem Cache vorhält.
Christoph M. Becker – Plugins for CMSimple_XH

olape
Posts: 2731
Joined: Fri Mar 13, 2015 8:47 am
Contact:

Re: Testseite mit Galerie Plugins

Post by olape » Tue Nov 23, 2021 6:41 am

lck wrote:
Mon Nov 22, 2021 6:29 pm
Grundsätzlich sollte man aber immer nur Kleinbuchstaben, keine Umlaute, keine Leerzeichen, Zahlen, Unter- und Bindestriche verwenden.
cmb wrote:
Mon Nov 22, 2021 10:01 pm
Ist heutzutage kaum noch haltbar, und vielleicht auch nicht mehr nötig. Ab PHP 7.1 funktionieren UTF-8 kodierte Dateinamen unter Windows ganz hervorragend, und ich glaube, unter Linux in aller Regel sowieso.
Da hast du grundsätzlich sicher Recht. Ich sehe es aber auch so wie Ludwig.
Das ist auch einfach nur eine Gewohnheitsfrage. Damit geht man den möglichen Folgefehlern einfach aus dem Weg.
Das betrifft neben Umlauten usw. hauptsächlich die Groß- und Kleinschreibung.
Da wird lokal getestet --> alles gut, dann wird es hochgeladen und schon funktioniert es nicht mehr, weil die meisten Webserver eben mit Linux laufen. Im schlechtesten Fall merkt man es nicht mal gleich.
Eine einheitliche Benennung mit a-z, 0-9, -_ ist da die einfachste Variante.
cmb wrote:
Mon Nov 22, 2021 10:01 pm
Ja, aber eben nur für lateinische Buchstaben (a-z), und auch nur, wenn der String nur ASCII-Zeichen enthält (also das entsprechende Subset von UTF-8). Allgemeiner wäre:

Code: Select all

if(preg_match('/^[\pL0-9-_]+\.jpg$/iu', $filename)) {
Vielleicht sollte CMSimple_XH da einen passenden Regex bereit stellen (oder mehrere)? Hätte zumindest den Vorteil, dass nicht zu viele Regexs im Spiel sind, da PHP diese nur bis zu einer bestimmten Anzahl in einem Cache vorhält.
Dann müsste es das ja eigentlich auch tun

Code: Select all

if(preg_match('/^[\p{L}\p{N}-_]+\.jpg$/i', $filename)) {
Gruß Olaf, Plugins for CMSimple_XH

Ich habe schon lange den Verdacht, dass so viele so eifrig auf Gender, Trans und Queer machen:
Weil sie für das Fachliche ganz einfach zu doof sind.

Ralf H.
Posts: 495
Joined: Sun Feb 16, 2014 1:45 pm
Location: Münsterland
Contact:

Re: Testseite mit Galerie Plugins

Post by Ralf H. » Tue Nov 23, 2021 9:38 am

Imgalbum:

Habe von Ludwig das Plugin Imgalbum mit allen bisherigen bugfixes erhalten.
An dieser Version habe ich nur noch meine eigenen Einstellungen und meinen Style geändert.
Bisher in Xampp und Online keine Probleme festgestellt. :idea:

Aber aufpassen beim Plugin:
Durch die automatisch angelegten Textdateien + Unterverzeichnisse (wtrmrk, thumb) kann es zu Umbenennungsfehlern kommen.
Die Datei-, Text-, Thumb- und Wasserzeichen-Namen müssen indentisch sein und bleiben !!!
Hier sehe ich Fehlerpotenzial für html-Laien.

Ich könnte das Plugin gebugfixed jetzt für die Malerin verwenden.
Allerdings erhalte ich von Holger noch die neueste Version von lb_gallery, welche mir von seiner Beschreibung sehr interessant scheint.
Kann mir vorstellen, dass es noch gezielter meine Vorstellungen erfüllen wird als Imgalbum.
Test werde ich natürlich auf der Vergleichsseite veröffentlichen, sobald fertig eingerichtet.
Badminton Individual-/Gruppentraining im Münsterland:
http://www.badminton-tips.de (deutsch)

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Testseite mit Galerie Plugins

Post by lck » Tue Nov 23, 2021 10:00 am

olape wrote:
Tue Nov 23, 2021 6:41 am
Dann müsste es das ja eigentlich auch tun

Code: Select all

if(preg_match('/^[\p{L}\p{N}-_]+\.jpg$/i', $filename)) {
Nein, tut es nicht.
Imgalbum meldet:
imgalbum wrote:Illegal file name ABC03.JPG. File 03.JPG not renamed
und Debug-Modus:
WARNING: preg_match(): Compilation failed: invalid range in character class at offset 12
D:\xampp\htdocs\xh175\plugins\imgalbum\libs\gallery_adminfunctions.php:77
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

lck
Posts: 2963
Joined: Wed Mar 23, 2011 11:43 am
Contact:

Re: Testseite mit Galerie Plugins

Post by lck » Tue Nov 23, 2021 10:05 am

cmb wrote:
Mon Nov 22, 2021 10:01 pm
Ja, aber eben nur für lateinische Buchstaben (a-z), und auch nur, wenn der String nur ASCII-Zeichen enthält (also das entsprechende Subset von UTF-8). Allgemeiner wäre:

Code: Select all

if(preg_match('/^[\pL0-9-_]+\.jpg$/iu', $filename)) {
Das funktioniert.
Schön wäre, wenn ihr das für uns Laien auch immer in Textform dazuschreiben könntet, quasi übersetzen. Dann wäre es verständlicher und wir könnten was lernen. Bei copy & paste lernt man nix :( :) .
„Bevor du den Pfeil der Wahrheit abschießt, tauche die Spitze in Honig!“   👉 Ludwig's XH-Templates for MultiPage & OnePage

Post Reply