За последние 24 часа нас посетили 17826 программистов и 1286 роботов. Сейчас ищут 1522 программиста ...

Как сделать ссылки?

Тема в разделе "Вопросы от блондинок", создана пользователем DEMONHUNTER, 13 ноя 2006.

  1. DEMONHUNTER

    DEMONHUNTER Активный пользователь

    С нами с:
    13 ноя 2006
    Сообщения:
    3
    Симпатии:
    0
    // Перенесено из темы "быстрые шаблоны". Горбунов.

    Кхе...Всем привет
    Тема по шаблонам значит мне сюда.

    Вообще у меня есть страница html в php формате. В определенном месте использую include 'некийфайл', обзовем его $FILE, для каждой страницы разный (в основном этот txt файлы, чтобы удобнее было править). Меню навигации также на всех страницах вставляется подобным образом.
    Подскажите как сделать, чтобы при нажатии на ссылку в меню навигации вместо $FILE загружался другой файл, а не другая страница с include-ных в нее другим файлом.

    Кто знает пожалуйста помогите. Заранее спасибо
     
  2. DEMONHUNTER

    DEMONHUNTER Активный пользователь

    С нами с:
    13 ноя 2006
    Сообщения:
    3
    Симпатии:
    0
    Тоесть у меня при нажатии на ГЛАВНАЯ, загружается файл index.php в который вставлен (include) файл index.txt, а при нажатии на КОНТАКТЫ соответственно contact.php и т.д.
     
  3. Anonymous

    Anonymous Guest

    Не реализуемо на PHP в принципе. А вот в HTML...
    Тебе не в шаблоны, тебе в «Блондинок»
     
  4. Davil

    Davil Guest

    DEMONHUNTER подумай логически.
     
  5. DEMONHUNTER

    DEMONHUNTER Активный пользователь

    С нами с:
    13 ноя 2006
    Сообщения:
    3
    Симпатии:
    0
    Davil
    мог бы сам - не просилы бы о помощи
     
  6. Davil

    Davil Guest

    1. Вместо include пользуем require_once
    2. В каждой ссылке указываем параметр того, какая страница нужна.
    Готово.
     
  7. что такое "другая страница"? откуда она взялась?

    Ты сам свой вопрос читать не пробовал? "как мне сделать, чтобы не вставлялась другая страница, а вставлялся другой файл". Ты сам-то в этой галиматье поймёшь что-нибудь?

    перепиши код так, чтобы "другая страница" не вставлась, а вставлялся "другой файл". всего-то делов-то.
     
  8. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    вид ссылки: /index.php?pageID=index

    PHP:
    1. <?php
    2. $file = $_GET['pageID'];
    3. //проверка значения переменной, например, перебором всех доступных значений (самое простое), рег.выражением и т.п.
    4. readfile("./".$file.".txt") or die "Ошибка загрузки страницы, ".__FILE__.", ".__LINE__;
    5. ?>
    например
     
  9. не забываем о безопасности
    $file = basename($_GET['pageID']);
     
  10. Davil

    Davil Guest

    DarkElf
    Это не совсем безопасно. Лучше всеже пользоваться switch-case.
     
  11. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    Davil

    см.комментарий. Под доступными значениями я имел ввиду те значения, которые, по идее автора, может запросить скрипт.
     
  12. Davil

    Davil Guest

    DarkElf
    Человеческий фактор нельзя забывать. Автор регулярного выражения может неучесть что-либо. Да и имена файлов показывать - тож нехорошо.
     
  13. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    Davil

    ну, там был самый простой пример..

    а что мешает:
    1) присвоить файлам префикс, который, естественно, нигде не показывать
    2) хранить сами файлики в директории, закрытой на вход апач-авторизацией..
    3) пользоватся численными ключами, а имена файлов хранить например в ini - файле..
     
  14. Anonymous

    Anonymous Guest

    Мне бы здравый смысл помешал.
     
  15. bruto

    bruto Активный пользователь

    С нами с:
    18 сен 2006
    Сообщения:
    68
    Симпатии:
    0
    Почему бы не взять готовую CMS?
     
  16. Davil

    Davil Guest

    bruto сразу видно - не романтик.
    Сам подумай: сидеть сутками перед монитором, ломать голову, чтобы изобрести велосипед, причем не самый лучший.