Ошибка PHPMyAdmin — configuration storage is not completely configured
Ошибка PHPMyAdmin — configuration storage is not completely configured
Для решения данной проблемы нужно отредактировать файл /etc/phpmyadmin/config.inc.php и прописать техническую таблицу phpmyadmin.
1) Прописываем таблицу phpmyadmin:
cd /usr/share/doc/phpmyadmin/examples sudo gunzip create_tables.sql.gz mysql -u root -p < create_tables.sql mysql -u root -p -e 'GRANT SELECT, INSERT, DELETE, UPDATE ON phpmyadmin.* TO 'pma'@'localhost' IDENTIFIED BY "pmapassword"'
2) Редактируем config.inc.php:
Timezone для сервера (Ubuntu+PHP+MySQL)
Timezone для сервера (Ubuntu+PHP+MySQL)
Меняем правильную тайм зону для PHP интерпретатора.
Открываем INI конфигурацию:
/etc/php/apache2-php5.4/php.ini
Ищем запись с data.timezone и ставим нужный часовой пояс:
date.timezone = Europe/Moscow
Меняем часовой пояс на Ubuntu.
Текущая дата на сервере:
date
Текущий часовой пояс:
more /etc/timezone
Чтобы поменять часовой пояс нужно вызвать:
sudo dpkg-reconfigure tzdata
Следуйте инструкциям приложения, в конце локальное время сервера будет скорректировано.
Тестирование приватных методов в PHPUnit
Тестирование приватных методов в PHPUnit
Для тестирования приватных методов класса через PHPUnit можно воспользоваться специальным классом ReflectionClass, забрать нужный приватный метод и сделать его доступным. Все это делается динамически и при помощи таких движений можно тестировать абсолютно любые методы класса разной области видимости.
Приведем пример:
$class = new ReflectionClass('Parser');
// Метод взятия страницы приватный, его нам надо протестировать
$method = $class->getMethod('getPage');
// Ставим область видимости
$method->setAccessible(true);
$parser = new Parser(['login'=>'mylogin' , 'password'=>'mypassword']);
// Проверим что данная страница парсится
$result = $method->invoke($parser, 'http://myurl.com');
// Далее уже делаем различные asserts и так далее
Лимиты на загрузку файлов в php.ini
Лимиты на загрузку файлов в php.ini
Лимиты на загрузку файлов PHP необходимо искать в настройках php.ini и менять по требованию:
post_max_size = 50M
Показывает возможный объем загрузки файлов за один POST запрос.
upload_max_filesize = 50M
Показывает максимальный объем одного файла при загрузке на сервер.
memory_limit = 256M
Максимально возможное выделение памяти на выполнение работы скрипта.
Translation component для Yii
Translation component для Yii
Чтобы не упустить перевести все метки в Yii первой версии имеется соответсвующие событие OnMissingTranslation.
Оно позволяет задавать нужный handler для обработки пропущенных переводов.
Достаточно написать компонент для этого:
class Translation extends CApplicationComponent
{
public static function handler($messageEvent)
{
Yii::log("'" . $messageEvent->message . "' => '',", 'info', $messageEvent->category . '.' . $messageEvent->language);
}
}
OpenPGP и режим PHP-CLI
OpenPGP и режим PHP-CLI
При установке расширения OpenPGP скорее всего записи об установке и конфигурационные файлы будут обновлены только для настроек интерпретатора при работе через nginx, apache и тд
Расширение не ставится по умолчанию для консольной работы PHP.
Чтобы прописать пусти и настройки OpenPGP необходимо открыть php-cli / php.ini и там вручную прописать расширение и указать путь до so файла:
The partition with /var/lib/mysql is too full! — решение Ubuntu
The partition with /var/lib/mysql is too full! — решение Ubuntu
Проблема возникает когда места на диске кончается и запустить MySQL невозможно.
Нужно почистить диск, удалив старые логи, архивы и тд.
Мне помогла команда:
sudo apt-get clean
Функция получения баланса любого адреса Bitcoin
Функция получения баланса любого адреса Bitcoin
При помощи сервиса Blockchain.info можно узнавать финальный баланс запрашиваемого bitcoin адреса просто обратившись через GET запрос к серверу блокчейна.
Для этого мы просто напишем функцию, которая будет отправлять запрос и выдавать json данные по финальному балансу адреса:
function getAddressInfo($address)
{
$data = @file_get_contents('https://blockchain.info/ru/rawaddr/'.$address);
$data = json_decode($data);
return $data;
}
Теперь чтобы получить баланс нужно дать на вход адрес и вытащить final_balance:
Записи от которых прошло 5 минут — MySQL
Записи от которых прошло 5 минут — MySQL
SQL запрос получения выборки данных, от которых прошло 5 минут после создания:
SELECT * FROM `table` WHERE (`date` + INTERVAL 5 MINUTE) < NOW()
Leave a Comment
Vagrant power off — все машины одной командой
Vagrant power off — все машины одной командой
Отключить все vagrant машины одной командой:
for VM in `VBoxManage list runningvms | awk '{ print $2; }'`; do VBoxManage controlvm $VM poweroff; done