# Smarty Include PHP Problem



## ByeBye 182971 (13. Mai 2007)

Hi Leute ich hab da eine Frage:

Ich binde meine Unterseiten per $_GET['page'] ein. Das Problem ist, dass ich noch weitere "Unterseiten"/Aktionen per $_GET['action'] einbinde.

ein beispiel: ?page=profil&action=show_all dazu sollte die datei: profil_show_all.tpl geladen werden. Wenn nur ?page=profil dann nur die profil.tpl.


der code(-auszug) aus der *index.php* sieht so aus:

```
$smarty = new Smarty;

if (isset($_GET['page']) && isset($dateien[$_GET['page']]))
{
	if(file_exists($dateien[$_GET['page']]))
	{
		if (isset($_GET['action']))
		{
			include ($dateien[$_GET['page']] . ".php");
			$smarty->assign('page', $dateien[$_GET['page']] . "_" . $_GET['action']);
		}
		else
		{
			include ($dateien[$_GET['page']] . ".php");
			$smarty->assign('page', $dateien[$_GET['page']]);
		}

	}
}
else
{
	include ($dateien['news'] . ".php");;
	$smarty->assign('page', $dateien['news']);
}

$smarty->display('index.tpl');
```

in der *index.tpl* sieht es dann so aus:

```
[...]
<td width="519" valign="top">
<p>
{include file="$page.tpl"}
</p>
</td>
[...]
```

So war es gedacht bzw so habe ich es versucht aber es klappt nicht. Habt ihr eine bessere Idee dazu?

error bei ?page=profil&action=show_all:

```
Warning: Smarty error: unable to read resource: ".tpl" in /usr/....alpha/inc/lib/Smarty/Smarty.class.php on line 1095
```

wenn ich kein $_GET['page'] oder $_GET['action'] habe, wird regulär die news.tpl angezeigt.

bei ?page=register: 
	
	
	



```
Warning: Smarty error: unable to read resource: ".tpl" in /usr/..../alpha/inc/lib/Smarty/Smarty.class.php on line 1095
```

Kann mir einer Helfen? Ich würde mich sehr freuen über Hilfe.

Danke Gruß suf*****


----------



## ByeBye 182971 (16. Mai 2007)

will mir keiner helfen oder kann mir keiner helfen?

Sonst muss ich meine Eigene Engine schreiben lol


----------



## xErY (16. Mai 2007)

Dein Smartycode is richtig nur deine Page var is leer


----------



## ByeBye 182971 (17. Mai 2007)

ja aber so ist es ja gar nicht.....

bei index.php?page= müsste sie doch "voll" sein?!


----------



## Flex (17. Mai 2007)

```
$smarty->assign('page', $dateien['news']);
```

Da das hier klappt und:


```
$dateien[$_GET['page']] . "_" . $_GET['action']
```

diese nicht, würde ich mal testweise die $_GET Werte ausgeben lassen, ob sie überhaupt gefüllt sind.

Bzw. auch mal im Smarty Template einfach ein {$page} ausgeben, um zu gucken ob der Inhalt stimmt.


----------



## ByeBye 182971 (17. Mai 2007)

ja okmach ich mal schaun ich denke eh dass ich eventuellerstmalneeigene tpl engine schreibe


----------

