php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.02.2006, 01:57  
Erfahrener Benutzer
 
Registriert seit: 04.12.2005
Beiträge: 286
PHP-Kenntnisse:
Fortgeschritten
snatch-ic
Standard Smarty verschachtelt

Weil mir im offiziellen Smarty Forum wohl niemand helfen will, poste ich mein Problem hier einfach noch mal:

hallo, momentan bin ich dabei eine website zu programmieren die mit smarty arbeitet. die website ansich läuft ohne probleme mit den bisher erstellten templates. nun habe ich aber vor eine galleryscript zu schreiben das auch auf smarty templates basieren soll und wenn es fertig ist soll es in die website mit eingebunden werden. ist das überhaupt möglich?
ich meine jetzt das dann später ein template im template angezeigt wird. ich frage mich schon die ganze zeit ob das überhaut geht das die scripte dann noch fehlerfrei arbeiten.
wie macht ihr das wenn ihr modulorientiert mit smarty programmiert? momentan ist das noch ein rätsel für mich...
ein anderes stichwort in diesem bereich ist glaub ich auch "verschachtelte templates". ich hoffe man kann verstehen was ich vor habe.

mfg snatch
snatch-ic ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.02.2006, 09:56  
Erfahrener Benutzer
 
Registriert seit: 12.07.2004
Beiträge: 219
d-jango zeigte ein beschämendes Verhalten in der Vergangenheit
d-jango eine Nachricht über ICQ schicken
Standard

Hi..

also das was du vorhast praktiziere ich schon. Also es ist auf jeden Fall möglich Smarty-Templates zu schachteln.

Dafür gibt es auch eine ganz einfache Anweisung:

Code:
{include file=pfad/aus/template_dir/template/teil.tpl}
Somit kannst du dir dann die Templates zusammenbauen.
__________________
http://www.fun2stay.de
d-jango ist offline  
Alt 27.02.2006, 14:05  
Erfahrener Benutzer
 
Registriert seit: 04.12.2005
Beiträge: 286
PHP-Kenntnisse:
Fortgeschritten
snatch-ic
Standard

ok, wir haben 2 templates. t1 und t2. t2 soll in t1 eigebunden werden. wenn das erfolgreich passiert ist wird t2 in t1 angezeigt. aber was ist wenn ich in t2 dann auf einen link klicke? dann wird dieser link geladen und dargestellt. aber nicht an der stelle an der t2 in t1 dargestellt wurde sondern im ganzen browser. wie kann ich das verhinden?

wenn z.b. das t1 template die navigation war und t2 (das eingebundenen) der content. wie machst du das dann das die navigation am ende immer noch angezeigt wird?

wie ist das eigentlich mit dem befehl:
Code:
{include file=pfad/aus/template_dir/template/teil.tpl}
der bindet doch nur das template ein. woher weis smarty dann welche php zu diesem template gehört?
snatch-ic ist offline  
Alt 27.02.2006, 14:21  
Erfahrener Benutzer
 
Registriert seit: 08.05.2005
Beiträge: 814
andy
andy eine Nachricht über ICQ schicken
Standard

Würdest du die Frage mal bitte verständlicher formulieren?
__________________
Zitat:
Diese Erweiterung ist EXPERIMENTELL.
[...]
Seien Sie gewarnt und verwenden Sie diese Erweiterung auf eigenes Risiko..
andy ist offline  
Alt 27.02.2006, 15:06  
Erfahrener Benutzer
 
Registriert seit: 04.12.2005
Beiträge: 286
PHP-Kenntnisse:
Fortgeschritten
snatch-ic
Standard

Zitat:
Zitat von andy
Würdest du die Frage mal bitte verständlicher formulieren?
hab die frage editiert. ich hoffe es ist jetzt verständlich...
snatch-ic ist offline  
Alt 27.02.2006, 15:12  
Erfahrener Benutzer
 
Registriert seit: 08.05.2005
Beiträge: 814
andy
andy eine Nachricht über ICQ schicken
Standard

Ha viel besser,
also die Smarty-Include-Funktion akzeptiert auch Variablen, d.h. wenn du in deiner PHP-Datei t1 den PHP-Code für t2 einbindest kannst du dort dynamisch die Datei setzen welche t1 includen soll.
__________________
Zitat:
Diese Erweiterung ist EXPERIMENTELL.
[...]
Seien Sie gewarnt und verwenden Sie diese Erweiterung auf eigenes Risiko..
andy ist offline  
Alt 27.02.2006, 16:44  
Erfahrener Benutzer
 
Registriert seit: 04.12.2005
Beiträge: 286
PHP-Kenntnisse:
Fortgeschritten
snatch-ic
Standard

und wie is das wenn ich die templates include. das template weis doch nicht zu welcher php datei es gehört. dann kann ich ja nur die template datei öffnen und kann mit aber keine daten weiter verarbeiten, oder liege ich da falsch?
snatch-ic ist offline  
Alt 27.02.2006, 16:59  
Erfahrener Benutzer
 
Registriert seit: 08.05.2005
Beiträge: 814
andy
andy eine Nachricht über ICQ schicken
Standard

