Smileys in Beiträgen werden nicht dargestellt

Fragen zur Bedienung von phpBB 3.0.x, Probleme bei der Benutzung und alle weiteren Fragen inkl. Update auf die neuste phpBB 3.0.14 Version
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
poenn
Mitglied
Beiträge: 37
Registriert: 27.01.2014 11:37

Smileys in Beiträgen werden nicht dargestellt

Beitrag von poenn »

Hallo zusammen,

ich habe nach dem Update auf phpBB 3.1.1 mal die Smiley-Codes eingedeutscht. Das bedeutet, daß ich im ACP/Beiträge/Smilies Code und Beschreibung geändert habe, hier ein Beispiel:

VORHER
:thumbup:
Thumb Up

NACHHER
:daumenhoch:
Daumen hoch

Für neue Beiträge klappt das wunderbar, ältere zeigen jetzt aber ein Fragezeichen statt des Smileys. Wenn ich im ACP wieder zusätzlich den alten Code anlege, ändert sich daran leider auch nichts.

Alternativ habe ich es mit einer SQL-Abfrage probiert, die einfach alle Vorkomnisse ersetzen soll:

update phpbb3_posts set post_text = replace(post_text, ':thumbup:', ':daumenhoch:')

Aber selbst das bringt keine Änderung. Es sei denn, ich editiere einen Beitrag. Dann wird der Smiley plötzlich angezeigt. Aber das kann ich ja nicht für tausende bestehende Beiträge machen… :o

Kann mir jemand helfen?

Danke!
poenn
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Smileys in Beiträgen werden nicht dargestellt

Beitrag von HabNurNeFrage »

Hi,

sind denn nach dem SQL auch alle Stellen angepasst worden?
Wenn ja, sollten die Smilies dann eigeentlich wieder angezeigt werden.

RegEx-Pattern zu ändern, wenn bereits tausende Stellen diese Pattern nutzen, ist immer etwas tricky :wink:

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
poenn
Mitglied
Beiträge: 37
Registriert: 27.01.2014 11:37

Re: Smileys in Beiträgen werden nicht dargestellt

Beitrag von poenn »

Ja, ich habe testweise in ein paar Posts geschaut. Die enthielten nach SQL :daumenhoch: anstelle von :thumbup:
Aber leider wurde mir immer noch kein Smiley angezeigt. Selbst nach Cache leeren im ACP und nach Neustart des kompletten Servers, auf dem phpBB läuft. Habe auch meinen Browser zurückgesetzt. Hab mal irgendwann was von reparse all posts gelesen, aber keine Ahnung, ob das hier notwendig ist. Eigtl. müsste es doch so klappen, dachte ich mir…
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Smileys in Beiträgen werden nicht dargestellt

Beitrag von HabNurNeFrage »

Hi,

keine Ahnung. Habe mir noch nicht angeschaut, wie Smilies in der Bank gespeichert werden und wie die Auslieferung erfolgt.

Das STK bietet zumindest diese Funktion an. (dauert ziemlich lange bei vielen Beiträgen)
Einen Versuch ist es wert oder halt die originalen Smiley-Codes wieder herstellen...

LG

PS: Es wird wohl an den (anscheinend nicht unwichtigen) HTML-Kommentaren liegen, die um die <img /> Tags erzeugt werden.
:D ergibt hier :D und so sieht die HTML-Ausgabe aus: <!-- s:D --><img src="..." /><!-- s:D -->

Vielleicht kannst Du die auch mit SQL anpassen. Nach dem s im Kommentar werden oft nicht alle Zeichen der Smiley-Codes verwendet.
In Tabelle _posts steht bei mir <!-- s8 --><img /><!-- s8 --> und der Smileycode ist 8-) :-?
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
regazer
Mitglied
Beiträge: 278
Registriert: 04.01.2014 16:08

Re: Smileys in Beiträgen werden nicht dargestellt

Beitrag von regazer »

Die ursprüngliche Festlegung der Smileynamen erfolgt bereits bei der Installation des Boards. Um bei meinen neuesten Tests völlig andere Smilies benutzen zu können, habe ich die Sektion "# -- Smilies" in der Datei "schema_data.sql" (Verzeichnis "install\schemas") bearbeitet und entsprechend in den Sprachdateien (install.php) alles, was mit "SMILIES_" beginnt.

Alleiniges Ändern des darzustellenden Textes kann keine Probleme verursachen. Die Fehlerquelle liegt im hier geschilderten Fall darin, den eigentlichen Identifier umbenannt zu haben. Es kann gar kein :daumenhoch: gefunden werden, wenn in älteren Beiträgen LOGISCHERWEISE noch :thumbup: steht (stehen muß, weil das ja beim Erstellen der Beiträge der gültige Identifier war) ...

Folglich liegt ein Denkfehler zugrunde.
Never run a touching system. Automatic updates can be dangerous. :o
To steal ideas from one person is plagiarism. To steal from many is research. :lol:
poenn
Mitglied
Beiträge: 37
Registriert: 27.01.2014 11:37

Re: Smileys in Beiträgen werden nicht dargestellt

Beitrag von poenn »

Hallo regazer,

das ist mir ja bewusst. Aber wieso werden die Smilies dann nicht wieder angezeigt, wenn ich den ursprünglichen Identifier :thumbup: wiederhergestellt habe? Das wundert mich am meisten, daß es eben kein Zurück mehr zu geben scheint.

Ich habe einen Snapshot meiner phpBB-VM gemacht, um besser testen zu können. Dabei ist mir soeben noch etwas aufgefallen:

