Неустранимая ошибка: вызов неопределенной функции mysql_connect () в C: \ Apache \ htdocs \ test.php в строке 2
Сегодня я провел 11 часов, пытаясь преодолеть эту ОДНУ проблему.
Я установил: MySQL 5.1 Apache 2.2.14 PHP 5.2.17
это были версии, упомянутые в книге «PHP и MySQL».
Когда я запускаю скрипт:
<?php mysql_connect ('localhost', 'root', 'password'); ?>
где localhost, root и password являются значениями REAL для данной тестовой системы, и все, что я видел, это:
Неустранимая ошибка: вызов неопределенной функции mysql_connect () в C: \ Apache \ htdocs \ test.php в строке 2
extension=php_mysql.dll
строки extension=php_mysql.dll
в файле «php.ini» и перезапустите Apache.
Кроме того, файл «libmysql.dll» должен быть доступен Apache, то есть он должен быть либо доступен в системах Windows PATH, либо в рабочем каталоге Apache.
Подробнее об установке расширения MySQL см. В руководстве .
PS Я бы посоветовал считать расширение MySQL устаревшим и использовать MySQLi или даже PDO для работы с базами данных (я предпочитаю PDO).
У меня была аналогичная проблема. Я решил это следующим образом после нескольких попыток следовать советам на форумах. Я отправляю решение, потому что это может быть полезно для других.
Я запускаю Windows 7 (Apache 2.2 и PHP 5.2.17 и MySQL 5.0.51a), синтаксис в файле «httpd.conf» (C: \ Program Files (x86) \ Apache Software Foundation \ Apache2.2 \ conf \ httpd.conf) был чувствителен к косе. Вы можете проверить, читается ли «php.ini» из правильного каталога. Просто введите ваш браузер «localhost / index.php». Код index.php следующий:
<?php echo phpinfo(); ?>
Существует строка (не далеко от вершины), называемая «Загруженный файл конфигурации». Таким образом, если ничего не добавлено, проблема может заключаться в том, что ваш «php.ini» не читается, даже вы без комментирования (расширение = php_mysql.dll и extension = php_mysqli.dll). Итак, чтобы сделать это, я сделал следующий шаг. Мне нужно было перейти от
PHPIniDir 'c:\PHP\'
в
PHPIniDir 'c:\PHP'
Обратите внимание, что последняя косая тревожала все!
Теперь строка «Загруженный файл конфигурации» получает «C: \ PHP \ php.ini» после обновления «localhost / index.php» (до того, как я перезапустил Apache2.2), а также блок mysql. MySQL и PHP работают вместе!
Измените файл database.php с
$db['default']['dbdriver'] = 'mysql';
в
$db['default']['dbdriver'] = 'mysqli';
У меня была та же проблема, и я использовал этот код ниже, и он работал:
<?php $link = mysqli_connect("localhost","root","") or die ("Couldn't not connect"); mysqli_select_db($link, "Enter your project name here"); ?>