index.php не иполняется код php вставленный в html

CeBePHb1Y

Новичок
index.php не иполняется код php вставленный в html, пример:
есть файлы:
index.php - исполняемый файл
main.tpl - файл c html кодом, в нем есть текст [!mod!]
mod.php - файл модуля, который выводит с помощью echo содержимое шаблона mod.tpl
mod.tpl - шаблон мода (html код)

код файлов:
index.php
PHP:
<?php
$site=file_get_contents('main.tpl');
$contmod=file_get_contents('mod.php');
$site=str_replace('[!mod!]',$contmod,$site);
//выводим сайт на экран
echo $site;
?>
main.tpl
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="ru" xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<div id="main">
[!mod!]
[!header!]
[!menu!]
</div>
</body>
</html>
mod.php
PHP:
<?php
$mod=file_get_contents('mod.tpl');
echo $mod;
?>
mod.tpl
HTML:
<div id="mod">YAHOO!</div>
в итоге код php не исполняется а просто вставляется в html:
исходный код страницы:
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="ru" xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<div id="main">
[u]<?php
$mod=file_get_contents('mod.tpl');
echo $mod;
?>[/u]
[!header!]
[!menu!]
</div>
</body>
</html>
как победить недуг? на другом сервере все работало.
стоит xammp, его настройки не трогал, может настроен не так?
 

CeBePHb1Y

Новичок
сервером.
идея такая есть модуль php, и его нужно вставить в шаблон страницы вместо [!mod!] и вывести на экран этот шаблон уже с модулем php, причем чтобы он исполнился, вот что мне нужно. как можно это сделать?
 

rotoZOOM

ACM maniac
Вопрос был в том, почему не работает, причем раньше у тебя на сервере это работало. Очень интересно как именно работало. Ты вообще понимаешь, как это работает?
 

CeBePHb1Y

Новичок
Очень интересно как именно работало
просто исходники не сохранились, писал по памяти, может что то не так написал\не дописал.
Ты вообще понимаешь, как это работает?
видимо не понимаю, так объясните.
Вопрос был в том, почему не работает, причем раньше у тебя на сервере это работало.
вопрос был "как победить недуг?" и "идея такая есть модуль php, и его нужно вставить в шаблон страницы вместо [!mod!] и вывести на экран этот шаблон уже с модулем php, причем чтобы он исполнился, вот что мне нужно. как можно это сделать?" не исключает его, а фраза "на другом сервере все работало." это факт который мог бы помочь при разборе. единственное что я не указал, так это то что я по памяти писал.
 

WMix

герр M:)ller
Партнер клуба
CeBePHb1Y
вот интересно а что должен выводить по твоему
PHP:
echo "<?php echo 'hello world'; ?>";
 

assous

Новичок
"как победить недуг?"
index.php
PHP:
<?php
$site=file_get_contents('main.tpl');
$contmod=file_get_contents('mod.tpl'); //mod.php менять mod.tpl
$site=str_replace('[!mod!]',$contmod,$site);
//выводим сайт на экран
echo $site;
?>
 

Yaponchick

Новичок
Народ, вы явно перегибаете палку, дали бы ему ссылку на описание отличий file_get_contents и include / require
 
Сверху