Перейти к содержимому


Пользователь месяца
TimurR TimurR 1-й за Август
Очков активности: 726 3 темы, 35 сообщений, 11 баллов репутации
ТОП самых активных за этот месяц
  • Фотография ShowPrint
    #1

    ShowPrint (ShowPrint.ru)
    Очков активности: 207 2 темы, 17 сообщений, 6 баллов репутации

  • Фотография WGN
    #2

    WGN (worldgamenews.com)
    Очков активности: 72 Вне конкурса за определение пользователя месяца

  • Фотография Ixman
    #3

    Ixman (o5cat.ru)
    Очков активности: 72 0 тем, 8 сообщений, 6 баллов репутации

  • Фотография magnet
    #4

    magnet (rbfxdirect.com)
    Очков активности: 67.5 Вне конкурса за определение пользователя месяца

  • Фотография AnnaYa
    #5

    AnnaYa (topbase.ru)
    Очков активности: 33 2 темы, 5 сообщений, 2 балла репутации

  • Фотография BLIK
    #6

    BLIK
    Очков активности: 30 Вне конкурса за определение пользователя месяца

  • Фотография Алексей111
    #7

    Алексей111
    Очков активности: 28.5 5 тем, 4 сообщения, 1 балл репутации

  • Фотография TimurR
    #8

    TimurR
    Очков активности: 27 Вне конкурса за определение пользователя месяца

  • Фотография torix
    #9

    torix
    Очков активности: 22.5 2 темы, 9 сообщений, 1 балл репутации

  • Фотография Developer
    #10

    Developer
    Очков активности: 21 1 тема, 11 сообщений, 1 балл репутации

  • Показать весь ТОП 10

Kwork.ru - услуги фрилансеров от 500 руб.

Поддержите форум! =)
Апдейты
  • Яндекс тИЦ: 19.11.2017
  • Яндекс выдача: 22.09.2018
Топ 5 участников по репутации


Логика построения сайта. Рассматриваются 2 варианта.

#1 volkan

volkan
  • Неактивные
  • 10 сообщений
  • Репутация: 0
0

Отправлено 24 January 2013 - 18:37

Всем привет! Наконец-то начинаю писать сайт. Очень сильно нуждаюсь в советах от знающих людей.
Сейчас мне необходимо определиться с самыми основами - логикой построения сайта. Прочитав кучи статей, я выделил для себя 2 варианта строения сайта:
1) Есть файл с дизайном сайта, и в него подключаются файлы с контентом с помощью метода GET (потом полученная переменная идёт в include $page;). В итоге среднестатистическая страница получается: site.ru/index.php?page=pages/about.php.

2) В файлы с контентом подключаются файлы с дизайном с помощью include'а. В итоге среднестатистическая страница получается: site.ru/pages/about.php.

Сравнивая эти 2 варианта, я выделил несколько положительных и отрицательных моментов:

Для первого варианта:
+ Все ссылки идут от одного и того же файла - не надо думать.
+ При изменении чего-то в 1 файле меняется сразу везде.
- Некрасивый длинный адрес страницы.

Для второго варианта:
+ Адресная строка стандартного красивого вида.
- Придётся иметь несколько файлов дизайна для каждой глубины папок, чтобы ссылки на папку с изображениями вели правильно, то есть для файлов в папках один файл дизайна, для файлов в папках в папках - другой.
- Соответственно при изменении чего-то в 1 файле дизайна, придётся менять это во всех.

Уважаемые программисты и пользователи сайтов, помогите, пожалуйста, определиться с выбором варианта. Какие ещё плюсы и минусы выявятся в дальнейшем? А может быть вы предложите что-то третье, более удобное и совершенное?


 

 

  • 0

#2 Shaka13

Shaka13
  • Заблокированные
  • 136 сообщений
  • Репутация: 10

Отправлено 24 January 2013 - 18:56

не совсем понял, что ты хотел сказать, но то, что до конца не понял это очевидно, скорее всего сказывается нехватка базовых знаний и опыта.
сейчас одна точка вхождения наиболее популярная и самая распространенная технология.
site.ru/index.php?page=pages/about.php - это немного по идиотски выглядит, можно сделать site.ru/index.php?page=about или совсем красиво, например вот так site.ru/about/
про 2 вариант я совсем не понял, шаблон ты можешь подключать по-любому в любом варианте
  • 1

