Seite 1 von 1

BBcode in mod

Verfasst: 02.04.2008 19:06
von Roux
ich möchte auf der Seite einen Hinweis ausgeben, den er aus der Datenbank ausliest. Dieser beinhaltet BBCode (den normalen wie b, u, ...), wie kann ich diesen am einfachsten ersetzen (die Funktionen gibt es ja schon)?

Verfasst: 02.04.2008 22:30
von Boecki91
Was genau möchtest du?

Einen Text mit BBCode?
Dann bist du da richtig:
http://olympuswiki.naderman.de/Parsing_text

Nicht auf BBCode basierende Technikeln wären HTML-Codes in den Hinweisen achte aber auf die korrekte "Entschärfung"

Verfasst: 03.04.2008 19:12
von Roux
Danke, genau das wollte ich.
Ja, HTML wäre auch möglich (da eh nur Admins da was reinschreiben können), aber mit BBCode ist es eleganter. :)

Verfasst: 04.04.2008 16:05
von Roux
Na super, funktioniert nichts. Wollte es gerade mal einbauen. Er verändert die Eingabe weder, noch wandelt er eine bestehende um. :cry:
Kann mir jemand helfen? (erklären, Codebeispiel, ..)

Verfasst: 04.04.2008 16:48
von Helmut
Hallo Roux,

das ist nicht so schwer, hier habe ich dir ein kleines Beispiel, wie der Text aus einem bestimmten Topic mit BBCode ausgelesen wird.

Code: Alles auswählen

	$limit_news = 3;
	$topic_id = 21;

	$sql = 'SELECT *
		FROM ' . POSTS_TABLE . "
		WHERE topic_id = $topic_id
		ORDER BY post_id DESC
		LIMIT " . $limit_news;
	$result = $db->sql_query($sql);
	while ($row = $db->sql_fetchrow($result))
	{
		$row['bbcode_options'] = (($row['enable_bbcode']) ? OPTION_FLAG_BBCODE : 0) + (($row['enable_smilies']) ? OPTION_FLAG_SMILIES : 0) + (($row['enable_magic_url']) ? OPTION_FLAG_LINKS : 0);	
		$row['post_text'] = generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $row['bbcode_options']);		


		$template->assign_block_vars('news', array(
				'POST_TITLE'		=> censor_text($row['post_subject']),
				'POST_TEXT'		=> censor_text($row['post_text']),
		));
	}
	$db->sql_freeresult($result);

Du musst dan noch das hier in deine php mit einbinden

Code: Alles auswählen

include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
Gruß Helmut :wink:

Verfasst: 04.04.2008 16:55
von Roux
Super, hab es hinbekommen, war nen kleiner Fehler drin.

Sag mal, kannste mir bei mein neuen Prob helfen?^^
Ich hab ne eigene Datei erstellt und immer wenn ich die aufruf, loggt er mich aus. Hab eigentlich alles drin in der Datei, was drin sein muss.

Verfasst: 04.04.2008 16:59
von Helmut
Hallo Roux,

na dann zeig doch mal her, vielleicht ist es ja nur ein Tippfehler ... :D

Gruß Helmut :wink:

Verfasst: 04.04.2008 17:07
von Roux
Fehler gefunden, es liegt an der Verlinkung: hab im template einfach dateiname reingeschrieben. Wie mache ich, dass er an dem Link automatisch die session id anhängt?

Verfasst: 04.04.2008 17:27
von Helmut
Hallo

du kannst es zum Beispiel so machen

Code: Alles auswählen

'JUMP_TO_ARCHIV'	=> append_sid("{$phpbb_root_path}archiv.$phpEx", "sid=$user->session_id"),
Gruß Helmut