Author Topic: tmpl_include mit PHP  (Read 773 times)

0 Members and 1 Guest are viewing this topic.

Offline flo

  • Newbie
  • *
  • Posts: 2
tmpl_include mit PHP
« on: Sat, 26. December 2009 - 19:07:56 »
Hallo,
Ich habe eine Frage zum includen von anderen Dateien.
Folgendes einfaches Beispiel:
p1.html
Code: [Select]
<html><head></head><body>
<h1>Seite 1</h1>
<tmpl_include file='p2.html'>
<h2>Ende Seite1</h2>
</body></html>
p1.php
Code: [Select]
<?php
require_once "vlib/vlibTemplate.php";
$tmpl = new vlibTemplate('p1.html');
$tmpl->pparse(); 
?>

p2.html
Code: [Select]
<h1>{tmpl_var name="p2_var"}</h1>
p2.php
Code: [Select]
<?php
require_once "vlib/vlibTemplate.php";
$tmpl = new vlibTemplate('p2.html');
$tmpl->setvar('p2_var'date("d.m.y")); 
$tmpl->pparse(); 
?>

Rufe ich im Browser p2.php auf, wird das Datum richtig angezeigt. Rufe ich aber p1.php auf, wird nur {tmpl_var name="p2_var"} ausgegeben.
Meine Frage:
Wie kann ich ein Skript-Teil (p2.php und das zugehörige Template) in eine Seite (p1.php) einbinden?

Bzw. wie kann ich ein Teil der Anwendung (speziell gehts mir hier um einen Kalender) auslagern und an verschiedenen Stellen in der Seite anzeigen lassen?

Danke für eure Hilfe!

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 570
    • Homepage: clausvb.de
Re: tmpl_include mit PHP
« Reply #1 on: Sun, 27. December 2009 - 16:37:28 »

Offline flo

  • Newbie
  • *
  • Posts: 2
Re: tmpl_include mit PHP
« Reply #2 on: Tue, 29. December 2009 - 17:01:40 »
Mittlerweile sogar fast auswendig gelernt ;)

Problem ist aber, dass ich eine bestehende PHP-Seite habe, in die nur ein kleiner Skript-Teil eingefügt werden soll.
Deshalb wollte ich das Skript am liebsten im Template der Hauptseite einbinden, weil ich so nicht extra die bestehende Seite in "Einzelteile" zerlegen muss... Das Beispiel würde ja einen Aufbau ala
Code: [Select]
include("bestehende_oben.php")
include("neuercode1_plus_ausgabe.php");
include("bestehende_zwischen_den_beiden_neuen_ausgaben.php");
include("neuercode2_plus_ausgabe.php");
include("bestehendeunten.php");
voraussetzen. Und dazu müsste ich alle bestehenden Seiten ändern. Deshalb wollte ich das include("neue_anwendung_plus_ausgabe") in eine schon bestehende zu includierende datei einbinden...

Ok... jetzt sind alle komplett verwirrt, oder? ;)

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 570
    • Homepage: clausvb.de
Re: tmpl_include mit PHP
« Reply #3 on: Wed, 30. December 2009 - 00:07:34 »
Quote
Wie kann ich ein Skript-Teil (p2.php und das zugehörige Template) in eine Seite (p1.php) einbinden?

Wenn ich das Problem richtig verstanden habe, lautet die Antwort auf diese Frage: Ja.

ABER ich sehe in der "p1.php" kein INCLUDE von "p2.php" UND die Objekte lauten gleich. Schreib dein Beispiel bitte so um, dass die Objekte "$tmpl_p1" und "$tmpl_p2" heißen, wobei ich direkt darauf hinweisen will, dass solche Namen nach dem PHP Coding Standard murks sind.

Gruß
Claus