#3 volkan

volkan
    Topic Starter
  • Неактивные
  • 10 сообщений
  • Репутация: 0

Отправлено 24 January 2013 - 19:28

Спасибо за отзыв. Так как у меня опыта нет почти, мне интересно услышать, каким способом вдальнейшем будет удобнее пользоваться, а то, что могу по-любому - знаю :), но как лучше....
Одну точку входа где-то ругали, я тогда внимания не придавал, а сейчас стало интересно, кто как к ней относится, чтоб глобально не ошибиться))
  • 0

#4 Shaka13

Shaka13
  • Заблокированные
  • 136 сообщений
  • Репутация: 10

Отправлено 24 January 2013 - 19:38

сейчас практически все приложения строятся на единой точке входа, применительно к веб, опишу упрощенно алгоритм:
  • index.php служит точкой входа
  • .htaccess настраивается тааким образом, что если физически не существует файла и папок, происходила переадресация на index.php
  • далее с помощью глобальной переменной получаешь(не обязательно это может быть $_GET) и разбираешь адресную строку, ее(адресную строку) организовать можешь как хочешь :) главное, чтоб была общая логика
  • на основании полученных данных, подключаешь все необходимые модули(функции/классы), архитектуру и названия файлов и папок делаешь как хочешь
  • извлекаешь необходимые данные, на основании предыдущего пункта
  • подключаешь шаблон, он может состоят из необходимого количества файлов
  • далее полученные данные оборачиваешь в html и выводишь

  • 0

#5 Shaka13

Shaka13
  • Заблокированные
  • 136 сообщений
  • Репутация: 10

Отправлено 24 January 2013 - 20:16

ЗЫ
1. вариант, как правило подразумевает модульность, что делает сайт легко расширяемым и легко поддерживаемым, т.е. при расширении изменений в других файлах практически не требуется.
2. больше подходит для небольших статических сайтов, т.к. расширение и модернизация затрагивает многие уже существующие файлы, а так происходит значительное дублирование кода.
  • 0

#6 Mr.Developer

Mr.Developer
  • Неактивные
  • 73 сообщений
  • Репутация: 12

Отправлено 24 January 2013 - 21:09

Уважаемый ТС, советую вам фильтровать полученные данные и ни в коем случае не принимать в них параметры типа page.php (вместе в расширением). Такие сайты очень легко взламываются ибо злоумышленник может проинклудить что-то совсем другое нежели вы ожидаете xD
Пусть в параметрах будут разрешены только максимум цифры,буквы и знак «-»
  • 0

#7 volkan

volkan
    Topic Starter
  • Неактивные
  • 10 сообщений
  • Репутация: 0

Отправлено 24 January 2013 - 21:16

Да, действительно, учту, спасибо большое!
  • 0

#8 isvetlichniy

isvetlichniy
  • Неактивные
  • 622 сообщений
  • Репутация: 93

Отправлено 24 January 2013 - 23:30

можно сделать site.ru/index.php?page=about или совсем красиво, например вот так site.ru/about/

я бы делал вот так
site.ru/?page=about
site.ru/?page=home
site.ru/?page=contact
ЧПУ есть, выглядит адекватно и не требует никаких настроек htaccess или чего то другого. ну и единая точка входа
  • 0

#9 vipers

vipers
  • Заблокированные
  • 12 сообщений
  • Репутация: -2

Отправлено 25 January 2013 - 07:51

юзай CodeIgniter
  • 0

#10 Mr.Developer

Mr.Developer
  • Неактивные
  • 73 сообщений
  • Репутация: 12

Отправлено 25 January 2013 - 10:39

isvetlichniy, А в чем собственно проблема прикрутить сюда еще и rewrite rules?
В итоге будут красивые адреса типа site.ru/about, etc


  • 0

robot

robot
  • Пользователь PRO
  • 2652 сообщений
  • Репутация: 85


Похожие темы

  Название темы Автор Статистика Последнее сообщение

Оформление форума – IPBSkins.ru