За последние 24 часа нас посетили 20069 программистов и 1693 робота. Сейчас ищут 1908 программистов ...

правильная работа с url

Тема в разделе "PHP для новичков", создана пользователем korih, 15 дек 2016.

  1. korih

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

    С нами с:
    12 окт 2011
    Сообщения:
    34
    Симпатии:
    0
    Здравствуйте всем. запутался с ссылками и прошу помощи.

    пишу страницу для сайта.
    PHP:
    1. if($_['page']=='news'){
    2.     echo '<div class="стили для блоков">';
    3.     if($_['page']=='news/all'){echo 'показывает блоки с полный материал';}
    4.     else{
    5.          echo 'показывает укороченную форму материала';
    6.     }
    7.     echo '</div>';
    8. }
    общая вёрстка для страницы написана и есть определённый центральный блок где блоки с новостями выводятся. и вот вопрос, как красиво сработать с ссылками? если пользователь ввёл site.ru/index.php?page=news то в центральном блоке выводить укороченную форму материала. а если site.ru/index.php?page=news/all, то выводить в центральном блоке полную форму материалов.

    как это сделать более профессионально? что бы не было повторяющих строк вёрстки для каждой ссылки. слышал, что работать можно через .htaccess через mod_rewrite
     
  2. rewuxiin

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

    С нами с:
    17 апр 2012
    Сообщения:
    611
    Симпатии:
    87
    можно вот так - где Id это Id полной новости
    HTML:
    1. site.ru/index.php?page=news&id=12345
    можно написать роутинг который будет превращать ссылки вида
    HTML:
    1. site.ru/index.php?page=news&id=12345
    в
    HTML:
    1. site.ru/news/12345
     
  3. korih

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

    С нами с:
    12 окт 2011
    Сообщения:
    34
    Симпатии:
    0
    спасибо за ответ. а как это реализовать в коде с обращением get к url без повторения дивов от вёрстки? сайт в основном весь из html состоит. нужно раскидать готовую инфу по страницам
    через ООП может реализовать.
     
  4. rewuxiin

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

    С нами с:
    17 апр 2012
    Сообщения:
    611
    Симпатии:
    87
    korih, новости в базу и вытягивать на страницу по их ид
    и лучше почитать о вот такой форме верстки на php, иначе дальше будет слишком много echo

    PHP:
    1. <?php if($_['page']=='news'):?>
    2.     <div class="стили для блоков">
    3.     <?php if(!empty($_['id']): ?>
    4.         показывает блоки с полный материал
    5.         вывод текста из переменной
    6.         <?=$result?>    
    7.       <?php else : ?>
    8.        показывает укороченную форму материала
    9.    </div>
    10. <?php endif; ?>
     
    korih нравится это.
  5. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.840
    Симпатии:
    652
    Разделите вложенные шаблоны для списка и отдельной статьи. Пример.


    Профессионально – это когда роутинг выполняется внутри скрипта. В .htaccess вы только направляете запросы во фронт. Пример.