Meine Smilies werden nicht mehr umgesetzt

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Antworten
Benutzeravatar
karstenkurt
Beiträge: 597
Registriert: Do 31.Mär, 2005 20:20
Kontaktdaten:

Meine Smilies werden nicht mehr umgesetzt

Beitrag von karstenkurt »

Deine phpBB Version: Vanilla phpBB 2.0.18
MODs: Nein
Dein Wissensstand: Grundwissen
Link zu Deinem Forum: [url]http://[/url]

PHP Version:
MySQL Version:


Was hast Du gemacht, bevor das Problem aufgetreten ist?
Eigentlich nur die Snippets:
Icon vor "Quote=Username" einsetzen
eingebaut.



Was hast Du bereits versucht um das Problem zu lösen?




Fehlerbeschreibung und Nachricht

Hallo,

meine Smilies werden nicht mehr umgesetzt. Im Text steht auf einmal ":o" anstelle des Icons. Hoffe es liegt nicht am Hde Mod?
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Gute Frage. Das hatte ich noch garnicht getestet, bzw. kann ich mir nicht so recht vorstellen.
Ging es denn ohne das Icon?
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
karstenkurt
Beiträge: 597
Registriert: Do 31.Mär, 2005 20:20
Kontaktdaten:

Beitrag von karstenkurt »

Gerade ist mir aufgefallen, wenn ich im News-Forum (welches auf dem EZ-Portal angezigt wird) posten, werden die SMilies auf dem Portal angezeigt. Dann kanns doch eigentlich nur an der viewtopic.php liegen, oder?

In diese If-Abfrage wird nicht verzweigt:

Code: Alles auswählen

if ( $postrow[$i]['enable_smilies'])
{
  $message = smilies_pass($message);
}
Erweitere cih die zu:

Code: Alles auswählen

if ( $postrow[$i]['enable_smilies'])
{
	echo 'ja';
	$message = smilies_pass($message);
}
else
{
	echo 'nein';
	echo $postrow[$i]['enable_smilies'];
}
Wird "nein" ausgegeben. $postrow[$i]['enable_smilies'] wird nicht ausgegebn, obwohl die SQL-Anweisung p.* aus der Posts-Tabelle holt, dort enable_smilies auf 1 steht und in der Config-Tabelle allow_smilies auch auf 1 steht? Da blick ich nicht dran lang.
Zuletzt geändert von karstenkurt am Sa 05.Nov, 2005 10:51, insgesamt 1-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Das Feld "enable_smilies" muss auch abgefragt werden!
Wenn das nicht der Fall ist, wird dieses immer FALSE sein, also nicht zutreffen.
Prüfe daher mal, ob zu der SQL-Abfrage für $postrow dieses Feld überhaupt mit abgefragt wird.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Hir werden seit neustem die Smilies inerhalb von Code-Blöcken umgesetzt! :eek:
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Liegt am Update... Ist inkompatibel zu mehr MODs, als einem Lieb ist.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

*grumpf*
Na Prima. Dann muss ich mir ja nochmehr Zeit für das Update nehmen als ich Gedacht habe. :(
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
karstenkurt
Beiträge: 597
Registriert: Do 31.Mär, 2005 20:20
Kontaktdaten:

Beitrag von karstenkurt »

Die Information zu enable_smilies geht mir irgendwo zwischen diesen Codezeilen verloren.

Code: Alles auswählen

if ($user_sig != '' && $user_sig_bbcode_uid != '')
{
    // Start add - Signatures control MOD
    if ( $userdata['user_allowsignature'] != 2 && $board_config['sig_allow_font_sizes'] == 0 )
    {
    $user_sig = '[size=' . $board_config['sig_max_font_size'] . ':' . $user_sig_bbcode_uid . ']' . $user_sig . '[/size:' . $user_sig_bbcode_uid . ']';
    }
    // End add - Signatures control MOD

			$user_sig = ( $board_config['allow_bbcode'] ) ? bbencode_second_pass($user_sig, $user_sig_bbcode_uid) : preg_replace('/\:[0-9a-z\:]+\]/si', ']', $user_sig);						
			$user_sig = bbencode_third_pass($user_sig, $user_sig_bbcode_uid, $valid);
		  $user_sig = bbencode_third_pass_user($user_sig, $user_sig_bbcode_uid, $valid_user);
		}
		if ( $bbcode_uid != '' )
		{
			$message = ( $board_config['allow_bbcode'] ) ? bbencode_second_pass($message, $bbcode_uid) : preg_replace('/\:[0-9a-z\:]+\]/si', ']', $message);
			$message = bbencode_third_pass($message, $bbcode_uid, $valid);
		  $message = bbencode_third_pass_user($message, $bbcode_uid, $valid_user);
		}		
	}
Wenn ich mir den Status in einer Variablen vor diesem Code merke, erscheinen die Smilies, Setze ich die Variable hinter dem Code, passiert nichts. Füge ichj im selben Terxt ein BBCode ein, werden die Smilies auch angezeigt. Kann es sein, das da ein ELSE fehlt? Für den Fall, das kein BBCode gesetzt ist=
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Nochmal:
[quote="oxpus - Sa 05.Nov, 2005 12:25";p="47556"]Das Feld "enable_smilies" muss auch abgefragt werden!
Wenn das nicht der Fall ist, wird dieses immer FALSE sein, also nicht zutreffen.
Prüfe daher mal, ob zu der SQL-Abfrage für $postrow dieses Feld überhaupt mit abgefragt wird.[/quote]
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
karstenkurt
Beiträge: 597
Registriert: Do 31.Mär, 2005 20:20
Kontaktdaten:

Beitrag von karstenkurt »

[quote="karstenkurt - Sa 05.Nov, 2005 10:25";p="47547"]$postrow[$i]['enable_smilies'] wird nicht ausgegebn, obwohl die SQL-Anweisung p.* aus der Posts-Tabelle holt[/quote]

Natürlich, es wird aus der Datenbank geholt und ist bis vor dem oben geposteten Codeblock auch richtig gesetzt.

Nur nach dem Code-Block ist $postrow[$i]['enable_smilies'] leer.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Dieser Wert wird hier aber überhaupt nicht geändert.
Auch in der bbcode.php nicht.
Du kannst aber auch die Smilies-Aufbereitung vor diesen Block verschieben.
Also die Verarbeitung $message = smilie_pass($message);
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Benutzeravatar
karstenkurt
Beiträge: 597
Registriert: Do 31.Mär, 2005 20:20
Kontaktdaten:

Beitrag von karstenkurt »

Habs so gelöst:

Code: Alles auswählen

$smile_enabled=$postrow[$i]['enable_smilies']; 
	//
	// Parse message and/or sig for BBCode if reqd
	//
	
	if ($user_sig != '' && $user_sig_bbcode_uid != '')
	{
.....
und dann

Code: Alles auswählen

$access_level = smilies_access();
    if ( $postrow[$i]['user_allowsmile'] && $user_sig != '' && $board_config['sig_allow_smilies'] != 0 )
		{
			$user_sig = smilies_pass($user_sig);
		}

		if ($smile_enabled)
		{		
Antworten