.
МЕСТО ПОД РЕКЛАМУ
26 Октябрь 2020

PHP регурярное выражение — проверка на кириллицу

Повадились иностранные боты заполнять форму заказа на одном из сайтов всякими нерусскими данными.
Антикапчю пока вешать не стал — решил сделать простенькую проверку введённых данных на кириллицу (имя должно быть введено кириллицей)

Собственно, рабочий код в студию

рубрики: PHP | Комментарии (0)

8 Сентябрь 2020

Отправка почты с Битрикс CMS через Яндекс

Итак, на новом проекте — интернет магазин по продаже фотообоев даже после всех настроек почты, опубликованных ранее (пост 1, пост 2) почта на GMail, полученная с сайта всё равно улетала в спам 🙁

Я попробовал отправить с этого же сайта почту скриптом через Яндекс (домен уже был привязан через pdd.yandex.ru к Яндексу, MX запись так же была настроена) — и о чудо, сообщение без проблем пришло во входящее!

Далее стандартную функцию по отправке почты Битрикса я подменил на новую (путём объявления функции custom_mail в /bitrix/php_interfaces/init.php) и вуаля — теперь вся почта отправленная с Битрикса теперь отправляется через Яндекс Почту и не падает в спам!

Ссылочка на готовое решение — функция по отправке почты Битрикс через Яндекс
Готовое решение не моё — вот исходник, но сразу скажу, что там допущены две ошибки которые я пофиксил в своём варианте.

Отдельно о моментах, которые пришлось решать попутно

* Пришлось ставить composer, в связи с чем потребовалось включить php расширение phar — решение mv /etc/php.d/20-phar.ini.disabled /etc/php.d/20-phar.ini и рестарт браузера

wget https://getcomposer.org/composer.phar
chmod +x composer.phar
Далее, что бы Composer был доступен не только из папки, но и глобально в системе перемещаем его в папку /usr/local/bin/ командой mv
mv composer.phar /usr/local/bin/composer

* Для работы скрипта использовал скрипт PHPMailer + хорошая статья по данному скрипту
* Для работы imap_mime_header_decode используемой в скрипте потребовалось установить (именно установить а не включить) расширение php_imap (на centos команда yum install php_imap отработала корректно)

рубрики: Bitrix, PHP, Программирование | Комментарии (0)

10 Июль 2020

Моментально отдаем файл с помощью PHP

Пост из разряда «закладка»

Сразу сама функция по отдаче файлов

Взято отсюда https://habr.com/ru/post/151795/

рубрики: PHP, Полезности | Комментарии (0)

24 Январь 2020

Как значительно ускорить скорость загрузки сайта

Скорость загрузки сайта была улучшена с 7.9 секунд до 1.45 секунды!
Кому интересно — читаем 🙂

Преамбула — обратился ко мне клиент с просьбой ускорить загрузку сайта, т.к. ну уж очень медленно всё — более 7 секунд!!! на загрузку главной страницы
изначальная версия главной (для тестирования обновляем страницу со сбросом кэша браузера)
Реклама крутится — бабки ввалены, а с такой скоростью врят ли стоит чего то ловить…
Сайт — очень красивая лендинг простыня, с кучей красивой графики и всяких не менее красивых эффектов появления другой графики — в общем полный треш в плане веса страницы, со всеми вытекающими …
Причём именно для этого сайта тормознутость загрузки очень явно видна т.к. пока не прогрузится вся страничка на видимой части не всплывёт непосредственно главное содержание странички — заголовки и футболист! До этого страничка будет выглядеть пустой.



Все обычные советы — сжать и обрезать картинки, объединить и сжать css и js, поместить в конец страницы и прочие — всё это как слону дробина при таких объёмах графики на странице.
Начал изучать и нашел на хабре среди обычных один довольно интересный совет

Читать полностью »

рубрики: Bitrix, Javascript - JQuery, PHP, Лайфхак, Полезности, Программирование | Комментарии (0)

23 Январь 2020

VS Code — форматирование HTML кода в PHP файлах

Всем привет!

Собственно, в качестве среды программирования поставил себе Visual Studio Code и начал потихоньку настраивать.
Судя по отзывам — лёгкий, удобный, функциональный и главное — бесплатный!
Для старта глянул видос от ITDoctor обзор редактора и начал осваивать.

Первая проблема с которой я столкнулся это то, что редактор не форматирует html разметку в php файлах
В том же Битриксе все шаблоны создаются в *.php файлах соответственно, вся html разметка там же
Всё что нашел в рунете — а ля расширение phpfmt умеет, но нифига оно не форматирует 🙁

Решение подсказали на форуме cyberforum.ru — ветка

Расширение Format HTML in PHP справилось с поставленной задачей!

рубрики: PHP, Программирование | Комментарии (0)

20 Декабрь 2019

Обработка GET и POST параметров в PHP скриптах

Мини пост закладка (для себя), а то постоянно забываю и ищу эту фишку.

Для защиты входных параметров в скриптах можно использовать функцию

function formatstr($str)
{
$str = trim($str);
$str = stripslashes($str);
$str = htmlspecialchars($str);
return $str;
}

Либо встроенную в PHP фильтрацию
$str = filter_input( INPUT_GET, ‘str’, FILTER_SANITIZE_STRING);

рубрики: PHP | Комментарии (0)

8 Ноябрь 2018

PHP — как отправить файл POST запросом cURL

Собственно, задача — автоматизация процесса загрузки файла на сайты через веб-форму.
То есть на разные сайты мне нужно загрузить один и тот же файлик — захожу на сайт, выбираю нужный файл жму аплоад!
Список адресов сайтов с формой есть, файл конечно тоже — нужно автоматизировать!

Для реализации поставленной задачи решил использовать библиотеку curl, но вот с передачей файла возникла проблема — никак у меня не получалось отправить файл в форму!
Довольно долго рыл и нарыл таки рабочее решение
https://stackoverflow.com/questions/4223977/send-file-via-curl-from-form-post-in-php и оно же на другом ресурсе
https://exceptionshub.com/send-file-via-curl-from-form-post-in-php.html

Собственно, чел видимо затрахался как и я и решил передаваемые в POST данные сгенерировать самостоятельно с правильными заголовками.
Незнаю почему, но у меня в кодировке base64 ну никак не передавался, вернее передавался, но в такой кодировке и сохранялся 🙂 т.е. в закодированном виде, поэтому я несколько переделал скрипт до рабочего состояния (и увеличил кол-во передаваемых переменных для наглядности).

Получился такой код
Читать полностью »

рубрики: PHP, Полезности, Программирование | Комментарии (0)

Яндекс.Метрика