Архив рубрики: php решения

Разработка на PHP

В данном разделе расположены все новшества с работой на PHP которые помогут вам создать лучший адаптивный сайт! Читаем и учимся!

Отлов 500-х ошибок

define(‘E_FATAL’, E_ERROR | E_USER_ERROR | E_PARSE | E_CORE_ERROR | E_COMPILE_ERROR | E_RECOVERABLE_ERROR); define(‘ENV’, ‘dev’); //Custom error handling vars define(‘DISPLAY_ERRORS’, TRUE); define(‘ERROR_REPORTING’, E_ALL | E_STRICT); define(‘LOG_ERRORS’, TRUE); register_shutdown_function(‘shut’); set_error_handler(‘handler’); //Function to catch no user error handler function errors… function shut(){ $error = error_get_last(); if($error && ($error[‘type’] & E_FATAL)){ handler($error[‘type’], $error[‘message’], $error[‘file’], $error[‘line’]); } } function handler( $errno, $errstr, $errfile, $errline ) { switch ($errno){ case E_ERROR: // 1 // $typestr = ‘E_ERROR’; break; case E_WARNING: // 2 // $typestr = ‘E_WARNING’; break; case E_PARSE: // 4 // $typestr = ‘E_PARSE’; break; case E_NOTICE: // 8 // $typestr = ‘E_NOTICE’; break; case E_CORE_ERROR: // 16 // $typestr = ‘E_CORE_ERROR’; break; case E_CORE_WARNING: // 32 // $typestr = ‘E_CORE_WARNING’; break; case E_COMPILE_ERROR: // 64 // $typestr = ‘E_COMPILE_ERROR’; break; case E_CORE_WARNING: // 128 // $typestr = ‘E_COMPILE_WARNING’; break; case E_USER_ERROR: // 256 // $typestr = ‘E_USER_ERROR’; break; case E_USER_WARNING: // 512 // $typestr… Читать далее »

Как установить php5 и php7 на Ubuntu 18.04 LTS

PHP — рекурсивная аббревиатура для гипертекстового процессора. Это язык сценариев общего назначения с открытым исходным кодом, который широко используется в веб-разработке благодаря его способности встраиваться в HTML. Язык сценариев используется для написания заранее написанных программ, которые впоследствии используются для автоматизации задач. PHP-скрипты обычно используются в Linux, Unix, Windows, Mac OS и других операционных системах. Когда вы используете PHP в веб-разработке, вы можете выбрать свой веб-сервер и основную операционную систему. В этой статье описана пошаговая процедура установки версий PHP 5.6 и 7.2 на Ubuntu. После установки двух версий мы также объясним, как можно отключить одну версию и включить в системе другую версию как версию по умолчанию. Мы запустили команды и процедуры, упомянутые в этой статье, в системе Ubuntu 18.06 LTS. В этой статье мы используем командную строку Ubuntu, Terminal, для установки и настройки PHP. Вы можете открыть приложение «Терминал» через системную черту или сочетание клавиш Ctrl + Alt + t. Официальный… Читать далее »

Скрипт для перевода текста на PHP через Google Translate

Не так давно Google закрыл API для своего Google Translate, в результате множество скриптов для автоматического перевода текста просто перестали работать. Программисты вынуждены были написать скрипт, который парсит переведенный текст из самого переводчика. Этот класс может переводить тексты между двумя языками с помощью Google Translate. Он может послать HTTP запрос на сайт и перевести текст между двумя заданными языками. Класс парсит возвращенную Google Translate страницу результата и возвращает переведенный текст извлеченный из страницы. Качаем класс переводчика использующий Google Translate Пример использования <?php error_reporting(E_ALL ^ E_NOTICE); include(‘translate.class.php’); $x = new translator_text(); $text = ‘Al Hotel Demo si vive in armonia con se stessi, immersi nel verde di una natura rigogliosa, con i boschi di pini, querce e tamerici in un terreno a terrazze sul mare. Il Villaggio Turistico è un moderno centro di vacanze, concepito e costruito per rispondere a tutte le esigenze dei suoi ospiti.’; echo'<meta http-equiv=»Content-Type» content=»text/html; charset=UTF-8″>’; echo $x->translate(strip_tags(trim($text)), ‘it’, ‘ru’); ?>… Читать далее »

Работа с регистрами в php

      Комментарии к записи Работа с регистрами в php отключены

