<MyRusakov.ru />

Создание движка на PHP и MySQL 2.0

Создание движка на PHP и MySQL 2.0

Видеокурс "Создание движка на PHP и MySQL 2.0" научит Вас создавать профессиональные движки для сайтов на PHP и MySQL с использованием ООП и паттерна MVC.

В курсе разобрана вся теория по структуре движка: как всё устроено, какие должны быть объекты, какая у них иерархия и как они взаимодействуют между собой.

В практической части будет создан движок с чистого листа. Будет создано ядро, все адаптеры, все вспомогательные классы, а также классы для работы с объектами базы данных. И чтобы курс был максимально полезным, будет создан движок для сайта MyRusakov.ru.

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

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

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

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

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

Каким движком Вы предпочитаете пользоваться?

Сокращение URL-адреса на PHP

Сокращение URL-адреса на PHP

Многие из Вас слышали про сервисы сокращения URL. В этой статье я решил рассказать, как это можно реализовать у себя на сайте. Где это может быть нужно? Например, если Вы где-нибудь в книге вставите ссылку, затем эту книгу распространите, а после Вам потребуется исправить адрес этой ссылки. Вот эту задачу мы сейчас с Вами и решим.

Для начала надо создать INI-файл с псевдонимами и соответствующим им адресами (shortlinks.ini):

myrusakov=http://myrusakov.ru
mail=http://mail.ru

Теперь создадим файл r.php, который и будет заниматься редиректами:

<?php
  $shortlinks = parse_ini_file("shortlinks.ini"); // Получаем массив данных из INI-файла
  if(isset($_GET["r"]) && array_key_exists($_GET["r"], $shortlinks)) { // Если передан правильный GET-параметр
    header("Location: ".$shortlinks[$_GET["r"]]); // Делаем редирект
    exit; // Завершаем скрипт
  } else {
    header("HTTP/1.0 404 Not Found"); // Если GET-параметра нет, или он отсутствует в INI-файле, то возвращаем 404
    echo "Error"; // Выводим ошибку
  }
?>

Теперь при переходе по такому адресу "http://mysite.ru/r.php?r=mail" будет сделан редирект на mail.ru. Однако, этот адрес не является красивым. Чтобы улучшить его внешний вид, можно воспользоваться .htaccess и модулем mod_rewrite:

RewriteEngine on
RewriteRule ^.*r/(.*)$ r.php?r=$1

Теперь Вы можете везде вставлять ссылку вида "http://mysite.ru/r/mail", а если вдруг Вам потребуется изменить её направление, то просто исправляете INI-файл.

Вот таким образом можно легко и быстро сделать сокращение URL-адреса на PHP.

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

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

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

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

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

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

  1. Кнопка:

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

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

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

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

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

rysich rysich 23.03.2014 01:15:18

Только в результате получится не сервис сокращения, а личная база уже сокращённых ссылок. Чтобы был сервис, нужен ещё алгоритм, который добавляет новые URL в ini-файл или в БД (потому как если коротких ссылок станет много, будет перерасход памяти в PHP). Ну и запрет на прямой доступ к ini-файлу в htaccess тоже бы не помешал... Но это уже наверное для тех, кто с нуля дошёл "до гуру" :) А для новичка, конечно, как всегда у Михаила, инструкция в статье дельная.

Ответить

kuzmin-kuk kuzmin-kuk 23.03.2014 22:53:26

Неплохо!

Ответить

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