Офис НП AMWAY в Ярославле
Купить продукцию Амвей в Ярославле, офис Amway
На карте Купить AMWAY: офис в ЯрославлеКонсультации, презентации, мастер–классы, знакомство с продукцией, заказ и выдача купленного товара:
Адрес: улица Валентины Терешковой, дом 1 (Вход со двора)
Телефон: +7 (920) 112-00-91
Email: matyxho@mail.ru
Сайт: https://www.amway.ru/user/lebedem
Визитка: http://yar.meweb.ru
FAQ (готовые сниппеты): PHPДобавить сниппет Авторизация Добавить сниппет
FAQ (готовые сниппеты) » PHP
Вернуться на предыдущую страницуВыводим сообщение пользователям устаревших браузеров Internet ExplorerВырезаем http:// и возможный слеш в конце адресаВырезать повторяющиеся символы из текста
Закрываем страницу (сайт) для поисковых роботовЛистинг всех файлов в директорииКонвертация тега переноса BR в символ новой строкиПроверка валидности email
Проверка заголовков, отдаваемых при запросе файла с сервераПросмотр исходного кода страницыПростая функция bb-кодовПростая функция типографа
Простой калькуляторПодсветка слов в текстеПолучаем адрес на карте GoogleПолучаем GIF- анимацию из видео
Удаление всех ссылок (url) из текстаФункция генерации нового названияФункция замены (скрытия) символов звездочкамиФункция преобразования размера файлов
Функция преобразования hex в rgbФункция проверки на целое числоФункция определения протокола сайтаФункция хэширования пароля
Вернуться на предыдущую страницу
Кнопка "Назад" средствами PHP
Код: PHP
    if (isset($_SERVER['HTTP_REFERER'])){
echo "<a href='".htmlspecialchars($_SERVER['HTTP_REFERER'])."'>Вернуться назад</a>";
}


Добавлено: Опубликовал  Pisatel Pisatel Добавлено  19 августа 2014 08:07:26 19. августа 2014
Теги сниппета: php referer server 

Вверх
Выводим сообщение пользователям устаревших браузеров Internet Explorer
Код: PHP
    if (isset($_SERVER['HTTP_USER_AGENT']) && preg_match("/msie [5-8]/i", $_SERVER['HTTP_USER_AGENT'])){
echo "Ваша версия браузера устарела!";
}


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Вырезаем http:// и возможный слеш в конце адреса
Код: PHP
    $url = "http://www.meweb.ru/articles.php";
$url = preg_replace("/(http(s*):\/\/|(\/.*)*)/", "", $url);
echo $url;
// выведет www.meweb.ru


Добавлено: Опубликовал  Pisatel Pisatel Добавлено  04 июня 2014 15:48:39 04. июня 2014 Последнее обновление:  05 июня 2014 14:40:08 05 июня 2014 14:40:08

