Beschreibe bitte zunächst einmal dein Problem so, dass es ein Außenstehender verstehen und nachvollziehen kann. Am besten wäre ein auf das Minimum verkürztes Beispiel der beteiligten Dateien.
index.php-Datei:
include 'mainTemplate'
//Top einslesen und einsetzen
$docTop = file_get_contents('Content/top_text.txt');
$page = preg_replace("~[%top%]~",$docTop, $page);
//navi, subnavi einlesen und einsetzen wie oben bei Top
$content = getContent();
$page = preg_replace("~[%content%]~", $arr['content'], $page);
//bottom einlesen und einsetzen wie oben z.B. bei navi
echo $page;
function getContent() {
$docContent = file_get_contents('check.php');
return $docContent;
}
check.php-Datei:
$formular_temp = file_get_contents('formular.txt');
if (empty($_POST)) {//keine Daten gesendet --> lade leeres Formular
echo "$formular_temp";
}else {//Daten gesendet --> pruefe auf korrekte Pflichtfelder
if(ok)
//verarbeite Daten
else
//Fehler rot färben und korrekte Daten einfürgen echo "$formular_temp";
}
formular.txt-Datei:
<form action="Statisch/Content/Texte/add.php" method="post" enctype="multipart/form-data">
<input ....>
</form>
Mein Ausgangsproblem war, dass in der index.php der Quelltext von check.php anstatt dem Formular ausgegeben wurde.
Der Hinweis von suit anstelle von file_get_contents besser require zu nehmen hat zwar funktioniert, doch die Ausgabe des Formulars (dem content) war dann vor [%top%], [%navi%] und [%subnavi%]. Vermutlich wird mit require(Inhalt) der Inhalt sofort angedruckt.
Falls dem so ist hätte ich gern gewusst, ob es eine gängigere Möglichkeit gibt, als in der index.php alle Platzhalter nach dem Ersetzen gleich auszugeben.
Johann