Работа с регистрами в php заключается в том чтобы привести строку к тому или иному виду, для работы со строками используются такие функции как: Название функции: mb_strtolower — Приведение строки к нижнему регистру Как используется: string mb_strtolower ( string $str [, string $encoding = mb_internal_encoding() ] ) Название функции: strtoupper — Приведение строки к верхнему  регистру Как используется: string strtoupper ( string $string ) Название функции: ucwords — Преобразует в верхний регистр первый символ каждого слова в строке Как используется: string ucwords ( string $str [, string $delimiters = » \t\r\n\f\v» ] )   Пример использования: ucwords($key);

Отправка email через SMTP с авторизацией по протоколу SSL на php

      Комментарии к записи Отправка email через SMTP с авторизацией по протоколу SSL на php отключены

Отправка email через SMTP с авторизацией по протоколу SSL на php Данная статья посвящена отправке e-mail через SMTP с авторизацией по протоколу SSL с помощью скрипта на php. SMTP с авторизацией по протоколу SSL. Яндекс При работе с почтальонами Яндекс ни чего не изменилось, но, при обращении к классу, требуется указывать ссылку на хост, работающий через SSL. Так же изменился номер порта: раньше был 25, теперь используется 465. Код отправки выглядит вот так: require_once «SendMailSmtpClass.php»; // подключение класса $mailSMTP = new SendMailSmtpClass(‘test@yandex.ru’, ‘****’, ‘ssl://smtp.yandex.ru’, ‘test’, 465); // $mailSMTP = new SendMailSmtpClass(‘логин’, ‘пароль’, ‘хост’, ‘имя отправителя’); // заголовок письма $headers= «MIME-Version: 1.0\r\n»; $headers .= «Content-type: text/html; charset=utf-8\r\n»; // кодировка письма $headers .= «From: test <test@test.ru>\r\n»; // от кого письмо $result = $mailSMTP->send(‘test@yandex.ru’, ‘Тема письма’, ‘Текст письма’, $headers); // отправляем письмо // $result = $mailSMTP->send(‘Кому письмо’, ‘Тема письма’, ‘Текст письма’, ‘Заголовки письма’); if($result === true){ echo «Письмо успешно отправлено»; }else{ echo «Письмо… Читать далее »

get_site_url()

      Комментарии к записи get_site_url() отключены

get_site_url() с версии 3.0 get site url Получает URL сайта. Функция возвращает опцию siteurl: get_option(‘siteurl’). Также устанавливает протокол сайта: https — если срабатывает is_ssl() или http. Можно принудительно указать протокол в параметре $scheme. Указывая адрес блога, мы может переместить все файлы WordPress в отдельный каталог. Делается это для удобства, когда пользователю мешают файлы WordPress в основном каталоге и их хотелось бы убрать в подкаталог основного каталога. Как это сделать читайте здесь. Используйте эту функцию, когда нужно получить URL адрес WordPress, а не URL адрес сайта (см. Общие настройки). Для получения адреса сайта, используйте функцию home_url(). Используется в: site_url(), get_admin_url().✈ 1 раз = 0.000067с = очень быстро | 50000 раз = 2.20с = быстро Хуки из функции: return apply_filters( ‘site_url’, $url, $path, $scheme, $blog_id ); Возвращает ссылку на сайт. Использование Шаблон использования $site_url = get_site_url(); $blog_id(число) ID блога. По умолчанию: текущий блог (null) $path(строка) Пусть к странице сайта, который будет добавлен… Читать далее »

WordPress и сессия ($_SESSION)

      Комментарии к записи WordPress и сессия ($_SESSION) отключены

WordPress и сессия  или как заставить работать session_start в WP как и на чистом php. Создавая шаблон на WordPress через какое-то время, я понял, что стандартный session_start() в WP не хочет работать. И как оказалось это не является багом движка, сессии в самом движке (как и практически дургие переделанные функции в WordPress) отсикаются специально, но все равно данное ограничение можно обойти. Открываем наш шаблон и создаем новый или открываем уже существующий файл function.php (данная темадолжна быть включена как активная в админке сайта). function.php обязан находиться в корне нашего шаблона (wp-content/themes/<название самой темы>) куда добавим наш код: add_action(‘init’, ‘omyblog_init_session’, 1); if ( !function_exists(‘omyblog_init_session’)): function omyblog_init_session() { session_start(); } endif; В первой строчке указываем на повышенный приоритет нашей созданной функции, и поэтому вызов нашего кода будет происходить для всего шаблона. После данных не хитрых манипуляции можно пользоваться $_SESSION, как на простом чистом php.

