Инструменты пользователя

Инструменты сайта


software:development:demo:cms:ucms:index

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
software:development:demo:cms:ucms:index [2025/05/12 20:14] – [index_test_2.php] vladpolskiysoftware:development:demo:cms:ucms:index [2025/05/12 21:57] (текущий) – внешнее изменение 127.0.0.1
Строка 209: Строка 209:
 <note blue> <note blue>
 :!: **Примечание:**\\   :!: **Примечание:**\\  
-Ранее **config.ini** создавали мы, значит и владельца файла на запись и чтение тоже мы, а нам необходимо+Ранее **config.ini** создавали мы, значит и владелец файла на запись и чтение тоже мы, а нам необходимо
 передать права нашему приложению. Заодно проверим код записи в файл. передать права нашему приложению. Заодно проверим код записи в файл.
 </note> </note>
Строка 215: Строка 215:
 Удалим созданный нами файл **config.ini** и запустим в браузере файл **index_test_2.php** Удалим созданный нами файл **config.ini** и запустим в браузере файл **index_test_2.php**
  
-26+{{:software:development:demo:cms:ucms:ucms_kernel_demo_book_26.png|}}
  
 т.к. мы удалили файл **config.ini** мы получили сообщение:\\   т.к. мы удалили файл **config.ini** мы получили сообщение:\\  
Строка 221: Строка 221:
   * **Ошибка чтения INI-файла.** - прочесть файл приложение не смогло\\     * **Ошибка чтения INI-файла.** - прочесть файл приложение не смогло\\  
   * **Запись в файл прошла успешно!** - был создан новый **config.ini** с записью **default_site = video**   * **Запись в файл прошла успешно!** - был создан новый **config.ini** с записью **default_site = video**
-   +  
-27+Запустим в браузере страницу файл **index_test.php**  
 +{{:software:development:demo:cms:ucms:ucms_kernel_demo_book_27.png|}}
  
 Так-же проверим работу логики при пустом значении переменной **%%$default_site%%** в файле **config.ini**  Так-же проверим работу логики при пустом значении переменной **%%$default_site%%** в файле **config.ini** 
Строка 232: Строка 233:
 {{:software:development:demo:cms:ucms:ucms_kernel_demo_book_28.png|}} {{:software:development:demo:cms:ucms:ucms_kernel_demo_book_28.png|}}
  
-Аналогично, для определенной переменной **%%$default_site%%**+Приложение перешло на первую по списку директорию. 
 + 
 +Аналогично, для определенной переменной **%%$default_site%%** 
 <code> <code>
 default_site = blog default_site = blog
Строка 240: Строка 243:
  
 ===== Логика index.php ===== ===== Логика index.php =====
-  * **ЕСЛИ** ядро приложение не установленно (т.е. отсутствуют файлы **%%version.php%%** и **%%config.ini%%** в директории **%%/includes%%**), то приложение выведит в окне **%%/library/install%%** к файлу **%%install.php%%**+  * **ЕСЛИ** ядро приложение не установленно (т.е. отсутствуют файлы **%%version.php%%** и **%%config.ini%%** в директории **%%/includes%%**), то приложение перенаправит в **%%/library/install%%** к файлу **%%install.php%%**
   * **ИНАЧЕ** проверит переменную **%%$default_site%%** в файле **%%config.ini%%**   * **ИНАЧЕ** проверит переменную **%%$default_site%%** в файле **%%config.ini%%**
-  * **ЕСЛИ** переменная **%%$default_site = пустое значение%%**, то приложение выведит в окне индексный файл, первой из установленных конфигураций +  * **ЕСЛИ** переменная **%%$default_site = пустое значение%%**, то приложение перенаправит на индексный файл, первой из установленных конфигураций 
-  * **ИНАЧЕ** получив значение переменной **%%$default_site%%** из файла **%%default_site%%** выведит в окне **%%index.php%%** индексный файл установленной конфигурации, указанный пользователем.+  * **ИНАЧЕ** получив значение переменной **%%$default_site%%** из файла **%%config.ini%%** перенаправит к **%%index.php%%** установленной конфигурации, указанной пользователем.
  
 По замыслу пользователь может установит несколько приложений и указать приложение по умолчанию в **%%config.ini%%**,  По замыслу пользователь может установит несколько приложений и указать приложение по умолчанию в **%%config.ini%%**, 
Строка 266: Строка 269:
  *директории приложении и файлов конфигурации и функций */  *директории приложении и файлов конфигурации и функций */
 include './includes/cons.php'; include './includes/cons.php';
-include FOLDER . '/includes/config.ini'; 
 include FOLDER . '/includes/function.php'; include FOLDER . '/includes/function.php';
 /* запустим функцию проверки первого входа в приложение */ /* запустим функцию проверки первого входа в приложение */
Строка 273: Строка 275:
 </code> </code>
  
-Запишем в файл **%%function.php%%** нашу первую функцию **%%check_start();%%**+Создадим в директории **/includes** файл **%%function.php%%** и запишем в него нашу первую функцию **%%check_start();%%**
  
 <code php function.php> <code php function.php>
