После установки на сервер(Debian squeeze, apache2, php, mysql) своего сайта с удивлением обнаружил, что скрипты отказываются работать, выдавая такую ошибку: "
Fatal error: Call to undefined function mysqli_stmt_get_result()
". Оказалось, что для работы mysqli_stmt_get_result()
Нужен mysqlnd
, хотя в той же убунте он идет с php по умолчанию(по крайней мере в самой свежей). Пришлось пересобирать.Вот решение:
Сначала подключаем репозитории с www.dotdeb.org
nano /etc/apt/sources.list
Добавляем
deb http://packages.dotdeb.org squeeze all
deb-src http://packages.dotdeb.org squeeze all
Потом выполняем эти команды:
wget http://www.dotdeb.org/dotdeb.gpg
cat dotdeb.gpg | sudo apt-key add -
apt-get update
apt-get upgrade
apt-get install dpkg-dev
apt-get install php5-dev
cd /tmp
apt-get source php5
cd /tmp/php5-5.3.20/ext/mysqlnd
mv config9.m4 config.m4
sed -ie "s{ext/mysqlnd/php_mysqlnd_config.h{config.h{" mysqlnd_portability.h
phpize
./configure
cd /tmp/php5-5.3.20/ext/mysql
phpize
./configure --with-mysql=mysqlnd
make && make install
cd /tmp/php5-5.3.20/ext/mysqli
phpize
./configure --with-mysqli=mysqlnd
make && make install
После этого у меня всё заработало =).