Генерация QR кода в приложениях на PHP

      Комментарии к записи Генерация QR кода в приложениях на PHP отключены

Как проходит Генерация QR кода? QR коды набирают популярность все больше и больше благодаря возможности использовать огромный объем данных в одном изображение и распространению через смартфоны, с помощью которых можно обеспечить быстрое сканирование и декодирование информации. Двумерный полосовой код был изобретен в Японии. Данный код под потенотом, но создатель решил сделать его общедоступным В этом уроке мы узнаем как быстро сгенерировать QR код с помощью PHP. Для создания кода будем использовать библиотеку PHP QR Code, которая не привязана к другим библиотекам. Создаем первый QR код Для начала скачиваем библиотеку PHP QR Code с GitHub. Затем распаковываем его на хостинг, где будем тестировать его, например https://Mysite.ru/phpqrcode, для запуска демонстрации. Заполняем текстом поле ввода и получаем изображение соответствующего QR кода. Для работы приложения требуется PHP с расширением GD2. Использовать библиотеку на своих сайтах очень просто: <?php include «phpqrcode/qrlib.php»; // Создаем и выводим QR код с текстом QRcode::png(«My First QR Code»); С помощью двух… Читать далее »

Краткий список WYSIWYG редакторов

      Комментарии к записи Краткий список WYSIWYG редакторов отключены

Как то понадобился WYSIWYG редактор, я знал о его функционале, но не знал как правильно его искать. Через какое-то время он нашелся… И чтобы облегчить работу себе и остальным ниже приведен список. TinyMCE Одним из популярных визуальных редакторов, обладает большим функционалом. Присутствует множество дополнений, по умолчанию идет в сборке множество плагинов. (Браузеры: Mozilla 1.3+, MSIE 5.5+, Opera 9.0+, Safari, Chrome) [Официальный сайт | Демо] CKeditor Полностью повторяет функционал TinyMCE. (Браузеры: Firefox 1.5+, Opera 9.50+, Safari 3.0+, Camino 1.0+, Internet Explorer 5.5+, Google Chrome) [Официальный сайт] CLEditor Незамудренный визуальный редактор, не балует своим функционал, но функционал осуществлен качественно и без ошибок. (Браузеры: Firefox 1.5+, Opera 9.50+, Safari 3.0+, Camino 1.0+, Internet Explorer 5.5+, Google Chrome) [Официальный сайт] NicEdit Очень схож с CLEditor. Включает в себя стандартный функционал. (Браузеры: Firefox 1.5+, Opera 9.50+, Safari 3.0+, Internet Explorer 5.5+, Google Chrome) [Официальный сайт] elRTE Достаточно качественный визуальный редактор.Широкий функционал и качественное осуществление. (Браузеры:… Читать далее »

Пример загрузки файлов на сервер (upload) на языке php

      Комментарии к записи Пример загрузки файлов на сервер (upload) на языке php отключены

Для загрузки файлов на сервер используется приложение которое представляет собой HTML-форму (uploads.html) и скрипт uploads.php для ее обработки. Заметка: Вы сможете так же загрузить промышленную версию системы загрузки файлов на сервер из раздела downloads. Image Java Editor позволяет нам не только загрузить любой файл на сервер, но и изменить его размер, фон и др. Код формы (uploads.html) <html> <head> <title>Загружаем файлы на сервак</title> </head> <body> <h2><p><b> Загрузка файлов </b></p></h2> <form action=»uploads.php» method=»post» enctype=»multipart/form-data»> <input type=»file» name=»filename»><br> <input type=»submit» value=»Добавить»><br> </form> </body> </html> Код для обработки формы (uploads.php) <html> <head> <title>Насколько загрузился файл</title> </head> <body> <?php if($_FILES[«filename»][«size»] > 1024*3*1024) { echo («Размер превышает 3 мбайта»); exit; } // Проверяем загрузился ли if(is_uploaded_file($_FILES[«filename»][«tmp_name»])) { // Если файл загрузился, то перемещаем его // из временной директории в постоянную move_uploaded_file($_FILES[«filename»][«tmp_name»], «/path/to/file/».$_FILES[«filename»][«name»]); } else { echo(«Ошибка «); } ?> </body> </html> Атрибут entype формы позволяет определяить вид кодировки, которые применяются браузером к параметрам формы. Для… Читать далее »