Umlaute in Schlagwörtern - Page 2 Umlaute in Schlagwörtern - Page 2
 

News:

CPG Release 1.6.26
Correct PHP8.2 issues with user and language managers.
Additional fixes for PHP 8.2
Correct PHP8 error with SMF 2.0 bridge.
Correct IPTC supplimental category parsing.
Download and info HERE

Main Menu

Umlaute in Schlagwörtern

Started by wuestenfloh, January 15, 2014, 10:19:48 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

sindbad5

Nachtrag: Kann ich irgendwie meine Einstellungen exportieren und dir zukommen lassen? Ev. ergibt sich daraus ein Hinweis.

Tom   

sindbad5

Mit einer .htaccess habe ich auf php5.xx umgeschaltet. Danach stimmte die Darstellung der Umlaute, ob mit oder ohne die voranstehend genannten Modifikationen der beiden Dateien. Bei einem Klick auf ein Schlüsselwort mit Umlaut lautet das Ergebnis (fast immer) "Keine Datei zum Anzeigen vorhanden (oder Du hast keine Berechtigung, das Album zu sehen)" 




sindbad5

Nach der Umstellung auf PHP5.4 werden die Umlaute und Sonderzeichen von bereits eingelesenen Bildern korrekt dargestellt, doch eine Suche nach Begriffen mit Umlauten geht nicht. Das könnte ich akzeptieren.

Zum Überprüfen der neuen Konfiguration habe ich einige Fotos hochgeladen. Beschreibungen, in denen ein einziges Wort mit einem Umlaut vorkommt, werden gar nicht mehr angenommen. In der Reihe der Schlüsselwörter fehlen nun alle Begriffe mit Umlauten. Das passiert sowohl mit den beiden originalen als auch modifizierten Dateien aus Coppermine. Für mich ist dies inakzeptabel. Daher gebe ich erstmal eine Weiterbeschäftigung mit Coppermine auf. Mehr Zeit, als bereits aufgebracht, kann ich nicht in dieses Projekt stecken. Schade drum.

Soweit ich es sehe, hat Coppermine ein massives Problem mit Umlauten und Sonderzeichen. Für mich als Fotograf ist der Aufwand des Feststellens solcher Macken, die sehr vielen Stunden des Recherchierens und des Experimentierens ohne das Erzielens eines sicheren und stabilen Ergebnisses, das zum hochwertigen Präsentieren von Bildern eingesetzt werden kann, sinnlos. Der Aufwand steht in keinem Verhältnis zum Nutzen. Ich bin kein Programmierer und möchte keiner werden. Dazu habe ich wieder die im hohen Maße benötigte Zeit noch die fachlichen Kenntnisse.

Wenn niemand auf verständliche Weise mitteilen kann, mit welcher PHP-Version und, sofern nötig, mit welchen Modifikationen eine einwandfreie Berücksichtigung von Wörtern mit Sonderzeichen und Umlauten möglich ist, ist Coppermine aus meiner Sicht im deutschsprachiger Raum ein Experimentallabor, aber kein ausreichend brauchbares Werkzeug für Fotografen.

Man kann sagen, einem geschenkten Gaul, schaut man nicht ins Maul, weil Coppermine vermeintlich kostenlos ist. Doch Zeit ist Geld und in dieser Hinsicht war Coppermine für mich sehr (!) teuer.

Solange das Problem mit den Umlauten und Sonderzeichen nicht in der Anwendung selbst gelöst ist, und die Nutzer sich selbst etwas zusammenfrikkeln müssen, was mir nicht gelang, lege ich dieses Projekt auf die Seite, weil der Aufwand zu nichts führte.

Vielen Dank für den Support im Forum.

Ich werde gelegentlich in diesen Thread schauen, ob das Thema eine solide Lösung bekommt. Bis dahin erstelle ich in erprobter Weise solide Alben auf HTML-Basis.

Αndré

Quote from: sindbad5 on March 06, 2014, 08:14:06 PM
Gerne, wie kann ich sie dir zustellen?

Am besten direkt hier anhängen.

Cmaniac

My resolution is here.

1. Revert all changes.
2. Recheck/reinsert keywords that were inserted after the changes were applied.
3. Go to displayimage.php in line 180 and change this


           $keyword_links[] = '<a href="thumbnails.php?album=search&amp;keywords=on&amp;search=' . urlencode($keyword) . '">' . htmlentities($keyword) . '</a>';


to that

            $keyword_links[] = '<a href="thumbnails.php?album=search&amp;keywords=on&amp;search=' . urlencode($keyword) . '">' . htmlentities($keyword, ENT_COMPAT, 'UTF-8') . '</a>';

.

Everything should be fixed.

German translation below

Mein Vorsatz ist hier.

1. Nimmt alle Änderungen zurück.
2. Überprüfen Sie nochmals / wieder einsetzen Keywords, die eingesetzt wurden, nachdem die Änderungen angewendet wurden.
3. Zum in Zeile 180 displayimage.php und dies ändern


           $keyword_links[] = '<a href="thumbnails.php?album=search&amp;keywords=on&amp;search=' . urlencode($keyword) . '">' . htmlentities($keyword) . '</a>';


dem

            $keyword_links[] = '<a href="thumbnails.php?album=search&amp;keywords=on&amp;search=' . urlencode($keyword) . '">' . htmlentities($keyword, ENT_COMPAT, 'UTF-8') . '</a>';

.

Alles sollte festgelegt werden.

sindbad5

Quote from: Αndré on March 07, 2014, 12:11:19 PM
Am besten direkt hier anhängen.

Bei der Datei  'Cambodia-Cardamom-20130404-113' werden die Umlaute korrekt dargestellt und sind suchbare Begriffe.

