Web Мастерская
Создание опроса/голосования на сайте (PHP)
Статья и код, что представлен в статье не мой, я его скопировал со своего старого форума (Форума уже нет).
Здравствуйте. Предлагаю Вашему вниманию инструкцию по созданию системы голосования на сайте.
Итак, давайте рассмотрим, что же представляет из себя система голосования на сайте.
Пользователь видит на странице форму, в которой присутствуют заголовок голосования, варианты ответов, из которых можно выбрать один, тот, за который пользователь хочет проголосовать.
После выбора пользователь нажимает кнопку "проголосовать" и система засчитывает его голос в пользу того или иного варианта ответа.
"Снаружи" вроде всё просто: обычная форма, обычная кнопка, обычные radio-кнопки. Но давайте заглянем "за кулисы" работы скрипта голосования. Там нашему взору откроется более интересная картина.
Что же представляет из себя система голосования изнутри?
Как можно запоминать выбор пользователя и не давать ему голосовать повторно?
Как создавать вопросы и варианты ответов?
На эти вопросы мы сейчас...
Здравствуйте. Предлагаю Вашему вниманию инструкцию по созданию системы голосования на сайте.
Итак, давайте рассмотрим, что же представляет из себя система голосования на сайте.
Пользователь видит на странице форму, в которой присутствуют заголовок голосования, варианты ответов, из которых можно выбрать один, тот, за который пользователь хочет проголосовать.
После выбора пользователь нажимает кнопку "проголосовать" и система засчитывает его голос в пользу того или иного варианта ответа.
"Снаружи" вроде всё просто: обычная форма, обычная кнопка, обычные radio-кнопки. Но давайте заглянем "за кулисы" работы скрипта голосования. Там нашему взору откроется более интересная картина.
Что же представляет из себя система голосования изнутри?
Как можно запоминать выбор пользователя и не давать ему голосовать повторно?
Как создавать вопросы и варианты ответов?
На эти вопросы мы сейчас...
- Жалоба
Определить размер изображения на PHP
Здравствуйте.
Хочу рассказать, как при помощи PHP можно определить размер картинки, ширину и высоту.
Для определения размера, существует функция getimagesize(), которая измерит ширину и высоту картинки, вернет результат массивом.
Вот пример, как использовать функцию:
В примере приведена переменная
Приведу еще пример, с использованием функции list(). Данная функция назначит переменным значения взятые из списка подобно массиву.
Если есть необходимость получить только два первых значения массива, то есть ширину и высоту, то делаем так:
...
Хочу рассказать, как при помощи PHP можно определить размер картинки, ширину и высоту.
Для определения размера, существует функция getimagesize(), которая измерит ширину и высоту картинки, вернет результат массивом.
Вот пример, как использовать функцию:
$img_info = getimagesize($img);
В примере приведена переменная
$img
, которая должна содержать в себе местонахождение картинки и конечно сам файл. Переменная $img_info
- это массив из четырех значений:
$img_info[0]
- ширина картинки (px).$img_info[1]
- высота картинки (px).$img_info[2]
- флаг типа изображения.$img_info[3]
- содержит в себе сразу и ширину и высоту, пример:width="100" height="100"
(px).
Этот элемент массива можно использовать в теге IMG.
Приведу еще пример, с использованием функции list(). Данная функция назначит переменным значения взятые из списка подобно массиву.
Если есть необходимость получить только два первых значения массива, то есть ширину и высоту, то делаем так:
list($width, $height) =
Удалить слеш в конце URL
Вчера написал код, который проверяет есть ли в конце текущего URL слеш (
Сам код:
Если надо удалять слеш только у одно файла, скажем у файла blog.php, то замените условие:
на:
А если требуется обратное - везде слеш удалять, а файл blog.php должен остаться со слешем, то условие будет таким:
Еще один способ удаления слеша в конце URL, при помощи .htaccess:
...
/
) и если есть, удаляет, затем перенаправляет на этот же адрес, но уже без слеша в конце.
Сам код:
# Удаление слеша в конце URL
if (basename(substr($_SERVER['REQUEST_URI'], -1) == '/'))
{
$request_url = rtrim($_SERVER['REQUEST_URI'], '/');
header('Location: https://' . $_SERVER['HTTP_HOST'] . $request_url, true, 301);
exit;
}
Если надо удалять слеш только у одно файла, скажем у файла blog.php, то замените условие:
if (basename(substr($_SERVER['REQUEST_URI'], -1) == '/'))
на:
if (basename($_SERVER['SCRIPT_FILENAME']) == 'blog.php' and substr($_SERVER['REQUEST_URI'], -1) == '/')
А если требуется обратное - везде слеш удалять, а файл blog.php должен остаться со слешем, то условие будет таким:
if (basename($_SERVER['SCRIPT_FILENAME']) != 'blog.php' and substr($_SERVER['REQUEST_URI'], -1) == '/')
Еще один способ удаления слеша в конце URL, при помощи .htaccess:
# Deleting slash
RewriteCond
Система плагинов для своего сайта на PHP
Здравствуйте.
Недавно на одном форуме помогал реализовать систему плагинов для одного сайта, и теперь хочу тут поделиться решением, которое предложил я. Система проста до безобразия, но прежде чем разбирать исходник, давайте разберемся, что такое плагин и для чего он нужен.
Плагины — это способ расширить возможности функционала своего сайта, без внесения правок в исходный код движка. Установка плагина занимает очень мало времени, порой для установки требуется только залить один файл в папку плагинов.
Теперь переходим к созданию самой системы плагинов. Создаем папку, куда будем заливать все свои плагины, например plugins. Наша задача получить содержимое этой папки, для этого будем использовать функцию scandir(). Затем в цикле foreach() будем проверять соответствует ли файл нашим требованиям, и если да, то подключаем файл при помощи функции include().
Код системы плагинов:
...
Недавно на одном форуме помогал реализовать систему плагинов для одного сайта, и теперь хочу тут поделиться решением, которое предложил я. Система проста до безобразия, но прежде чем разбирать исходник, давайте разберемся, что такое плагин и для чего он нужен.
Плагины — это способ расширить возможности функционала своего сайта, без внесения правок в исходный код движка. Установка плагина занимает очень мало времени, порой для установки требуется только залить один файл в папку плагинов.
Теперь переходим к созданию самой системы плагинов. Создаем папку, куда будем заливать все свои плагины, например plugins. Наша задача получить содержимое этой папки, для этого будем использовать функцию scandir(). Затем в цикле foreach() будем проверять соответствует ли файл нашим требованиям, и если да, то подключаем файл при помощи функции include().
Код системы плагинов:
$dir = 'plugins/'; # Создаем переменную с именем каталога, где будут находится все плагины
$files =
Как проверить переменную в PHP
Работая над скриптом может потребоваться проверить, какую-то переменную, имеет ли она значение или она неопределенна. Это проверка необходима, чтобы избежать ошибок вида: Notice: Undefined variable. А также выполнять, ту или иную задачу в зависимости от состояния переменной.
В данном уроке представлено несколько вариантов, как проверить переменную.
Рассмотрим первый вариант. Проверка будет осуществляться при помощи функции isset(). Данная функция, как раз создана для того, чтобы проверять переменную, существует она или нет. Возвращает false - если переменная не существует, и вернет true - если переменная существует. Значение переменной может быть каким угодно, кроме null.
Пример проверки переменной:
Код из примера выведет значение переменной
В данном уроке представлено несколько вариантов, как проверить переменную.
Рассмотрим первый вариант. Проверка будет осуществляться при помощи функции isset(). Данная функция, как раз создана для того, чтобы проверять переменную, существует она или нет. Возвращает false - если переменная не существует, и вернет true - если переменная существует. Значение переменной может быть каким угодно, кроме null.
Пример проверки переменной:
if (isset($variable))
{
// Если переменная существует, то выполняется, какое-то действие, например:
echo $variable;
}
Код из примера выведет значение переменной
$variable
на экран, если переменная существует и она не равняется null. Если переменная неопределенна, то на экране...