Вверх
Вырезать повторяющиеся символы из текста
Вырезаем повторяющиеся многократно символы .......... или ??????? или )))))))) или !!!!!!!! или ((((((((, и оставляем только 3
Код: PHP
    function cleanText($text){
$text = preg_replace("#(\.|\?|!|\(|\)){3,}#", "\1\1\1", $text);
return $text;
}


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Закрываем страницу (сайт) для поисковых роботов
Этот небольшой фрагмент поможет не допустить вторжения поисковых роботов в ваши владения (официальных)
Код: PHP
    if (isset($_SERVER['HTTP_USER_AGENT'])) {
$bot = preg_match("/(yandex|google|msnbot|bingbot|mail|yahoo|rambler|aport|webcrawler|webalta)/i", htmlspecialchars($_SERVER['HTTP_USER_AGENT'], ENT_QUOTES)) ? TRUE : FALSE;
} else {
$bot = FALSE;
}

if ($bot) {
die("Доступ запрещен");
}


Добавлено: Опубликовал  Pisatel Pisatel Добавлено  04 ноября 2015 08:37:14 04. ноября 2015 Последнее обновление:  21 апреля 2016 09:33:54 21 апреля 2016 09:33:54
Теги сниппета: php php function яндекс yandex google 

Вверх
Листинг всех файлов в директории
Такой вот небольшой фрагмент кода покажет все файлы с заданным расширением в обозначенной директории
Код: PHP
// директория для листинга файлов

// можно задать любые расширения и пути, например
//$files = glob('/path/to/dir/*.xml');
$files = glob('*.php');
// задаем ссылки на все файлы с расширением .php
// чтобы задать исключения, делаем так
$files = array_diff($files, array('index.php', 'opendb.php'));

// то есть index.php и opendb.php в листинг не попадут

foreach ($files as $value) {
echo "<a href='http://www.meweb.ru/".$value."'>".$value."</a><br />";
}


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Конвертация тега переноса BR в символ новой строки
Код: PHP
    $text = preg_replace("/<br(\s*+)?\/?\>/i", "\n", $text);


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Проверка валидности email
Код: PHP
    $email = $_POST['email'];
$valid_email = preg_match("/~([a-zA-Zа-яА-Я0-9!#$%&'*+-/=?^_`{|}~])@([a-zA-Zа-яА-Я0-9-]).([a-zA-Zа-яА-Я0-9]{2,6})~/i", $email) ? "Верно" : "Неверно";


Добавлено: Опубликовал  Pisatel Pisatel Добавлено  19 августа 2014 10:40:42 19. августа 2014
Теги сниппета: php mail valid email 

Вверх
Проверка заголовков, отдаваемых при запросе файла с сервера
Делал загрузку описаний видео с youtube через их api и столкнулся с проблемой: как проверять, что мне отдает сервер, если введен неверный ID видео. Ответ оказался прост: читаем заголовки отдаваемые сервером, код 200- ок, остальные нам не нужны.
Код: PHP
    $api = 'http://gdata.youtube.com/feeds/api/videos/{ID}?v=2';
$headers = get_headers($api);
// ^ читаем заголовки
$youtube = strpos($headers[0], '200') ? simplexml_load_file($api) : '';
// если в первой строке есть код 200- загружаем xml файл
if (!empty($youtube)){
// здесь все манипуляции
} else {
// здесь то, что при ошибке
}


Добавлено: Опубликовал  Pisatel Pisatel Добавлено  30 июня 2014 18:34:18 30. июня 2014
Теги сниппета: php заголовок headers 

Вверх
Просмотр исходного кода страницы
С помощью данного кода можно просмотреть html код любой страницы сайта
Код: PHP
    $url = "http://www.meweb.ru/";
$lines = file($url);
foreach($lines as $line_num => $line){
echo "Строка #<b>{$line_num}</b> : ".htmlspecialchars($line)."<br />\n";
}


Добавлено: Опубликовал  FileMan FileMan Добавлено  04 июня 2014 16:54:50 04. июня 2014
Теги сниппета: php html исходный код 

Вверх
Простая функция bb-кодов
Код: PHP
    function bb_code($text){
$text = preg_replace("/\[b\](.*?)\[\/b\]/is", "<strong>\\1</strong>", $text);
$text = preg_replace("/\[i\](.*?)\[\/i\]/is", "<i>\\1</i>", $text);
$text = preg_replace("/\[u\](.*?)\[\/u\]/is", "<u>\\1</u>", $text);
$text = preg_replace("/\[s\](.*?)\[\/s\]/is", "<s>\\1</s>", $text);
$text = preg_replace('#\[url\]([\r\n]*)(http://|ftp://|https://|ftps://)([^\s\'\"]*?)([\r\n]*)\[/url\]#sie', "'<a href=\'\\2\\3\' target=\'_blank\' title=\'\\2\\3\'>'.(strlen('\\2\\3')>30?substr('\\2\\3', strlen('\\2\\3')-10, strlen('\\2\\3')):'').'</a>'", $text);
$text = preg_replace('#\[url\]([\r\n]*)([^\s\'\"]*?)([\r\n]*)\[/url\]#sie', "'<a href=\'http://\\2\' target=\'_blank\' title=\'\\2\'>'.(strlen('\\2')>30?substr('\\2', strlen('\\2')-10, strlen('\\2')):'').'</a>'", $text);
$text = preg_replace('#\[url=([\r\n]*)(http://|ftp://|https://|ftps://)([^\s\'\"]*?)\](.*?)([\r\n]*)\[/url\]#si', '<a href=\'\2\3\' target=\'_blank\' title=\'\2\3\'>\4</a>', $text);
$text = preg_replace('#\[url=([\r\n]*)([^\s\'\"]*?)\](.*?)([\r\n]*)\[/url\]#si', '<a href=\'http://\2\' target=\'_blank\' title=\'\2\'>\3</a>', $text);
return $text;
}


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Простая функция типографа
Код: PHP
 function typograf($text){
$search = array(" - ", "(c)", "(с)", "(r)", "(tm)");
$replace = array("&nbsp;&mdash;&nbsp;", "&copy;", "&copy;", "&reg;", "&trade;");
$text = str_ireplace($search, $replace, $text);
$text = nl2br($text);
return $text;
}
// применение
echo typograf($text);


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Простой калькулятор
Простейший калькулятор: сложение, вычитание, умножение, деление
Код: PHP
    $calc = "<form method='POST' action=''>";
$calc .= "Первое число <input type='text' name='a' value='5' /><br />";
$calc .= "Второе число <input type='text' name='b' value='5' /><br /><br />";
$calc .= "<input type='radio' name='operation' checked value='+'/>Сложение<input type='radio' name='operation' value='-'/>Вычитание
<input type='radio' name='operation' value='*'/>Умножение
<input type='radio' name='operation' value='/'/>Деление<br /><br />";
$calc .= "<input type='submit' name='vichislit' value='Вычислить'>&nbsp;";
$calc .= "<input type='reset' name='ochistit' value='Отменить'>";
$calc .= "</form>";
$result = "";
$error = "";
$vichislit = trim(htmlspecialchars($_POST['vichislit']));
$ochistit = trim(htmlspecialchars($_POST['ochistit']));
$a = trim(htmlspecialchars($_POST['a']));
$b = trim(htmlspecialchars($_POST['b']));
$radio = trim(htmlspecialchars($_POST['operation']));
if (isset($vichislit) && !empty($vichislit)){
$result .= "Результат&nbsp;";
if (is_numeric($a) && is_numeric($b)){
if ($radio == '+'){
$c = $a+$b;
$result .= "суммы: ".$a."+".$b."=".$c."<br />";
} elseif ($radio == '-'){
$d = $a-$b;
$result .= "разности: ".$a."-".$b."=".$d."<br />";
} elseif ($radio == '*'){
$e = $a*$b;
$result .= "произведения: ".$a."*".$b."=".$e."<br />";
} elseif ($radio == '/'){
$f = $a/$b;
$result .= "деления: ".$a.":".$b."=".$f;
} else {
$result .= "Произошла ошибка. Попробуйте еще раз.";
}
} else {
$error .= "Ошибка. Разрешены только цифры";
}
}
echo $calc.$result.$error;


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Подсветка слов в тексте
Пригодится, например, для подсветки слов при поиске. Данный пример "подсветит" точное совпадение meweb.ru
Код: PHP
    $text = "Самый лучший сайт- meweb.ru в сети! На сайте meweb.ru Вы, возможно, найдете что-нибудь интересное!";
$text = preg_replace("/b(meweb\.ru)b/i", "<span style='color:#ff0000;'>\\1</span>", $text);
echo $text;


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Получаем адрес на карте Google
Подойдет, например, чтобы отображать город на карте в профиле пользователя. Для начала- функция, чтобы преобразовать русские буквы (можете использовать свою)
Код: PHP
    function stripTitle($title){
static $convertTable = array (
'а' => 'a', 'А' => 'A', 'б' => 'b', 'Б' => 'B', 'в' => 'v',
'В' => 'V', 'г' => 'g', 'Г' => 'G', 'д' => 'd', 'Д' => 'D',
'е' => 'e', 'Е' => 'E', 'ё' => 'yo', 'Ё' => 'Yo', 'ж' => 'zh',
'Ж' => 'Zh', 'з' => 'z', 'З' => 'Z', 'и' => 'i', 'И' => 'I',
'й' => 'y', 'Й' => 'Y', 'к' => 'k', 'К' => 'K', 'л' => 'l',
'Л' => 'L', 'м' => 'm', 'М' => 'M', 'н' => 'n', 'Н' => 'N',
'о' => 'o', 'О' => 'O', 'п' => 'p', 'П' => 'P', 'р' => 'r',
'Р' => 'R', 'с' => 's', 'С' => 'S', 'т' => 't', 'Т' => 'T',
'у' => 'u', 'У' => 'U', 'ф' => 'f', 'Ф' => 'F', 'х' => 'h',
'Х' => 'H', 'ц' => 'ts', 'Ц' => 'Ts', 'ч' => 'ch', 'Ч' => 'Ch',
'ш' => 'sh', 'Ш' => 'Sh', 'щ' => 'shch', 'Щ' => 'Shch',
'ъ' => '', 'Ъ' => '', 'ы' => 'i', 'Ы' => 'I', 'ь' => '',
'Ь' => '', 'э' => 'e', 'Э' => 'E', 'ю' => 'yu', 'Ю' => 'Yu',
'я' => 'ya', 'Я' => 'Ya');
$title = strtr($title, $convertTable);
$title = str_replace(' ', '%20', $title);
return $title;
}



Ну и ссылка на изображение
Код: PHP
    $city = "Ярославль";
$location = "<img src='http://maps.googleapis.com/maps/api/staticmap?center=".stripTitle($city)."&amp;size=390x120&amp;maptype=roadmap&amp;sensor=false' alt='".$city."' />";
echo $location;


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Получаем GIF- анимацию из видео
Для работы у вас на сервере должна быть установлена библиотека ffmpeg:
Код: PHP
    $file = "myfile.avi";
$movie = new ffmpeg_movie($file);
$gif = new ffmpeg_animated_gif("image.gif",100, 100, 24);
for($frame = 150;$frame <= 200; $frame++){
$image = $movie -> getFrame($frame);
$gif -> addFrame($image);
}


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Удаление всех ссылок (url) из текста
Из раздела- "делать было нечего..." В общем, удаляем все ссылки из текста, этакая антиреклама
Код: PHP
    $text = "На нашем [ url=http://www.meweb.ru/articles.php]сайте[/url ] вы найдете полезные статьи. Так же на сайте http://www.meweb.ru/faq.php можно найти всевозможные сниппеты. Еще на сайте <a href='http://www.meweb.ru/forum/index.php'>http://www.meweb.ru/forum/index.php</a> есть форум, на котором можно задать вопросы. [ url]http://www.meweb.ru[/url ] - рекомендуем!";
function replaceUrl($text){
preg_match_all("#((\[url=.*?\].*?\[\/url\])|(\[url\].*?\[\/url\])|(<a\shref=[\r\n\'\"]*.*?[\r\n\'\"]*>.*?<\/a>)|(\shttps*:\/\/.*?[^\s]*)?)*#si", $text, $matches, PREG_PATTERN_ORDER);
if (count($matches[0])>0){
for($i=0; $i<count($matches[0]); $i++) {
$text = str_replace($matches[$i], "<strong> *реклама* </strong>", $text);
}
}

return $text;
}
// использование
echo replaceUrl($text);

// получилось:
// На нашем *реклама* вы найдете полезные статьи. Так же на сайте *реклама* можно найти всевозможные сниппеты. Еще на сайте *реклама* есть форум, на котором можно задать вопросы. *реклама* - рекомендуем!


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Функция генерации нового названия
Генерация нового названия, если файл с таким именем уже существует
Код: PHP
    function file_newname($path, $filename){
if ($pos = strrpos($filename, ".")) {
$name = substr($filename, 0, $pos);
$ext = substr($filename, $pos);
} else {
$name = $filename;
}
$newpath = $path."/".$filename;
$newname = $filename;
$counter = 0;
while (file_exists($newpath)){
$newname = $name."_".$counter.$ext;
$newpath = $path."/".$newname;
$counter++;
}
return $newname;
}


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Функция замены (скрытия) символов звездочками
Пригодится, например, для частичного скрытия номера телефона, пароля и т.д. Второй параметр- число символов, которые не будут скрыты
Код: PHP

function starOut($string, $number){
$star = "";
if (is_numeric($number) && $number < strlen($string)){
$star = str_repeat("*", (strlen($string) -$number)).substr($string, -$number, $number);
}
return $star;
}

// пример
$myphone = "+7(123)4567890";
echo starOut($myphone, 4);
// получим **********7890
$mypass = "Zdk7UMj9ft85";
echo starOut($mypass, 6);
// получим ******j9ft85


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Функция преобразования размера файлов
Код: PHP
    function parseByteSize($size, $digits = 2, $dir = false){
$kb = 1024;
$mb = 1024 * $kb;
$gb= 1024 * $mb;
$tb = 1024 * $gb;
if (($size == 0) && ($dir)){
return "Пусто";
} elseif ($size < $kb){
return $size."Байт";
} elseif ($size < $mb){
return round($size / $kb,$digits)."кБ";
} elseif ($size < $gb){
return round($size / $mb,$digits)."МБ";
} elseif ($size < $tb){
return round($size / $gb,$digits)."ГБ";
} else {
return round($size / $tb, $digits)."ТБ";
}
}


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Функция преобразования hex в rgb
Функция для преобразования цвета из формата hex в rgb
Код: PHP
    function hex2rgb($hex) {
$hex = str_replace("#", "", $hex);
if (strlen($hex) == 3) {
$r = hexdec(substr($hex,0,1).substr($hex,0,1));
$g = hexdec(substr($hex,1,1).substr($hex,1,1));
$b = hexdec(substr($hex,2,1).substr($hex,2,1));
} else {
$r = hexdec(substr($hex,0,2));
$g = hexdec(substr($hex,2,2));
$b = hexdec(substr($hex,4,2));
}
$rgb = array($r, $g, $b);
return implode(", ", $rgb);
}



Пример использования:
Код: PHP
    $hex = "#000000";
echo hex2rgb($hex); // выведет 0, 0, 0 во всех случаях
$hex = "000000";
echo hex2rgb($hex);
$hex = "#000";
echo hex2rgb($hex);
$hex = "000";
echo hex2rgb($hex); // то есть, функция принимает и сокращенный формат hex, и полный
// с # или без


Добавлено: Опубликовал  Pisatel Pisatel Добавлено  25 марта 2015 18:22:24 25. марта 2015

Вверх
Функция проверки на целое число
Данная функция взята из CMS PHP Fusion. Она весьма удобна при проверке, например, $_GET или $_POST запросов
Код: PHP
    function isnum($value) {
if (!is_array($value)) {
return (preg_match("/^[0-9]+$/", $value));
} else {
return false;
}
}



Пример использования
Код: PHP
    if (isnum($_GET['article_id'])){
echo "Верно";
} else {
echo "Переданный параметр не является числом";
}


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Функция определения протокола сайта
Код: PHP
    function getCatProtocol() {
if (!empty($_SERVER['HTTP_X_FORWARDED_PROTO'])) {
return $_SERVER['HTTP_X_FORWARDED_PROTO']."://";
} else {
return !empty($_SERVER['HTTPS']) ? "https://" : "http://";
}
}


Добавлено: Опубликовал  Pisatel Pisatel Добавлено  21 апреля 2016 09:32:15 21. апреля 2016
Теги сниппета: php php function http https протокол 

Вверх
Функция хэширования пароля
Код: PHP
    function hashPassword($strPass) {
$value = $strPass[1];
if(preg_match("/^[a-f]+/i", $value)) {
$salt = "!";
}
else {
$salt = "#";
}
if(preg_match("/^[g-m]+/i", $value)) {
$salt = "@";
}
if(preg_match("/^[n-s]+/i", $value)) {
$salt = "$";
}
if(preg_match("/^[t-z]+/i", $value)) {
$salt = "%";
}

$strPass .= $salt;
$hash = hash("sha512", $strPass); // sha512 - 128 символьная кодировка
return $hash;
}
// пример
$mypass = "12345678";
echo hashPassword($mypass);
// выведет 28b438d589b5b242095034f0eb65cd51dbf6add9bf439ae176b26b667ae16cb6836491275877a36e31d8e75e9102534d676cf719aac2c5a288bb801bae488fb7


Добавлено: Опубликовал  Pisatel Pisatel

Вверх
Последние активные темы форума
  Темы Просмотров Ответов Последние сообщения
folder Плагин Email рассылки Mail To All by Pisatel
CMS PHP Fusion
13245 33 promask
27. апреля 2019
folder Вопрос по переделке bb-кода
PHP, MySQL
3325 5 Pisatel
26. мая 2017
folder Вопросы по Ajax форме обратной связи
CMS PHP Fusion
13773 48 Ditrin
19. февраля 2017
folder BBCode YouTube Video Colorbox mod
CMS PHP Fusion
7703 2 Pisatel
10. декабря 2016
folder Как лучше создать собственную страницу?
CMS PHP Fusion
7049 17 Pisatel
11. мая 2016
folder Небольшие вопросы по скриптам магазина и катало...
PHP, MySQL
52687 80 Pisatel
11. января 2016
folder BBCode Code mod
CMS PHP Fusion
4024 0 Pisatel
31. августа 2015
folder Ajax Like Dislike Article Panel
CMS PHP Fusion
8154 16 Pisatel
07. июля 2015
folder Хлебные крошки / BreadCrumbs SEO Panel
CMS PHP Fusion
9189 17 Pisatel
04. июля 2015
folder Abbr Description BBCode
CMS PHP Fusion
3040 0 Pisatel
15. июня 2015
folder Подозрительный трафик и прочие страшилки
Всякая хрень
5694 2 Ditrin
23. апреля 2015
folder Мод Newsletter - рассылка писем пользователям с...
CMS PHP Fusion
7722 13 Pisatel
10. апреля 2015
folder Мод отправки писем PHPMailer для PHP-Fusion
CMS PHP Fusion
41247 113 Ditrin
06. апреля 2015
folder Появление неизвестного файла subscriptions.php
CMS PHP Fusion
3715 2 Pisatel
06. апреля 2015
folder Autoban on IP
CMS PHP Fusion
13623 13 Pisatel
03. апреля 2015