динамический текст на странице

Тема в разделе "PHP", создана пользователем vave, 20 сен 2011.

Модераторы: latteo
  1. vave

    vave

    Регистр.:
    23 июн 2007
    Сообщения:
    372
    Симпатии:
    15
    Здравствуйте,
    попытаюсь максимально дословно объяснить в чём мне нужна помощь.

    Например есть 4 файла, header.php, page_1.php, page_2.php и index.php где эти файлы находят друг друга.

    как реализовать так, что бы внутри header.php был скрипт, который показывал бы закрытый в коде текст "текст1" из page_1.php и "текст2" в page_2.php

    тоесть в браузере, в index.php?menu=page_1 должен быть "текст1" с page_1.php и соответственно в index.php?menu=page_2 - "текст2"

    но выходить текст должен из header.php

    надеюсь смысл у меня получилось передать:)
     
  2. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    701
    если все правильно понял то как-то так
    PHP:
    if(isset($_GET['menu'])){ $page $_GET['menu']; }
    else {
    $page 1; }//по умолчанию
    $root 'page_'.$page.'.php';
    include(
    $root);
     
  3. vave

    vave

    Регистр.:
    23 июн 2007
    Сообщения:
    372
    Симпатии:
    15
    эт я умею)

    я имел введу немного другое, что-то вроде этого:

    это вставить в header.php
    PHP:
    <?php echo $content['text']; ?>
    это page1.php
    PHP:
    <?php $content = array('text' => 'демо текст 1',); ?>
    а это page2.php
    PHP:
    <?php $content = array('text' => 'демо текст 2',); ?>
    взаимозависимости от того какая страница загружена, будет меняться текст в header.php,

    в данном примере есть своя проблема, если я это загружаю на одну страницу, то скрипт работает, но толку от этого нет, а мне надо разделить с использованием
    PHP:
    include
    а так ничего не работает...
     
  4. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    701
    PHP:
    if(isset($_GET['menu'])){ $page $_GET['menu']; } 
    else {
    $page 1; }//по умолчанию
    а это для чего повашему? Вообщем вот рабочий пример Посмотреть вложение menu.rar все работает что не так?
     
  5. vave

    vave

    Регистр.:
    23 июн 2007
    Сообщения:
    372
    Симпатии:
    15
    ваш скрипт если я не ошибаюсь делает index.php?menu=page_1

    мне немного другое нужно, я в принципе разобрался со своим скриптом, он оказывается работает если я ставлю
    PHP:
    include
    на page1/2 до:

    PHP:
    <?php echo $content['text']; ?> 
    как можно сделать что бы заработало наоборот?
    сначало код
    PHP:
    <?php echo $content['text']; ?> 
    а потом только
    PHP:
    <?php include 'page1.php'?>
     
  6. vave

    vave

    Регистр.:
    23 июн 2007
    Сообщения:
    372
    Симпатии:
    15
    Вообщем нужно в что бы header.php менялся <title> сайта, при заходе на page1.php один тайтл а при заходе на page2.php другой...
     
  7. dino

    dino

    Регистр.:
    28 май 2009
    Сообщения:
    550
    Симпатии:
    204
    Зачем же столько файлов то плодить? достаточно в index.php подгрузить сначала нужный файл (например page1.php) после этого обработать его, вытянуть текст, который должен отображаться в <title> и вставить его через echo...
    предположим page1.php, page2.php, page3.php имеют вид:
    PHP:
    <?php
    $title
    ="this page 1";
    $meta=".....";
    $content=".....";
    ?>
    тогда index.php будет приблизительно такой:
    PHP:
    <?php
    include("page1.php");
    echo
    '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>'
    .$title.'</title>
    <meta>'
    .$meta.'</meta>
    </head>
    <body>'
    .$content.'</body></html>';
    ?>
     
  8. vave

    vave

    Регистр.:
    23 июн 2007
    Сообщения:
    372
    Симпатии:
    15
    а как быть если инклуд должен быть где-то в центре кода сайта, а тайтл остаётся на верху?


    в index.php дизайн сайта, в самом верху <title> и в центре include на page 1, 2 , 3 итд..

    скрипт не хочет работать если include находится ниже всех...

    как тут быть?
     
  9. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    701
    содержимое файла которое нужно вывести на странице в центре заносишь в переменную и в нужное место вставляешь эту переменную как dino написал выше
    PHP:
    <?php include('page1.php');?>
    <html><head><title><?php echo $title?></title></head>
    <body><?php echo $content?></body></html>
     
  10. vave

    vave

    Регистр.:
    23 июн 2007
    Сообщения:
    372
    Симпатии:
    15
    ну тут опять include находится над echo $title; / echo $content;
    вставлять title в центр станици как-то не очень хочется..
    неужели не возможно сделать что бы include был внизу?