Я использую LAMPP с Ubuntu 64 бит. Когда я пытаюсь выполнить php-файл с помощью терминала, выдается неопределенная ошибка mysql_connect. Но все работает нормально, когда я использую браузер для загрузки моего php-файла. Я попытался отредактировать php.ini, удалив точку с запятой перед extension=mysql.so, а затем перезапустить lampp, но с ошибкой «невозможно загрузить динамическую библиотеку». Что я могу сделать, чтобы решить эту проблему? Это важно для меня, потому что мне нужно запустить мой php-скрипт с помощью crontab.
Спасибо.
PHP Fatal error: Call to undefined function mysql_connect() in /opt/lampp/htdocs/setrandomport-message.php on line 15
extension=msql.so
PHP Startup: Unable to load dynamic library '/opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/msql.so' - /opt/lampp/lib/php/extensions/no-debug-non-zts-20090626/msql.so: cannot open shared object file: No such file or directory in Unknown on line 0
решение1
Похоже, вы запутались, поскольку у вас две отдельные версии php.
У вас есть версия, которая была частью вашего пакета lampp, /opt/lampp/
и у вас есть php-cli, который вы установили через менеджер пакетов. Короткий ответ — просто установите модуль php5-mysql также через менеджер пакетов apt-get install php5-mysql
.
Вы не можете смешивать и сопоставлять модули между разными версиями PHP. Если вы решили иметь две отдельные установки, вы должны поддерживать их отдельно.