php print filecontent с php-контентом - PullRequest
0 голосов
/ 03 августа 2011

После проверки как fread, так и fopen с помощью команды поиска "php fread php code" и php fopen php code "безуспешно я перехожу к тому, чтобы задавать вопрос самостоятельно (более 300 страниц с вопросамикруто копаться.)

У меня есть страница, где я получаю контент из внешних файлов. Я получил index.php со ссылками, которые отправляют запросы через URL (например,? links = home)который читается из другого файла, который просматривает массив и находит нужный файл. Все это работает! Но вот сложная часть: один из файлов содержит несколько строк php-кодов, которые не выполняют свою работу, а просто зависаютгде-то в view-source. Да, вы можете видеть команды в source: code, но я ничего не запрашиваю. Ни одного эха.

Вот код, который может объяснить вещи еще лучше.

Код, который получает команду url:

<?php
function load_pages() {
    if ($_GET['link'] != NULL) {
        $link = $_GET['link'];
        $links = array("hem" => "hem.php", "about" => "about.php", "blogg" => "blogg.php", "kontakta" => "kontakta.php");
        foreach ($links as $key => $value) {
            if ($key == $link) {
                $file = "links/" . $value;
                $fh = fopen($file, "r") or exit("Unable to open the file.");
                $fileContent = fread($fh, filesize($file));
                fclose($fh);
                echo $fileContent;
            }
        }
    } else {
        $file = "links/hem.php";
        $fh = fopen($file, "r") or exit("Unable to open the file.");
        $fileContent = fread($fh, filesize($file));
        fclose($fh);
        echo $fileContent;
    }
}
?>

Файл, который получает команду для страницы, которую я хочу загрузить:

<?php
include ("../include/functions.php");
connect();
?>

<h1>Blogg</h1>
<?php
if ($_GET['id'] == NULL) {
    blogg_content();
} else {
    blogg_link();
}
?>

<div id="blogg_menu">
    <?php blogg_menu(); ?>
</div>

Что приходитвыход это:Blogg Это просто не сработает, так что я могу изменить, чтобы он дал мне блог-контент и тому подобное?(Страница на шведском, просто чтобы опровергнуть любые опечатки о "Blogg".)

1 Ответ

2 голосов
/ 03 августа 2011

Если эти файлы содержат код PHP, который вы хотите выполнить, вам нужно include или require их, а не выводить необработанные данные.

Пожалуйста, смотрите документацию PHP как включать файлы кода.

РЕДАКТИРОВАТЬ Трудно сказать из вашего описания, но если вообще, вам придется сделать что-то вроде:

...
if ($key == $link) {
    $file = "links/" . $value;
    include_once $file;
}
...
...