Web Мастерская Блог
Сообщество Web Мастеров. Тут собрано всё, чтобы написать свой первый сайт, запустить его в Интернет и поддерживать его в течении всей его работы.
Автозамена слов в тексте (Анти Мат) на PHP
Недавно пришлось написать PHP скрипт Анти Мата для одного своего проекта. Скрипт получился несложным, небольшим, но отлично справляется со своей задачей. И так, я использовал функцию str_replace(), данная функция заменяет заданные слова/фразы найденные в тексте на те которые заданы для замены. Дальше получаем текст в переменную
Тут конечно у Вас будет свой набор слов/фраз, можно добавить больше заменяемых слов. Теперь пишем то слово, которое будет заменять найденные слова из массива в тексте:
Ну а теперь собственно сам процесс поиска и замена слов в тексте:
После этого можно выводить значение переменной
Теперь соберем весь код нашего Анти Мата в одну кучу,...
$text
, создаем массив с запрещенными словами, то есть слова, которые надо сменить на другое слово или фразу. Делаем так:
$censor = array(
'BIOS',
'работоспособность',
'материнская плата',
);
Тут конечно у Вас будет свой набор слов/фраз, можно добавить больше заменяемых слов. Теперь пишем то слово, которое будет заменять найденные слова из массива в тексте:
$replace = '<b>[censor]</b>';
Ну а теперь собственно сам процесс поиска и замена слов в тексте:
$text = str_replace($censor, $replace, $text);
После этого можно выводить значение переменной
$text
на экран, где текст будет уже исправлен!
Теперь соберем весь код нашего Анти Мата в одну кучу,...
- Жалоба
Добавление данных в Базу Данных через форму (PHP + MySQL)
В этом посте хочу рассказать, как передать в Базу Данных, введенные данные в форму. И так мы создаем простую форму, где у нас будет два поля: имя пользователя и его электронная почта:
Эта форма может применятся для регистрации нового пользователя, для рассылки новостей, для сбора статистики, да для чего угодно... В общем в эту форму пользователь забивает свои данные: имя и почту, нажимает на кнопку и дальше данные переходят в php скрипт:
Что же в этом скрипте происходит? Сейчас разберемся!
Введенные в...
<form name:"forma" action="index.php" method="post">
Ваше имя: <input type="text" name:"name"><br />
Ваш E-mail: <input type="text" name:"email"><br />
<input name:"submit" type="submit" value="Отправить">
</form>
Эта форма может применятся для регистрации нового пользователя, для рассылки новостей, для сбора статистики, да для чего угодно... В общем в эту форму пользователь забивает свои данные: имя и почту, нажимает на кнопку и дальше данные переходят в php скрипт:
$name = $_POST['name'];
$email = $_POST['email'];
$result = mysqli_query("INSERT INTO user (name, email)
VALUES ('$name', '$email')");
if ($result) {
echo "Данные успешно сохранены!";
}
else {
echo "Произошла ошибка, пожалуйста повторите попытку.";
}
Что же в этом скрипте происходит? Сейчас разберемся!
Введенные в...
Обрезать строку до и после определенного символа (PHP)
Была необходимость разобрать строку на куски до и после определенного символа.
Я разбирал URL на части до и после слеша (
Вот как я это сделал:
Забил URL в переменную:
В данном URL (как и в любом другом) есть несколько слешов
Дальше разбиваю URL на подстроки, до и после слеша:
Строка разбивается на следующие подстроки:
...
Я разбирал URL на части до и после слеша (
/
), для скрипта редиректа внешних ссылок, что бы вытащить домен сайта. Разбивал строку при помощи функции explode(), данная функция для этого и предназначена, что бы строки разбивать на подстроки.Вот как я это сделал:
Забил URL в переменную:
$value = 'https://www.google.com/doodles/claude-debussys-151st-birthday';
В данном URL (как и в любом другом) есть несколько слешов
/
, что мне и надо, они та и будут служить мне тем символом, по который строка будет обрезаться.
Дальше разбиваю URL на подстроки, до и после слеша:
$domain = explode('/', $value);
Строка разбивается на следующие подстроки:
https:
, www.google.com
, doodles
, claude-debussys-151st-birthday
, у каждой подстроки есть свой порядковый номер, начиная с ноля (массив). Получается так:
echo $domain[0]; # Выводит на экран - https:
echo $domain[1]; # Выводит на экран - (пустая строка, так как между двумя
Удалить слеш в конце 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 =
- Apache 6
- CMS 3
- CSS 12
- FTP 1
- HTML 10
- JavaScript 32
- MySQL 16
- Nginx 7
- PHP 41
- phpMyAdmin 2
- SVG 3
- URL 1
- XML 3
- Безопасность 4
- Библиотека JS 12
- Графика 1
- Доменное имя 1
- Инструкция 1
- Кодировка 2
- Контент 6
- Мнение 2
- Монетизация сайта 2
- Настройка 3
- Оптимизация 2
- Ошибка 7
- Поисковая система 1
- Продвижение сайта 6
- Софт 1
- Старт 2
- Функция 1
- Хостинг | Сервер 3