Метка: php

Установка imagick

Скачиваем сорцы ImageMagick ftp://ftp.chg.ru/packages/ImageMagick
Запускаем
./configure
make
make install

После этого устанавливаем imagick с помощью pecl
/usr/local/php5/bin/pecl install imagick

Ну и после этого добавляем в php.ini
[imagick]
extension=imagick.so

Ошибки в php

Поставил небольшой скриптик(BPanel для которого я оптимизер устанавливал) и опа… при попытке зайти открывается пустое окно. Как выяснилось было отключено отображение ошибок в php.ini. Для включения включаем display_error = On

Несколько слов о Zend Optimizer и HostPanel.biz

Оказалось, что по умолчанию оптимизер не установлен, поэтому проследовав по ссылке я его установил(там всё просто, достаточно распаковать архив и запустить install.sh) и перезапустил апачу. Но, phpinfo() показал, что оптимизер всё еще не установлен. Как оказалось modphp просто не нашел файл конфига php.ini, он его искал в /usr/local/lib. Поэтому потребовалось кинуть ссылку на php.ini в эту папку и всё заработало.

Кодировка баз данных MySQL

Кодировка utf8 является универсальной и поддерживает все существующие символы, и по сути своей становится стандартом дефакто. Поэтому логично и правильно переводить все сайты на эту кодировку.

Делаем, чтобы все конекты к MySQL были по умолчанию в кодировке utf8.

В /etc/my.cnf пишем:

[mysqld]
init-connect=”SET NAMES utf8″
collation-server=utf8_unicode_ci
default-character-set=utf8

[client]
default-character-set=utf8

Если необходимо чтобы сайт отображался всё-таки в кодировке cp1251, то в скриптах после подключения к бд отсылаем запрос ‘SET NAMES cp1251’

Для PHP это будет выглядеть примерно так:

$db_id = mysql_connect ($server$username$password);

mysql_query(‘SET NAMES cp1251’, $db_id);

PHP register_globals

По умолчанию глобальные переменные отключены. Почему это сделано можно прочитать на официальном сайте http://ru2.php.net/manual/ru/security.globals.php
В случае если всё-таки появляется необходимость включить их, можно прописать в .htaccess строку php_flag register_globals 1