Seite 2 von 2

Re: [3.2] Probleme mit der Darstellung

Verfasst: 09.12.2020 14:00
von Klaus 1412
Dumm nur, wenn das Upgrade nicht funktioniert. Drei Versuche und dreimal nicht erfolgreich. :-?

Um den vollständigen Editor auch unter PHP 7.4 anzuzeigen, gibt es eine ganz einfache Möglichkeit. Damit wird zwar die fehlerhafte Funktion nicht korrigiert, die Auswirkung auf das textarea-Feld aber umgangen.

Im eigenen style die Datei posting_editor.html öffnen.
Ab der Zeile 72 folgenden Code ändern:

Code: Alles auswählen

	<div id="message-box">
		<textarea <!-- IF S_UCP_ACTION and not S_PRIVMSGS and not S_EDIT_DRAFT --> name="signature" id="signature" style="height: 9em;" <!-- ELSE --> &nbsp; name="message" id="message" <!-- ENDIF --> rows="15" cols="76" tabindex="4" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" onfocus="initInsertions();" class="inputbox">{MESSAGE}{DRAFT_MESSAGE}{SIGNATURE}</textarea>
	</div>
Das Problem ist die Inline-Ersetzung von <!-- ELSE -->

Die aufrufende Funktion erstellt im Fehlerfall daraus den folgenden Code: <textareaname="message" id="message" , der vom Browser nicht erkannt wird.
Richtig wäre: <textarea name="message" id="message"

D.h. durch das zusätzliche Einfügen von Leerzeichen vor und nach <!-- ELSE --> und ggf. noch ein zusätzliches &nbsp; (also ein codiertes Leerzeichen) wird der notwendige Abstand zwischen tag und tagname wieder hergestellt.

Nach der Änderung die Datei abspeichern, hochladen und den Cache löschen. Danach ist der vollständige Editor wieder vorhanden, auch mit der Version 3.2.5 und PHP 7.4.

Dieser Fehler wird mit Sicherheit noch andere Stellen betreffen, jedoch konnte ich noch keine weitere Auswirkung finden.

Re: [3.2] Probleme mit der Darstellung

Verfasst: 09.12.2020 16:45
von Klaus 1412
Klaus 1412 hat geschrieben: 09.12.2020 14:00 ...
Dieser Fehler wird mit Sicherheit noch andere Stellen betreffen, jedoch konnte ich noch keine weitere Auswirkung finden.
Bei der Darstellung verschiedener Hintergründe bg1 und bg2 und z.B. bei Text "Beitrag von Username" fehlt zwischen von und Username ein Leerzeichen. Betroffen hiervon sind viele weitere Dateien im Template.

Lösung, nach folgendem Inhalt suchen:
-->bg1<!-- ELSE -->bg2<!-- ENDIF -->
und dort jeweils ein Leerzeichen vor das bg setzen.
--> bg1<!-- ELSE --> bg2<!-- ENDIF -->

in der Datei functions_content.php, z.B. in diesen Zeilen jeweils ein Leerzeichen vor <span und <a href einfügen.

Code: Alles auswählen

		$_profile_cache['tpl_noprofile'] = ' <span class="username">{USERNAME}</span>';
		$_profile_cache['tpl_noprofile_colour'] = ' <span style="color: {USERNAME_COLOUR};" class="username-coloured">...';
		$_profile_cache['tpl_profile'] = ' <a href="{PROFILE_URL}" class="username">{USERNAME}</a>';
		$_profile_cache['tpl_profile_colour'] = ' <a href="{PROFILE_URL}" style="color: {USERNAME_COLOUR};" ...';
D.h. es gibt noch viele Stellen, die angepasst werden sollten, wenn eine ältere Version mit PHP 7.4 verwendet werden soll.

Re: [3.2] Probleme mit der Darstellung

Verfasst: 09.12.2020 16:50
von chris1278
Wie schon ein Vorredner geschrieben hat das liegt daran dass die phpbb Version 3.2.x nicht kompatibel mit PHP 7.3 bzw 7.4 sind

Re: [3.2] Probleme mit der Darstellung

Verfasst: 11.12.2020 18:14
von Klaus 1412
Schon klar. :-?

Genau aus diesem Grund habe ich diese Lösungsansätze hier eingestellt. :wink:

Denn nicht jeder kann oder will ein Upgrade durchführen. Vor allem, wenn das Upgrade selbst nach mehreren Versuchen scheitert.

Und wie schon geschrieben, damit funktioniert auch die 3.2.5 unter PHP 7.4

Re: [3.2] Probleme mit der Darstellung

Verfasst: 12.12.2020 10:34
von Dr.Death
Der Lösungsansatz ist aber "gefährlich"..... weil auch andere interne phpBB 3.2.x Funktionen nicht unter PHP 7.4.x funktionieren werden.