$inhalt = include("layout.html") - funktioniert nicht

Eistee

Erfahrenes Mitglied
Hi,
ich hab grad mein Gallerie-Script um die Funktion Postkarten versenden zu können erweitert.
Funktioniert soweit auch wunderbar, allerdings stört mich noch etwas:
Das Layout für die Postkarte muss im Script selbst definiert werden.
Etwa so:
Code:
$inhalt = "<table>...</table>";
Ich würde das Layout aber viel lieber in einer externen Datei festlegen und diese dann in das Script einbinden.
Ich habs einfach mal so probiert:
Code:
$inhalt = include("layout.html");
Das geht aber leider nicht :(

Ich hoffe ihr habt verstanden, was ich vorhabe und könnt mir eine Lösung anbieten.
Danke!
 
Ist ja ganz nett, aber die erläuterungen zu Templates schießen übers ziel hinaus ;)
Ich möchte eigentlicb los den Inhalt einer Datei in einer Variable laden.
Wie stell ich DAS an?
 
Hallo,
also in den Tutorials steht wohl nicht das man Dateien mit der Funktion
PHP:
function gettemplate($template,$endung="html")
{
return str_replace("\"","\\\"",implode("",file($template.".".$endung)));
}

laden kann oder?Mit der Funktion kannst du jede Datei laden nicht nur Templates.
z.B.
PHP:
$var=gettemplate("layout");
bye
 
file_get_content

Also ich würde auch sagen das dies wohl die einfachste Lösung sein dürfte:
PHP:
$layout = file_get_contents("layout.html");
echo $layout;
GL q
 
Danke für eure Hilfe, aber auch mit file_get_contents() gehts noch nicht richtig

PHP:
$pic = '<img src=http://www.alkbrueder.de/images/gallery/'.$row[date].'/pix/'.$row[name].'>';
				
$message = nl2br($_POST["message"]);
$content = file_get_contents("postcard.html");

So sieht der entsprechende Abschnitt im Code jetzt aus.

Code:
<table border="0" cellspacing="0" cellpadding="0" style="border: #2161A0 1px solid; background: #d1d1e1;"> 
<tr> 
<td> 
<table border="0" cellspacing="0" cellpadding="5" bgcolor="#F5F5FF"> 
<tr> 
<td>$pic<br> 
<br> 
$message
</td> 
</tr> 
</table> 
</td> 
</tr> 
</table>

Und so der Inhalt der Datei postcard.html

Wenn ich mir jetzt eine Postkarte zuschicke stehen da aber blos die Variablen, nicht aber das Bild und die Nachricht.
Kurzum: die Variablen werden offensichtlich nicht geparst und durch ihre Inhalte ersetzt :(
Wie kann ich das ändern?
 
Hallo,
entwerder nimmst du :
PHP:
eval ("\$content = \"".file_get_contents("postcard.html"."\";");
,aber diese Methode ist sehr Fehler anfällig.
Oder
PHP:
$content=str_replace("{pic}",$pic,file_get_contents("postcard.html"));
$content=str_replace("{message}",$message,$content);
diese,aber ist mit meher Schreibarbeit Verbunden.
bye

PS: Dies hätteste auch aus der Template Tutorial entnehmen können.
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück