Latest Posts

PHP best practices — хранение паролей

PHP best practices — хранение паролей

Хеширование — стандартная модель хранения паролей. В её основе лежит какой-то алгоритм, который меняет строку вида 1234 на хеш вида ab3278abeh27jan2j37jdbb. Тем самым, пароль в явном виде узнать невозможно.
Зато можно ответить при авторизации на один вопрос: верен ли пароль что вводит пользователь или нет?

Тем самым мы прогоняем пароль 1234 нашей функцией и смотрим, получили ли мы хеш ab3278abeh27jan2j37jdbb или нет. Если получили, значит пароль верен и мы можем авторизовать пользователя.
Данная схема удобна, т.к никто не знает пароль в явном виде кроме пользователя.

Read more

Yii2: установка

Yii2: установка

Начинаю цикл short заметок для второй версии фреймворка Yii.

Основные требования к установке

  • PHP 5.4 +
  • SSH доступ (нужен для быстрой установки Yii при помощи менеджера зависимостей Composer)
  • Наличие сервера баз данных (если требуется работа с базой даных)

Быстрая установка

Шаг 1. Установка Composer

# curl -sS https://getcomposer.org/installer | php
# mv composer.phar /usr/local/bin/composer

Read more

Портфолио: обменный сервис 24обмен

Портфолио: обменный сервис 24обмен

Обменный сервис 24обмен проводит обменные операции для Qiwi,Bitcoin,Perfect Money,Яндекс.Деньги,Okpay,BTC-E коды.

Система работает в автоматическом и полуавтоматическом режиме.

1
Основные возможности скрипта:

  • Автообмен
  • Ручные обмены в случае ошибок автообмена
  • Расчёты резервов, комиссий платёжных систем
  • Модули новостей, отзывов клиентов.
  • Личный кабинет: система скидок клиентам, партнёрская программа.
  • Система администрирования, управление платёжными системами, логирование действий пользователей.
  • Гибкая система подключений платёжных систем

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Read more

JS confirm пример

JS confirm пример

JS confirm всплывающее окно для навешивания на ссылку:

<a onClick="if (!confirm('Вы уверены ?')) return false;" href="link">linkName</a>

 

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Read more

Полезные команды Ubuntu

Полезные команды Ubuntu

Список полезных команд для Ubuntu, чтобы были всегда под рукой.

  1. Удаление папки (рекурсивное)
    # rm -R folder
  2. Перезагрузка ОС, сервисов
    # service apache2 restart
    # service nginx restart
    # service php5 restart
    # reboot
  3. Создание папки
    # sudo mkdir folder
  4. Обновление пакетов
    # apt-get update
    # apt-get upgrade
  5. Просмотр php.ini
    # nano /etc/php5/apache2/php.ini
  6. Изменение часового пояса сервера
    # dpkg-reconfigure tzdata

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Read more

Скрипт магазина Digiseller

Скрипт магазина Digiseller

Digiseller предоставляет возможность продавать цифровые товары через специальную платформу Oplata.Info по средствам своего сайта и сайтов-партнёров.
Если вы хотите продавать цифровые товары на своем домене, то вам необходимо иметь специальный скрипт магазина в связке с Digiseller API.

Я предоставляю комплексное решение по созданию скрипта магазина на основе Digiseller.

Что входит в продукт?

Read more

DNS записи в Digital Ocean

DNS записи в Digital Ocean

Пример DNS записей для настройки панели в системе Digital Ocean:

Основные шаги

  1. Необходимо прописать NS адреса в той организации, у которой вы делегировали домен. (ns1.digitalocean.com ns2.digitalocean.com ns3.digitalocean.com)
  2. Далее настраиваем DNS панель:
    dns
  3. Сохраняем, через пару часов DNS записи будут включены.

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Read more

Перевод с экспоненциальной формы в числовую PHP

Перевод с экспоненциальной формы в числовую PHP

Задача: перевести  1e-8 в вид 0.00000001

Делается так:

$amount = number_format($amount,$percision,'.','');

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Read more

$_SERVER [&#039;REMOTE_ADDR&#039;] и связка Nginx+Apache

$_SERVER ['REMOTE_ADDR'] и связка Nginx+Apache

Если вы используете nginx в качестве прокси сервера вместе с апачем, то возможно сталкивались с проблемой записи IP адреса клиента в переменную REMOTE_ADDR.
Он записывает только IP адрес вашего сервера, а IP клиента отдаёт в переменную REAL_IP.

Чтобы исправить это необходимо сделать следующее:

  1.  Удаляем старый неподдерживаемый модуль rpaf.
    # apt-get remove libapache2-mod-rpaf
  2. Создаём remoteip.conf:
    # nano /etc/apache2/mods-available/remoteip.conf
    <IfModule mod_remoteip.c>
    RemoteIPHeader X-Real-IP
    RemoteIPInternalProxy 127.0.0.1
    RemoteIPInternalProxy xxx.xxx.185.66 // server ip ваш
    </IfModule>
  3. Включаем данную конфигурацию в Apache
    # a2enmod remoteip
    # service apache2 restart 

    Теперь REMOTE_ADDR будет отдавать реальный IP клиента.

    Read more

Форматирование даты в PHP

Форматирование даты в PHP

function parseDate($date){
  return date("d.m.Y", strtotime($date));
}

 

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Read more