Базовый ФАК по SSI
(Basic SSI FAQ)
Перевод. Оригинал тут:
http://www.simplemachines.org/community/index.php?topic=12936.0
В данном ФАКе мы предлагаем Вам ознакомится с основами SSI и возможностями применения технологии SSI в Вашем проекте.
Данный ФАК освещает часто задаваемые вопросы по SSI и дает на них ответы в виде советов и приемов. В конце сообщения вы можете найти текстовые примеры рассмотренных скриптов.
Все вопросы и впечатления, а также обсуждения данного материала можно оставлять в данной теме.
!ВАЖНО: НЕ ИЗМЕНЯЙТЕ ФАЙЛ 'SSI.PHP'!(Все описанное ниже делается без каких-либо изменений в данном файле)
SSI - Server Side Includes (Включения на Стороне Сервера) - это набор функций, которые позволяют связать ваш форум с остальными страницами на Вашем сайте и использовать другие возможности форума, такие как статистика, новости, обсуждения, последние сообщения и т.д. на страницах вашего сайта.
Как SSI может мне помочь?Если вы ищете способ применения SSI давайте рассмотрим следующий пример.
У вас есть сайт и, соответственно, форум и вы хотите, чтобы пользователи, вошедшие на форум, видели отдельную область закачки.
Именно для чего-либо подобного и необходимо применение SSI. Реализация займет несколько минут.
Как мне начать использовать SSI?Первое. Создаем у себя на сайте новый .php файл. Затем открываем его в текстовом редакторе и прописываем в него следующий код:
<?php
require("/home/simple/public_html/forum/SSI.php");
?>Очень важно указать правильный путь к Вашему файлу 'SSI.php', который обычно находится в корневом каталоге Вашего форума. Правильный путь вы можете посмотреть в начале файла 'ssi_examples.php', который также находится в корневом каталоге Вашего форума.
Я добавил путь к файлу 'SSI.php". Что теперь?Итак вы добавили путь к файлу 'SSI.php" и сохранили созданный Вами файл.
Далее мы попробуем добавить какую-нибудь возможность на страницу(в меню, список On-line) вашего сайта. Вставьте нижепреведенный код в созданный Вами файл после 'require("YOUR_PATH_TO_SSI.php");'
ssi_menubar();Теперь просмотрим созданный файл в браузере. Если все сделано правильно вы увидите меню форрума. Если же ничего не сработало или появилось сообщение об ошибке, значит вы неправильно указали путь к файлу 'SSI.php' в первой строчке.
Итак. теперь мы имеем небольшое представление о том как SSI работает и как он может пригодится. Вы можете ознакомится со всем набором функций SSI в файле 'ssi_examples.php', который также находится в корневом каталоге Вашего форума.
Что еще можно сделать используя SSI?Как уже говорилось SSI имеет большое количество функций. Сейчас мы рассмотрим работату с правами пользователей.
Пример: У вас есть сайт и, соответственно, форум и вы хотите, чтобы пользователи, вошедшие на форум, видели отдельную область закачки.
Это делается без каких-либо проблем с использованием всего лишь php оператора 'if':
<?php
require("YOUR_PATH_TO_SSI.php");
if ($context['user']['is_guest'])
{
echo
'<h5>Доступ запрещен</h5>
У Вас нет прав для просмотра данной страницы.';
}
else
{
echo
'<h5>Здравствуйте, ', $context['user']['name'], '!</h5>
Это страница закачек:';
}
?>Несколько комментариев по работе данного примера. В примере использыется оператор 'if'. Если выражение (в данном случае $context['user']['is_guest']) ИСТИННО,то активируется первый блок операторов, если же выражение ЛОЖНО, то выполняется блок 'else'.
В нашем примере - если пользователь не вошел на форум, то выражение принимает значение ИСТИННО и отображается сообщение об отсутсвии прав для просмотра страницы. Если же пользователь вошел на форум, то отобразится страница закачек.
Можно сделать похожее с Администратором:
if ($context['allow_admin'])
{
Блок операторов
}
else
{
Блок операторов
}Вот Вы и дочитали до конца Базовый ФАК по SSI.
Если есть желание можно продолжить освоение SSI перейдя к Углубленному ФАКу по SSI (Advanced SSI FAQ)
В прикрепленных файлах находится код еще нескольких небольших примеров.
-Lamper
От переводчика:
Если данный ФАК помог вам и ответил на ваши вопросы, или наоборот у вас появились вопросы, а также если вы нашли неточности или ошибки, вы можете обсудить его в данной теме.
Также следует отметить, что вышеприведенный перевод, довольно таки вольный... Но идеи и мысли сохранены.
Также хочется отметить следующее. В общем смысле слова SSI - не совсем то что тут описано. Дело в том, что SSI реализуется в принципе на стороне именно сервера, то есть это какой-либо набор команд включенный именно в ! сервер.
В данном же случае это реализуемо через файл, содержащий нужные функции для форума. Или точнее сказать для связи форума и других страничек...
Вот также интересная ссылка, иллюстрирующая работу SSI:
http://www.simplemachines.org/community/ssi_examples.shtml