Bei der Datei Kambodscah-20140129-Phnom-Penh-206 wird, egal ob durch diese oder jene Modifikation in den Copperminedateien eine korrekte oder falsche Darstellung zustande kam, ein Begriff mit Umlauten nicht suchbar. Es kommt eine Fehlermeldung, wenn man darauf klickt.

 

Αndré

Soweit ich das erkennen kann, haben beide Dateien keine IPTC Daten.

sindbad5

Dann muss sie jemand geklaut haben. Wenn man die Dateien aus meinen Copperminearchiv kopiert, sind die IPTC Infos enthalten:

http://www.medienarchiv.com/a-archiv/displayimage.php?pid=21266
Bei dem Bild werden die Umlaute nicht korrekt und als Suchbegriffe übernommen.

http://www.medienarchiv.com/a-archiv/displayimage.php?pid=21197
Hier stimmen Darstellung und Funktion.

   

sindbad5

Folgender Weg hat ein paarmal funktioniert:

In der displayimage.php wurde in der Zeile 180  htmlentities($keyword) gegen htmlentities($keyword, ENT_COMPAT, 'UTF-8') ersetzt.
In der include/keyword.inc.php wurde in de Zeile 73 htmlentities($keywords_array[$i]) durch htmlentities ($keyword, ENT_COMPAT, 'UTF-8') ersetzt.

Mein Hoster hat standardmäßig php 5.3 aktiviert.  In dem Modus mache ich den Upload oder das Einlesen der Bilder im Batchmodus. Beim upload mit php 5.4 werden alle Begriffe und Captions, die Umlaute enthalten gar nicht eingelesen.     

Nach dem Upload stelleich mich mit einer .htaccess im Coppermine-Ordner php 5.4 ein. Nun werden die Texte und Schlüsselwörter korrekt angezeigt.

Doch Begriffe mit Umlauten sind nicht suchbar. Um das zu ändern, gehe ich in Album-Eingenschaften / Dateien bearbeiten.
Unter Dateien pro Seite stelle ich die höchste Zahl ein. Dann markiere ich 'Alle Kommentare löschen' für alle Bilder und klicke auf 'Änderungen speichern'. Es ist völlig egal, welche Aktion unter Datei bearbeiten durchgeführt wird. Hauptsache es findet eine statt.
Danach ist alles in Ordnung.

Ich werde meinen Hoster darüber informieren. Vielleicht fällt dem etwas dazu ein, da er Coppermine in seiner Softwareliste nennt.

Αndré

Die Dateien in der Galerie enthalten die IPTC-Daten. Jedoch erhalte ich durch die Verwendung von PHP 5.4 dasselbe Ergebnis wie du - die betroffenen Schlüsselwörter werden gar nicht erst importiert. Ich werde es später noch mit PHP 5.3 versuchen.

Ich habe das noch nicht genauer untersucht, aber offensichtlich gehen die entsprechenden Schlüsselwörter hier verloren:
Code (include/iptc.inc.php) Select
$data=htmlentities(strip_tags(trim($data,"\x7f..\xff\x0..\x1f")),ENT_QUOTES); //sanitize data against sql/html injection; trim any nongraphical non-ASCII character:

Das ist jetzt aber ein anderes Problem, was wir in einem separaten Thread behandeln sollten.

Αndré

Mir ist gerade erst aufgefallen, dass du nicht htmlspecialchars, sondern htmlentities benutzt:
Quote from: sindbad5 on March 10, 2014, 09:19:04 PM
In der displayimage.php wurde in der Zeile 180  htmlentities($keyword) gegen htmlentities($keyword, ENT_COMPAT, 'UTF-8') ersetzt.
In der include/keyword.inc.php wurde in de Zeile 73 htmlentities($keywords_array[$i]) durch htmlentities ($keyword, ENT_COMPAT, 'UTF-8') ersetzt.

Deine abenteuerliche Vorgehensweise hab ich daher nicht weiter verfolgt, da das Problem für dich dadurch scheinbar bereits behoben ist.

Wieso PHP 5.4 keine Schlüsselwörter mit Umlauten in IPTC-Daten importiert werde ich demnächst untersuchen.

Αndré

Quote from: Αndré on March 11, 2014, 10:42:34 AM
Wieso PHP 5.4 keine Schlüsselwörter mit Umlauten in IPTC-Daten importiert werde ich demnächst untersuchen.

Versuch bitte folgende Änderung:

Öffne include/iptc.inc.php, finde
$data=htmlentities(strip_tags(trim($data,"\x7f..\xff\x0..\x1f")),ENT_QUOTES); //sanitize data against sql/html injection; trim any nongraphical non-ASCII character:
und ersetze es durch
$data=Inspekt::getEscaped(utf8_encode($data));

sindbad5

"Deine abenteuerliche Vorgehensweise"  - das kann man wohl so sagen. Ich weiss meist gar nicht, was wirklich mit den Änderungen bewirkt wird. Wie bereits erwähnt, bin ich kein Programmierer. Daher habe ich alle vorgeschlagenen Varianten ausprobiert und selbst variiert. Cmaniac hatte dies 'htmlentities($keyword, ENT_COMPAT, 'UTF-8')' vorgeschlagen. Am Ende war es egal, ob das so dort stand oder  mit 'htmlspecialchars'.  Meine Freunde müssen nun auf ihren Geräten und mit ihren Browsern checken, ob bei ihnen die Darstellung der Texte stimmt. Ich bin gespannt, ob sich jemand beklagt. 

Dein Vorschlag scheint zu funktionieren. Gerade habe ich ein Bild mit Umlauten hochgeladen ohne die vorgestellte Prozedur durchzuführen. Es wird korrekt dargestellt und die Begriffe mit Umlauten sind suchbar.

Heute Abend schaue ich mir das genauer an.