-<?php+<?php 
 /* Функция проверки установки ядра приложения и установленной конфигурации */ /* Функция проверки установки ядра приложения и установленной конфигурации */
 function check_start() { function check_start() {
-  //echo "это простая фунция";+ /* Присваиваем переменной $file_config значение константы FOLDER  
 + (а это директория ucms, записанная в файле cons.php)и добовляем  
 + '/includes/config.php' - директорию includes и искомый файл config.ini */ 
 +    $file_config = FOLDER . '/includes/config.ini'; 
 + 
 +// Создание и вызов параметров из .ini файла 
 +//////////////////////////////////////////// 
 +/* задаем переменной  значение $config  
 +* parse_ini_file - обрабатывает конфигурационный файл 
 +* /includes/config.ini - путь к config.ini 
 +* ,true); - обрабатываем с секциями (зпголовками) 
 +*/ 
 +$config_defaul_site = parse_ini_file(FOLDER . "/includes/config.ini",true); 
 +// Присвоим переменной $default_site значение из ini-файл. 
 +$default_site = $config_defaul_site['default_site']['default_site'];
 /* зададим переменным файлы и директории */ /* зададим переменным файлы и директории */
 $file_config = FOLDER . '/includes/config.ini'; $file_config = FOLDER . '/includes/config.ini';
-$file_version = 'version.php';+$file_version = FOLDER . '/version.txt';
    
 $bcw_site = FOLDER . '/bcw'; $bcw_site = FOLDER . '/bcw';
Строка 288: Строка 304:
 $video_site = FOLDER . '/video'; $video_site = FOLDER . '/video';
 $sns_site = FOLDER . '/sns'; $sns_site = FOLDER . '/sns';
- +  
-/* подключим в функции файл  config.ini для определения  +
-переменной $default_site*/ +
-include FOLDER . '/includes/config.ini';+
 /* Если переменные $file_config и file_exists существуют, /* Если переменные $file_config и file_exists существуют,
 то проверим определение переменной конфигурации $default_site то проверим определение переменной конфигурации $default_site
-по умолчанию в файле config.ini */+по умолчанию в файле config.php */
 if (file_exists($file_config) && file_exists($file_version)) { if (file_exists($file_config) && file_exists($file_version)) {
  /* Если переменная $default_site равно "пустое место" */  /* Если переменная $default_site равно "пустое место" */
- if ($default_site == ""){+ if ($default_site  == ''){
     /* Проверим, что конфигурация установлена в директории /bcw */     /* Проверим, что конфигурация установлена в директории /bcw */
  if (file_exists($bcw_site)) {  if (file_exists($bcw_site)) {
- /* Если директория /bcw определим имя переменной $default_site + /* Если директория /bcw существует, перенаправим туда и конец скрипта*/ 
-    равное индексному файлу bcw.php в директории /bcw + header("Location: ./bcw/");
-  */ +
- include FOLDER '/bcw/bcw.php';+
  exit;  exit;
  }  }
  /* Проверим, что конфигурация установлена в директории /blog */  /* Проверим, что конфигурация установлена в директории /blog */
  elseif (file_exists($blog_site)) {  elseif (file_exists($blog_site)) {
- /* Если директория /blog определим имя переменной $default_site + /* Если директория /blog существует, перенаправим туда и конец скрипта*/ 
-    равное индексному файлу blog.php в директории /blog + header("Location: ./blog/");
-  */ +
- include FOLDER '/blog/blog.php';+
  exit;  exit;
  }  }
  /* Проверим, что конфигурация установлена в директории /video */  /* Проверим, что конфигурация установлена в директории /video */
  elseif (file_exists($video_site)) {  elseif (file_exists($video_site)) {
- /* Если директория /video определим имя переменной $default_site + /* Если директория /video существует, перенаправим туда и конец скрипта*/ 
-    равное индексному файлу video.php в директории /video + header("Location: ./video/");
-  */ +
- include FOLDER '/video/video.php';+
  exit;  exit;
  }  }
  /* Проверим, что конфигурация установлена в директории /sns */  /* Проверим, что конфигурация установлена в директории /sns */
  elseif (file_exists($sns_site)) {  elseif (file_exists($sns_site)) {
- /* Если директория /sns определим имя переменной $default_site + /* Если директория /sns существует, перенаправим туда и конец скрипта*/ 
-    равное индексному файлу sns.php в директории /sns + header("Location: ./sns/");
-  */ +
- include FOLDER '/sns/sns.php';+
  exit;  exit;
  }  }
Строка 333: Строка 338:
  else {   else { 
  /* Если переменная $default_site равно "выбор в файле конфигуратора"   /* Если переменная $default_site равно "выбор в файле конфигуратора" 
- подключим в окне файл, указанный в config.ini*/ + перенаправить на страницу, указанную в config.php*/ 
- include FOLDER "/" . "$default_site" . "/" . "$default_site" .  ".php";+ header("Location: ./" . "$default_site" . "/");
  exit;  exit;
  }  }
  
 /* Если Переменные $file_config или file_exists не существуют, /* Если Переменные $file_config или file_exists не существуют,
-то перенаправим пользователя к файлу установщика install.php в  +то перенаправим на страницу установщика install.php */
-директорию  /ucms/library/install/  +
-*/+
 else {  else { 
- header("Location: ./library/install/install.php");+    header("Location: ./library/install/install.php");
  exit;  exit;
 + }
 +}
 ?> ?>
 </code> </code>
 +Откроем в браузере наш файл **/ucms/includes/config.ini**
  
-Проверим работу программы при созданных файлах **%%config.ini%%** и **%%version.php%%**, изменяя +{{:software:development:demo:cms:ucms:ucms_kernel_demo_book_30.png|}} 
-значения переменной **%%$default_site%%**  + 
-<code> +Как вы уже догадались мы закроем файл **config.ini** файлом **.htaccess** 
-$default_site "video";+ 
 +<code php .htaccess> 
 +запретим просмотр файлов с расширением .ini следующих файлов 
 +# (задается правило для перенаправления) 
 +# config.ini 
 +RewriteEngine On 
 +RewriteRule ^(config)\.ini- [R=403,L,NC]
 </code> </code>
 +
 +{{:software:development:demo:cms:ucms:ucms_kernel_demo_book_31.png|}}
  
 <note blue> <note blue>
software/development/demo/cms/ucms/index.1747070045.txt.gz · Последнее изменение: vladpolskiy