<MyRusakov.ru />

WordPress 6 с Нуля до Гуру

WordPress 6 с Нуля до Гуру

Этот курс научит Вас созданию самых разных сайтов на самой популярной в мире CMS - WordPress. Вы увидите установку и настройку локального сервера, разбор каждой настройки, каждой кнопки и каждого пункта меню в панели WordPress.

Также Вы получите и всю практику, поскольку прямо в курсе с нуля создаётся полноценный Интернет-магазин, который затем публикуется в Интернете. И всё это прямо на Ваших глазах.

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

И, наконец, к курсу идёт ценнейший Бонус по тому, как используя ChatGPT и создавая контент для сайта, можно выйти на пассивный доход. Вы наглядно увидите, как зарегистрироваться в ChatGPT (в том числе, и если Вы из России), как правильно выбрать тему для сайта, как правильно генерировать статьи для него(чтобы они индексировались поисковыми системами) и как правильно монетизировать трафик на сайте.

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

PHP: безопасность. Подключение файлов.

PHP: безопасность. Подключение файлов.

Всем привет! В этой статье мы разберемся, как правильно подключать файлы в PHP.

Если вы разрабатываете свой движок, то вы можете сделать что-то вроде этого:

<?php
  if(!isset($_GET['show'])) {
   die();
  }

  $show = $_GET['show'];
  $content = file_get_contents("content/{$show}.php");
?>

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>File Includes</title>
</head>
<body>
  <?php echo $content; ?>
</body>
</html>

Здесь мы просто получаем данные из URL и подключаем нужный нам файл из папки content, добавляя к нему расширение .php. Казалось бы, что здесь может быть опасного? Чтобы разобраться с этим, давайте создадим папку app в корне нашего сайта и добавим в нее файл db.php, в котором пропишем следующее:

$db = new PDO('mysql;host=127.0.0.1;dbname=localhost', 'root', '12345');

Теперь зайдите на страницу, введите в URL следующее:

domain.com/site/?show=../app/db // вместо domain.com/site/ введите url своего сайта

Перед вами окажется пустая страница, но, если вы посмотрите в ее исходный код, то увидите там наше подключение к базе данных. Работает это очень просто: у нас есть файл index.php, в котором мы пишем код, есть папки app и content. С файла index.php с помощью функции file_get_contents мы запрашиваем введенную в URL страницу из папки content, но, если мы введем ../, это будет означать, что нужно подняться на уровень выше, мы выйдем в корень, оттуда перейдем в папку app, где и найдем нужный нам файл.

Чтобы такой проблемы не было, никогда не создавайте сайт таким образом. Если вы еще новичок и не знаете, как правильно делать движки для сайтов, то советую приобрести курс Создание движка на PHP и MySQL 2.0. Если же вам очень нужно делать именно так, то обязательно используйте проверки. К примеру, обезопасить наш сайт можно вот таким образом:

// ...
$show = $_GET['show'];
$allowed = ['main', 'card'];
$content = in_array($show, $allowed) ? file_get_contents("content/{$show}.php") : '';
// ...

Т.е. мы создаем массив, где указываем названия страниц, к которым можно получить доступ, а дальше делаем проверку, есть ли такая страница в списке. Если есть, то переходим на нее, иначе же просто выводим пустую строку.

Итак, на этом все. Спасибо за внимание!

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (1):

pudz pudz 28.11.2015 18:02:15

Если вы еще новичок и не знаете, как правильно делать движки для сайтов, то советую приобрести курс Создание движка на PHP и MySQL 2.0. Извините Михаил, но данный курс не подходит для новичков, скорей всего для более продвинутых разработчиков.

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.