Also wenn ich dich jetzt richtig verstanden habe, hast du eine PHP-Datei die das Template t1 läd, nun möchstest du dortrein den Content laden?

Also du musst nur die PHP-Datei für den Content einbinden, in der setzt du dann die Variablen für T2 und setzt die Variable, die den Pfad zum Template t2 enthalten soll.
__________________
Zitat:
Diese Erweiterung ist EXPERIMENTELL.
[...]
Seien Sie gewarnt und verwenden Sie diese Erweiterung auf eigenes Risiko..
andy ist offline  
Alt 27.02.2006, 17:49  
Erfahrener Benutzer
 
Registriert seit: 04.12.2005
Beiträge: 286
PHP-Kenntnisse:
Fortgeschritten
snatch-ic
Standard

genau, dass hast du richtig verstanden. genau genommen wird mit t1 die navigation oder besser gesagt das grundgerüst der seite geladen. ich poste hier einfach mal das t1:

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
		<meta name="language" content="de">
		<title></title>
		<link rel="stylesheet" type="text/css" href="style.css">
	</head>
	<body>
		<div id="navi_all">
			<dl id="navi">
			<dt>
				<table class="navi_table">
				{foreach from=$navigation item=navigation}
					<tr class="navi_table_tr">
						<td class="navi">{$navigation.name}</td>
					</tr>
				{/foreach}
				</table>
				</dt>
			</dl>
			<div id="content_all">
				<dl id="content">
					<dt id="content_dt">
						{$content_head}
						<dd id="content_dl_middle">
						{$content}
						</dd>
					</dt>
				</dl>
			</div>
		</div>
	</body>
</html>
an der stelle wo die variable {$content } steht soll dann t2 geladen werden.
oder würdest du das alles komplett anders machen?

ich will es halt am ende ganz einfach so haben das die z.b. die navigation (t1) auf jeder seite sichtbar und nutzbar ist, auch wenn die navigation nicht von hand in jedes einzelne script rein geschrieben wurde.
snatch-ic ist offline  
Alt 27.02.2006, 18:05  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

du kannst die ausgabe von smarty auch in einer variable speichern, d.h.
PHP-Code:
<?php
$content 
$Smarty->fetch("datei.tpl");
//statt
$Smarty->display("datei.tpl");
?>
Und die Ausgabe dann als Variable einer anderen .tpl datei verwenden
PHP-Code:
<?php
$content 
$Smarty->fetch("datei1.tpl");
$Smarty->clear_all_assign();
$Smarty->assign("inhalt",$content);
$Smarty->display("datei2.tpl");
?>
Buhmann ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Smarty + MySQL = immer falsche Ausgabe m0use` PHP Tipps 2006 44 21.11.2008 20:30
Smarty: Templatedateien werden nicht aktualisiert! DER_Brain PHP Tipps 2008 9 24.04.2008 22:40
Was ist Aufgabe des Templates (Smarty), was nicht? agrajag PHP Tipps 2007 8 24.02.2007 13:19
Smarty => 1ste allgemeine Verunsicherung Canni PHP Tipps 2006 7 10.10.2006 17:56
Smarty + Oop Problem Komandar PHP Tipps 2006 5 25.07.2006 14:36
problem mit javascript und smarty snatch-ic HTML, Usability und Barrierefreiheit 2 08.06.2006 22:11
Smarty + Oop Komandar PHP Tipps 2006 17 30.05.2006 10:30
[Erledigt] Navigation auf Smarty umstellen?! PHP-Fortgeschrittene 3 10.01.2006 09:19
Smarty installiert und nun? Cyrus PHP Tipps 2005-2 5 28.10.2005 16:14
Frage zu Smarty PHP Tipps 2005-2 10 07.07.2005 14:49
Smarty Error Simon9990 PHP Tipps 2005-2 8 07.07.2005 09:34
Smarty und X-Cart Profis gesucht Beitragsarchiv 1 21.05.2005 13:38
[Erledigt] includepathproblem pear blockiert smarty und umgekehrt PHP Tipps 2005 1 08.05.2005 18:46
Smarty? Die wesentlichen Vorteile? Off-Topic Diskussionen 7 20.09.2004 13:04
was ist schneller smarty, oder normaler php code? eQuin PHP-Fortgeschrittene 2 03.09.2004 11:51

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
smarty templates verschachteln, smarty verschachteln, smarty template verschachteln, smarty verschachtelt, smarty verschachtelte templates, smarty funktionen verschachteln, smarty templates schachteln, smarty schachteln, smarty php verschachteln, smarty tamplates verschachteln, html dl verschachtelt, smarty mysql verschachtelte foreach, smarty tpl verschachtelt, smarty tpl verschachteln, http://www.php.de/php-tipps-2006/37577-smarty-verschachtelt.html, <?php smarty template menu navigation items, smarty variablen schachteln, smarty templates werden nicht angezeigt pfade korrekt, templates schachteln, smarty css menu

Alle Zeitangaben in WEZ +1. Es ist jetzt 07:20 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.