Код?... Это просто!
php js Jquery JsPhp blog
ТЕГИ:
engine (10)

php (101)
js (87)
php date (19)
html (14)
online (14)
js slice (13)
encode (11)
js array (11)
php array (10)
js date (10)
engine (10)
hash (10)
dosite (9)
info (7)
php img (7)
jsphp (6)
Показать еще :

Распределение файлов на сайте

Продолжаем тему сделать сайт... наша тема распределение файлов!

О распределении файлов

  1. Распределение файлов
  2. Пример распределения файлов в папках
  3. Файл config.php
  4. vars.php и html.html
  1. Распределение файлов

    Я вам расскажу всю подноготную создания движка - и "Распределение файлов" - очень важная тема.

    Вы нигде эту информацию на найдете!

    Естественно..., что я не смогу рассказать обо всём... потребуется очень много "букв"!wall

    Только основное и чтобы вы смогли понять принцип!

    Эта тема сложилась из 11 лет использования собственного движка!

    Я не претендую на истину в последней инстанции - это всего лишь мой способ создания и ведения движка!

    Итак ... давайте начнем!

    Первое разделение:

    Я разделяю два типа файлов:

    Все файлы, которые лежат в "корневой папке" сайта, ну например вот этот файл:

    https://jsphp.ru/favicon.ico

    Файлы, которые вы не сможете посмотреть....

    Исполнительные файлы php, которые лежат выше корневой папки.

    Зачем?
    Когда вы делаете свой сайт, то файлы должны лежать в соответствующих местах! В моих файлах нет ничего секретного, но и с другой стороны... данные файлы в принципе не должны быть доступными!
  2. Пример распределения файлов в папках

    Давайте посмотрим на простой пример распределения файлов в папках:

    Пример распределения файлов в папках

    Начальная папка, в которой лежат все файлы движка(выше на уровень, чем корневая папка):

    .cms

    Папка "_include", в которой лежат основные важные файлы частого использования, например файл ".fu.php" - все функции:

    _include

    Файлы ".html", которые участвуют в каркасе страницы и не только...

    .html

    В папке "admin" - всё, что касается админа, например последняя разработка входа в админку сайта.

    admin

    Папка "different"(разное) - все php страницы менее востребованные...

    Пака "types" - типы страниц(будет отдельная страница)... например:

    Главная.

    Страница с контентом.

    Страница списка.

    И т.д...

  3. Файл config.php

    Здесь файл "config.php" будет работать только при единой точке входа.

    Основной файл, в который стекаются все другие файлы...

    Чтобы вы имели представление о файле config.php смотри здесь.

    Соответственно файл "config.php" загружается в файл index.html(код index.html)

    Разберем:

    В самом начале загружаем все переменные сайта:

    include __DIR__ . '/vars.php';

    Второй по значимости файл(о папке говорил раньше $dr_in=="Папка _include") файл со всеми функциями...

    include $dr_in . '/_fu.php';

    Данные для входа, куки, сессия... приветствие...

    include $dr_in . '/only_name.php';

    После запуска сессии первого входа админа($_SESSION['admin_first']) приветствуем админа!

    if($_SESSION['admin_first']) { show_result_post('Здравствуйте ! '. $admin); unset($_SESSION['admin_first']);}
    Загружаем контент:

    В переменной $uri($uri = strip_tags($_SERVER['REQUEST_URI']);) находится всё, что после домена... это главная:

    if( $uri == '/') $id_page = $dat = $types = 'main';

    Все post отправляем на "post.php"

    elseif( $parse_url=='/post.php') include_once $dr_in .'/post.php';

    Если папка, после домена "admin" или окончание адреса на "admin.html" загружаем файл админа...

    elseif( $parts[1] == 'admin' or $parts[1] == 'admin.html') include_once $dr_admin .'/admin.html';

    Загрузка контента из файла(например вот эта страница)... если это тестовая страница, или опубликованный контент...(обрабатываются соответствующими функциями...)

    elseif( replace_hp_to_sp( $hp_page) ) { if($parts[1] == '__test') $test_page=1; else $id_page =getIdPage($hp_page); include replace_hp_to_sp( $hp_page); $types = 'page'; }

    Загрузка страниц с картинкой, например - blog.html или ?tema=php.

    elseif( $parse_url=='/blog.html' or $_GET['tema'])

    {

    $id_page = $dat = $types = 'line_img';

    if($_GET['tema']) $id_page = $dat = 'line_img_'. $_GET['tema'] ;

    include $dr_diff . '/is_page_tema.php';//проверяем есть ли такая тема...

    }

    Страница с поиском, например ?search=поиск.

    elseif( $_GET['search'] ){$types='search';header("HTTP/1.0 404 Not Found");$search =my_strtolower(strip_trim($_GET['search'])); }

    И если ничего не соответствует требованиям... выводим нет страницы : 404.html/

    else no_page();

    ... думаю на этом остановимся...

  4. Файлы vars.php и html.html

    В файле "vars.php" находятся все переменные сайта - файл загружается в самом начале файла config. Не публикую, поскольку он довольно большой и особого там ничего нет...

    И последние включение в файле config это каркас сайта в html.

    Пояснений не даю...

    Поскольку... это довольно специфические знания...

    Зачем нужны знания без пояснений ?

    Я довольно долго шел к идеальному коду в мох движках...

    Основной смысл данной страницы:

    Файлы должны быть компактными, чтобы можно было понять код и его увидеть одним взглядом и чтобы это не была портянка на 5 000 строк...

    И соответственно... загрузка нужных файлов по условию! А уже в отдельном файле вы пишите нужный код!

    Надеюсь, что данный контент поможет вам, если вы это собирайтесь делать... и позволит вам идти сразу по правильному пути!


Предыдущая - следующая тема:
jsphp.ru есть здесь:
Полезные ссылки:
ruweb
Я писал немного о ruweb.net!
Помочь проекту JsPhp.ru

Что можно сделать!?

Поделиться ссылкой! C друзьями или врагами!


Помочь проекту JSPHP.RU: Помочь проекту JSPHP.RU прокомментировать :

Скоро...


Мои Проекты :

Скоро...



О хостинге :

Скоро...


© jsphp.ru 2023 - 2024 , Аминев Марат. Контакты
Страница загружена за : 0.008276 секунд.