Habe zum Test den o.g. SQL-Befehl durchgeführt. Er meldet 116 betroffene Datensätze von :thumbup: und beim 2. Durchlauf null, scheint also geklappt zu haben. Gehe ich dann aber zu einem Post, der ursprünglich :thumbup: enthielt, so zeigt ein Mouseover auch immer noch Thumbup neben dem Fragezeichen-Platzhalter. (Der Browser wurde vorher komplett zurückgesetzt, alle Caches und Cookies gelöscht) Gehe ich dann bei diesem Beitrag auf Bearbeiten, so steht im Text aber :daumenhoch: an dieser Stelle. Wenn ich dann, ohne etwas am Beitrag zu verändern, nochmal auf Absenden klicke, wird der Smiley richtig angezeigt. :-? Aber ich kann ja schlecht bei über 7000 Beiträgen auf Bearbeiten/Absenden klicken… :o

Hilft mir hier das STK? Ist dieses überhaupt schon 3.1.1-kompatibel?
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Smileys in Beiträgen werden nicht dargestellt

Beitrag von HabNurNeFrage »

Hi.

Nö, dazu müsstest Du Deine hoffentlich gesicherte 3.0.12er Bank hernehmen und danach updaten.

Die Title-Tag-Attribute der <img /> Tags hast Du durch Dein SQL nicht geändert. Daher kommt die "alte" Hover-Info.
Dafür müsstest Du eine ähnliche Query zusätzlich laufen lassen.
Schau mal ins PS meines vorigen Posts.
Wenn Du einen Beitrag mit allen Smilies schreibst und diesen in der Bank betrachtest, kannst Du für die Kommentar-Tags und title="..." auch SQL-Queries erstellen.
Teste das doch einfach mal mit einem Beitrag, in den Du "alte" und "neue" Smilies packst.
Sowie es dort funktioniert, lässt Du das SQL für alle Beiträge durchlaufen.

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
poenn
Mitglied
Beiträge: 37
Registriert: 27.01.2014 11:37

Re: Smileys in Beiträgen werden nicht dargestellt

Beitrag von poenn »

Danke euch beiden für die raschen Antworten. Ich war gerade dabei, noch neue Infos hier zu posten, aber HabNurNeFrage war schneller. :wink:

Nochmal ein Update:

Ich hab gerade festgestellt, daß es am Umbenennen der GIFs liegt. Hintergrund ist folgender: Ich habe ein paar alte Smileys aus phpBB 2.x-Zeiten. Damit diese in alten Posts nicht verlorengehen, habe ich deren GIFs in images/smilies behalten. Ich wollte aber auch die neueren haben. Da diese aber tlw. den gleichen Dateinamen haben, habe ich alle neueren Smileys umbenannt in name_new.gif

Im Zuge dessen hab ich mich an die Lokalisierung der Smiley-Codes im ACP gemacht. Hab jetzt gemerkt, daß es somit wohl gar nicht am Smiley-Code liegt, sondern daran, daß z.B. die Datei icon_thumbup.gif nicht mehr existiert hat, sondern nur noch icon_thumbup_new.gif

Wenn ich dafür sorge, daß icon_thumbup.gif wieder images/smilies liegt, wird der Beitrag mit korrektem Smiley angezeigt. Das Problem ist nun nur folgendes: Manche meiner alten Smilies tragen genau den Namen, den nun die neuen Smilies haben, z.B. gab es auch früher schon ein icon_cool.gif (Sonnenbrille).

Was sollte ich eurer Meinung hier nun am besten machen?
regazer
Mitglied
Beiträge: 278
Registriert: 04.01.2014 16:08

Re: Smileys in Beiträgen werden nicht dargestellt

Beitrag von regazer »

Schön, daß Du den Hauptfehler gefunden hast. Darauf wäre ich jetzt auch nicht gekommen.

Was Smileys mit identischen Namen betrifft, so hilft nur umbenennen.

Dabei gibt es aber ein paar üble Fallen, die ich aus eigener Erfahrung nicht unerwähnt lasse:
Unbedingt auf die Größen achten ! Vor allem animierte Smilies sind oft größer als die Standardvorgaben. Das kann sich rein optisch negativ auf den Text auswirken, wenn dann bei längeren Textblöcken die Zeilen unterschiedlich hoch sind. Vor allem darf man aber nicht vergessen, auch die Größenangaben im ACP zu ändern. Besonders tückisch ist es, wenn bei animierten Smileys Einzelbilder größer sind als das Startbild.

Damit meine ich: Wenn z.B. Irfanview eine bestimmte Größe für ein animiertes Smiley zeigt, ist es mitunter sinnvoll, die Sequenz entpacken zu lassen und anhand der Einzelbilder zu prüfen, welches tatsächlich das größte ist.

Nachtrag: Das STK funktioniert nur mit den "alten" phpBB-Versionen.
Never run a touching system. Automatic updates can be dangerous. :o
To steal ideas from one person is plagiarism. To steal from many is research. :lol:
poenn
Mitglied
Beiträge: 37
Registriert: 27.01.2014 11:37

Re: Smileys in Beiträgen werden nicht dargestellt

Beitrag von poenn »

Danke für die Tipps. Ich hab jetzt nochmal aufgeräumt und die GIF-Dateien einfach doppelt im entsprechenden Verzeichnis gelassen. Die von mir eingedeutschten, neuen Smileys haben allesamt einen anderen Dateinamen und andere Codes erhalten, so daß sie sich mit den englischen nicht in die Quere kommen. Damit beim Verfassen eines Beitrags nicht alle doppelt angezeigt werden, habe ich im ACP nur die neuen, deutschen Smileys eingestellt. Solange die englischen mit dem ursprünglichen Namen im Verzeichnis images/smilies liegen, werden auch sie in den Beiträgen angezeigt.

Also alles in Butter nun. :wink:
Antworten

Zurück zu „[3.0.x] Administration, Benutzung und Betrieb“