Seite 2 von 2

Verfasst: 21.08.2004 21:00
von Furion
DSB hat geschrieben:Ich denke, dass UID eher für unified IDentifier steht, aber egal.
Dann lass mal sehen, was bei Dir in Zeile 46 steht.
Bei mir ist das eine Kommentarzeile (habe aber auch Minerva :-) )
Danke, ... also diese funktion isses erstmal:

Code: Alles auswählen

function load_bbcode_template()
{
	global $template;
	$tpl_filename = $template->make_filename('bbcode.tpl')
	$tpl = fread(fopen($tpl_filename, 'r'), filesize($tpl_filename));

	// replace \ with \\ and then ' with \'.
	$tpl = str_replace('\\', '\\\\', $tpl);
	$tpl  = str_replace('\'', '\\\'', $tpl);

	// strip newlines.
	$tpl  = str_replace("\n", '', $tpl);

	// Turn template blocks into PHP assignment statements for the values of $bbcode_tpls..
	$tpl = preg_replace('#<!-- BEGIN (.*?) -->(.*?)<!-- END (.*?) -->#', "\n" . '$bbcode_tpls[\'\\1\'] = \'\\2\';', $tpl);

	$bbcode_tpls = array();

	eval($tpl);

	return $bbcode_tpls;
}
Zeile 46 ist: $tpl_filename = $template->make_filename('bbcode.tpl')

Verfasst: 21.08.2004 21:07
von DSB
Das bedeutet, dass die Funktion "make_filename" speziell für Objekte einer bestimmten Klasse ("template") bestimmt ist und die Variable "$tpl_filename" wahrscheinlich nicht als Objekt dieser Klasse instanziert ist.

Verfasst: 21.08.2004 21:11
von Furion
DSB hat geschrieben:Das bedeutet, dass die Funktion "make_filename" speziell für Objekte einer bestimmten Klasse ("template") bestimmt ist und die Variable "$tpl_filename" wahrscheinlich nicht als Objekt dieser Klasse instanziert ist.
Aso, muss mal guggen wo die inizialisiert wird, thx. :)

Verfasst: 21.08.2004 21:22
von DSB
Na dann scheine ich mich ja geirrt zu haben und Du kommst doch schon besser mit PHP zurecht, als ich gedacht habe und nehme zurück, was ich weiter oben gesagt habe. :oops:
Nichts für ungut aber ich dachte, dass endet hier jetzt in einem endlosen Frage- und Antwortspiel. :)

Verfasst: 21.08.2004 21:26
von Furion
DSB hat geschrieben:Na dann scheine ich mich ja geirrt zu haben und Du kommst doch schon besser mit PHP zurecht, als ich gedacht habe und nehme zurück, was ich weiter oben gesagt habe. :oops:
Nichts für ungut aber ich dachte, dass endet hier jetzt in einem endlosen Frage- und Antwortspiel. :)
nP - deswegen schrieb ich ja weiter oben das mit dem "hoffe ich nerve nicht :blush:" - Ich kam mir schon selber bekloppt vor. *g

Verfasst: 21.08.2004 21:32
von DSB
Und ich muss mir nochmal an die eigene Nase packen:
UID steht nicht für "Unified IDentifier", sondern für "Unique IDentifier" = eindeutiger Identifizierer .

Jaja, es gibt so Tage, da macht man alles falsch. :D
Ich hoffe auf morgen. :-)

Dir wünsche ich jedenfalls viel Glück bei Deiner Änderung. *daumendrück*

Verfasst: 21.08.2004 21:39
von Furion
DSB hat geschrieben:Und ich muss mir nochmal an die eigene Nase packen:
UID steht nicht für "Unified IDentifier", sondern für "Unique IDentifier" = eindeutiger Identifizierer .

Jaja, es gibt so Tage, da macht man alles falsch. :D
Ich hoffe auf morgen. :-)

Dir wünsche ich jedenfalls viel Glück bei Deiner Änderung. *daumendrück*
Jup danke ;) - bastle derzit an nem kleinen News-hack der übers Forum läuft. Is ne gute Übung ^_^.

Verfasst: 23.08.2004 21:51
von Furion
Hoi,

es hilft nix ich muss nochmal nachhacken. ;)

$tpl_filename = $template->make_filename('bbcode.tpl');


Kann es sein das ich $template irgendwie werte zuweisen muss? Ich mein es ist ja ein Array was z.b. in der viewtopic.php mit werten gefüttert wird ... was ich allerdings dann nicht nachvollziehen kann - wenn dem so ist wie ich vermute - warum brauch ich das wenn ich bbcode verarbeitet haben möchte (in $template hab ich bis jetzt immer nur platzhalter mit ihren zugewiesenen Werten gesehen - aber ein zusammenhang mit bbcode is mir nicht aufgefallen) - der ist doch in prepare_bbcode_template() hinterlegt, und wird aber erst nach dem erstellen von der bbcode.tpl eingelesen. Den text übergeb ich ihm ja mit der bbcode_uid - ich verstehs echt nicht. ~ warum erzeugt er eigentlich diese 'blöde' tpl-datei? ~

Kennt vielleicht jemand einen Link wo das erklärt wird - ich mach mich langsam verrückt und beweg mich nur vor und zurück. :( Das ganze "konfusioniert" mich nur mehr und mehr je weiter ich drüber nachdenke geschweige nach nem Anhaltspunkt in den zahlreichen Segmenten suche. ;(

Gruß
Furion

Danksagung ... :roll:

Verfasst: 26.08.2004 22:18
von Furion
So, ich habs gefunden in dem File-Salat.

Hätt man mir ja auch gleich sagen könne, wo das steht. :roll: Ich hab mich totgesucht nach dieser dämlichen Klasse. ^_^;

Für alle anderen die vielleicht das auch mal brauchen werden:

Ihr müst ein neues template-Object erstellen, das geht so:

Code: Alles auswählen

$template = new template(PfadzumTemplateverzeichnis);
Im Templateverzeichnis muss sich eine bbcode.tlp befinden.

Im ganzen schaut das dann etwa so aus:

Code: Alles auswählen

<?php
//Benötigte Dateien und Variablen von phpBB
define('IN_PHPBB', true);
$phpbb_root_path = "PfadzumForum"; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 
include($phpbb_root_path . 'includes/bbcode.'.$phpEx);

$template = new template(PfadzumTemplateverzeichnis);
// parse bbcode
$text = bbencode_second_pass($text, $bbcode_uid);        
Die bbcode_uid kriegt ihr aus dem phpbb_posts_text-Table (Standard).

So denn bis zur nächsten Frage. ;)