Без рубрики

Создание ZIP архива с паролем в PHP

Следующая функция может запаковать в ZIP архив файл и установить пароль. Для создания ZIP архива используется встроенный архиватор ZIP Linux системы. Также у PHP скрипта должно быть разрешение на работу функции shell_exec. function createZip($fileName,$fileText,$zipFileName,$zipPassword) { $file = file_put_contents($fileName,$fileText); shell_exec(‘zip -P…
Read more

.htaccess для скрытия web в Yii2

Пример .htaccess для скрытия в роуте папки web при работе с Yii2: Options +FollowSymLinks IndexIgnore */* RewriteEngine on RewriteCond %{REQUEST_URI} !^/(web) RewriteRule ^assets/(.*)$ /web/assets/$1 [L] RewriteRule ^css/(.*)$ web/css/$1 [L] RewriteRule ^js/(.*)$ web/js/$1 [L] RewriteRule ^images/(.*)$ web/images/$1 [L] RewriteRule (.*) /web/$1…
Read more

CSRF защита входных данных и ее отключение в Yii2

По умолчанию в Yii2 используется защита от межсайтовой подделки запроса. То есть вы не сможете отправить POST запрос без согласия самого Yii2 (т.е токена который создается при отправке формы). Но бывают случаи когда POST запросы необходимо принимать (как пример входящие…
Read more

Портфолио. Tm-pay.com

Задача: Обновить сервис по приему и оплате платежей для пользователей туркменистана. Сделать более понятный интерфейс оплаты и улучшить бек систему администрирования для владельца сервиса. Решение: Было обновлено ядро проекта, переписан внутренний код сервиса и обновлена схема базы данных. Теперь добавлять…
Read more

Работа с ZIP в PHP. Распаковка.

Для работы с zip архивом необходимо поставить расширение PHP — ZIP. Поставить его вы можете через PECL. Проверить что все ок можно посмотрев phpinfo(), около zip должно стоять enabled. При помощи данного расширения можно как создавать архивы так и распаковывать их….
Read more

Портфолио. Сервис Webtenge.kz

Задача: обновить проекта обмена электронных валют в казахстане. Построить партнерскую программу, мигрировать все данные пользователей и десятки тысяч обменных операций на новый сервер. Итог: был разработан проект обменного сервиса на базе системы Sassoft.Exchange, обновлен дизайн проекта. Полностью переделана система администрирования…
Read more

X19 Ошибка 4 — неверная подпись. Возможное решение

Внезапно появилась проблема при отправке X19 запросов в Webmoney. Ответ выглядел как-то так: Error step 4 — проверка подписи не прошла. Ошибка при проверке подписи ClientPlanStr Далее кусок запроса. Поискав возможные пути решения в интернете нашел в чем может быть…
Read more

Динамическое изменение классов таблицы CGridView

Для изменения класса строк таблицы в CGridview yii1 можно воспользоваться следующим шаблоном: ‘rowCssClassExpression’ => function($row, $data) { // $row — номер строки // $data — модель данных if($data->amount > 0){ return ‘success’; } return ‘none’; }, Данный обработчик возвращает название…
Read more

Скрипт автоматизации FaucetBox

FaucetBox — система микроплатежей биткойн. Позволяет в автоматическом режиме проводить выплаты биткойн и сатоши при помощи специального API. Мною был разработан и внедрен специальный скрипт по выдаче сатоши бонусов через равные промежутки времени. Скрипт позволяет задать таргетинг по странам и…
Read more