Mehrere *tpl datei mit einer *php datei öffnen?!?

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Werbung
Mitglied
Beiträge: 712
Registriert: 11.06.2004 12:38
Wohnort: Ausland

Mehrere *tpl datei mit einer *php datei öffnen?!?

Beitrag von Werbung »

Hallo,

ich bin noch anfänger was php angeht und hab nun eine kleine Frage dazu und zwar, möchte ich gerne mit einer *php datei. mehrere *tpl dateien öffenen.
Natürlich ist die Sprachdatei auch geändert worden!

So sieht mein Script zur zeit aus:

Code: Alles auswählen

<?php
define('IN_PHPBB', true);

$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

$userdata = session_pagestart($user_ip, PAGE_BLA);
init_userprefs($userdata);

include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->assign_vars(array(
	'L_BLA' => $lang['Bla'],
	)
 );

$template->set_filenames(array(
'body' => 'bla_body.tpl')
);

$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);

// next site "Kuck Kuck"
$template->assign_vars(array(
	'L_KUCK_KUCK' => $lang['Kuck_Kuck]
	)
 );	

$template->set_filenames(array(
'next' => 'kuck_kuck.tpl')
);

$template->pparse('next');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>
Nun, die erste Datei "Bla" funtkioniet ohne Probleme. Aber leider hab ich keinen zugriff auf meine zweite Seite "Kuck Kuck".
Wie muss ich denn den Link auf meine "Kuck Kuck" Seite verweißen?

Wie muss mein {U_KUCK_KUCK} ausschauen?!? Oder hab ich noch etwas vergessen, damit das funktioniert??
Oder sollte ich lieber für jeden *tpl datei eine eigene *php datei nutzen?

Danke für die Hilfe schon mal.

MfG Werbung
Der Meister sprach: "Lernen ist eine Tätigkeit, bei der man das Ziel nie erreicht und zugleich immer fürchten muss, das schon Erreichte wieder zu verlieren."
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

Den Page Header brauchst du nur einmal oben und den Page Footer nur einmal unten. :wink:
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Werbung
Mitglied
Beiträge: 712
Registriert: 11.06.2004 12:38
Wohnort: Ausland

Beitrag von Werbung »

Hi,...

ich hab mich wohl oben etwas blöd ausgedrückt....
Die einzelnen *tpl dateien sollen in unterschiedliche seiten aufgehen und nicht im der selben Seite.
Den Page Header brauchst du nur einmal oben und den Page Footer nur einmal unten.
Danke für die Info, aber den Page Header hab ich doch nur einmal und den Page Footer brauch ich zweimal, weil er ja sonst die beiden *tpl dateien auf einer Seite ausgibt, was ich ja nicht will.

MfG Werbung
Der Meister sprach: "Lernen ist eine Tätigkeit, bei der man das Ziel nie erreicht und zugleich immer fürchten muss, das schon Erreichte wieder zu verlieren."
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

Wie zwei Seiten? Es sollen zwei Seiten gleichzeitig geöffnet werden? Das ist mit PHP nicht und mit HTML in Verbindung mit JavaScript auch nur begrenzt möglich.
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

oder meinst du es do wie bei der posting.php, die ja fürs posten und für die pn´s da ist ??

kolja
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Werbung
Mitglied
Beiträge: 712
Registriert: 11.06.2004 12:38
Wohnort: Ausland

Beitrag von Werbung »

Das ist mit PHP nicht und mit HTML in Verbindung mit JavaScript auch nur begrenzt möglich.
Um dies zu realisieren könnte ich popup oder einen frame nutzen... möglich wäre es. Aber das ist grad nicht mein Problem... :wink:


Ne, es soll schon NUR eine seite geöffnet werden.
Also,...
ich möchte, mit dem script, eine Seite öffnen,.. einmal die "Bla" Seite und dann von der Seite aus die "Kuck Kuck" Seite. Oder umgekehrt.
oder meinst du es do wie bei der posting.php, die ja fürs posten und für die pn´s da ist ??
Ja, im prinzip mein ich das... 8)
Es soll also möglich sein, mit einer php datei... verlinkunen bzw. eine andere *tpl datei zu öffnen.

Ich will mir so zusagen, ein *php datei sparen.

MfG Werbung
Der Meister sprach: "Lernen ist eine Tätigkeit, bei der man das Ziel nie erreicht und zugleich immer fürchten muss, das schon Erreichte wieder zu verlieren."
Benutzeravatar
kolja
Mitglied
Beiträge: 1546
Registriert: 13.05.2005 16:39
Wohnort: münster

Beitrag von kolja »

das musst du mit POST arbeiten

schau dir mal die posting.php (url) in beiden fällen an
einmal wird per POST der mode reply und einmal der mode post übergeben

und damit hast du deine 2in1 php datei :-)

kolja
Das Leben ist unberechenbar - deshalb ist Improvisation wichtiger als Planung!

Es ist besser zu geben, als zu leihen, und kostet ungefähr gleichviel.

.: Münsters Reggae Forum :.
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Code: Alles auswählen

include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
    'eins' => 'eins.tpl',
    'zwei' => 'zwei.tpl'
));

$template->assign_vars(array(
    'L_BLA' => $lang['Bla'],
    'BLUB' => 'möp'
));

if($eins) {
    $template->pparse('eins');
}
else {
    $template->pparse('zwei');
}

include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
KB:knigge
Werbung
Mitglied
Beiträge: 712
Registriert: 11.06.2004 12:38
Wohnort: Ausland

Beitrag von Werbung »

Danke Pyramide für dein Code...
das Leuchtet mir alles ein... nur versteh ich nicht, warum es bei mir von anfang an auf die Seite "zwei" springt... hab es jetzt mal vertauscht...

Code: Alles auswählen

if($eins) {
    $template->pparse('zwei');
}
else {
    $template->pparse('eins');
} 
Nun wird auch die richtige Seite "eins" als erstes angezeigt.

Hab noch mit dem Link probleme um "zwei.tpl" aufzurufen. Wie gesagt hab ich es mit dem Post versucht aber hm,.... so weit bin ich gekommen....
ist aber noch nicht wirklich vollständig.

Code: Alles auswählen

'U_ZWEI => append_sid("bla.$phpEx?" . POST_FORUM_URL . "=$zwei")
*grübel* :-?

MfG Werbung
Der Meister sprach: "Lernen ist eine Tätigkeit, bei der man das Ziel nie erreicht und zugleich immer fürchten muss, das schon Erreichte wieder zu verlieren."
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

$eins ist noch nicht definiert. Du könntest das z.B. so lösen:

Code: Alles auswählen

$page = (isset($HTTP_GET_VARS['page'])) ? $HTTP_GET_VARS['page'] : '';

if ($page == 'eins')
{
  $template->pparse('eins');
}
else if ($page == 'zwei')
{
  $template->pparse('zwei');
}
Aufrufen würdest du das Ganze dann so:

Code: Alles auswählen

datei.php?page=eins
datei.php?page=zwei
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Antworten

Zurück zu „Coding & Technik“