Windows + PHP 5.3.6 - Неопределенная функция, mysql_connect? - PullRequest
2 голосов
/ 12 августа 2011

У нас есть совершенно новый веб-сервер, на котором мы установили Apache, затем PHP, указав его в каталог Apache и установив все дополнительные компоненты.Сейчас я пытаюсь подключить MySQL, и он отказывается.Мой PHP.ini перечисляет модуль как незакомментированный, и он находится в каталоге, в котором установлено мое расширение dir, но я просто продолжаю получать:

Fatal error: Call to undefined function mysql_connect() in C:\apache\htdocs\index.php on line 8

Я установил:

PHP: VC9 x86 Thread Safe (2011-Mar-22 13:27:32)

Apache: Apache 2.2

MySQL: Windows (x86, 64-bit), MSI Installer

Windows: Windows 7

Я добавил PHP в мою переменную PATH и у меня есть вывод phpinfo (), но я не уверен, что искать.Похоже, что все прочитанные мной документы указывают на то, что в PHP 5.3.x + поддержка MySQL / MySQLi должна быть включена по умолчанию.

mysqlnd phpinfo info:

mysqlnd
mysqlnd enabled
Version     mysqlnd 5.0.8-dev - 20102224 - $Revision: 308673 $
Compression     supported
SSL     supported
Command buffer size     4096
Read buffer size    32768
Read timeout    31536000
Collecting statistics   Yes
Collecting memory statistics    No
Tracing     n/a 

phpinfo информация о команде configure:

Configure Command   cscript /nologo configure.js "--enable-snapshot-build" "--disable-isapi" "--enable-debug-pack" "--disable-isapi" "--without-mssql" "--without-pdo-mssql" "--without-pi3web" "--with-pdo-oci=D:\php-sdk\oracle\instantclient10\sdk,shared" "--with-oci8=D:\php-sdk\oracle\instantclient10\sdk,shared" "--with-oci8-11g=D:\php-sdk\oracle\instantclient11\sdk,shared" "--enable-object-out-dir=../obj/" "--enable-com-dotnet" "--with-mcrypt=static" 

Информация о загруженном файле конфигурации phpinfo:

Configuration File (php.ini) Path   C:\Windows
Loaded Configuration File   C:\Program Files (x86)\PHP\php.ini 

Внутри этого, внизу:

[dba]
;dba.default_handler=

; Local Variables:
; tab-width: 4
; End:
[PHP_BZ2]
extension=php_bz2.dll
[PHP_CURL]
extension=php_curl.dll
[PHP_FILEINFO]
extension=php_fileinfo.dll
[PHP_GD2]
extension=php_gd2.dll
[PHP_GETTEXT]
extension=php_gettext.dll
[PHP_GMP]
extension=php_gmp.dll
[PHP_IMAP]
extension=php_imap.dll
[PHP_INTL]
extension=php_intl.dll
[PHP_LDAP]
extension=php_ldap.dll
[PHP_MBSTRING]
extension=php_mbstring.dll
[PHP_MYSQL]
extension=php_mysql.dll
[PHP_MYSQLI]
extension=php_mysqli.dll
[PHP_OPENSSL]
extension=php_openssl.dll
[PHP_PDO_MYSQL]
extension=php_pdo_mysql.dll
[PHP_PDO_ODBC]
extension=php_pdo_odbc.dll
[PHP_PDO_SQLITE]
extension=php_pdo_sqlite.dll
[PHP_PGSQL]
extension=php_pgsql.dll
[PHP_SOAP]
extension=php_soap.dll
[PHP_SOCKETS]
extension=php_sockets.dll
[PHP_SQLITE]
extension=php_sqlite.dll
[PHP_SQLITE3]
extension=php_sqlite3.dll
[PHP_TIDY]
extension=php_tidy.dll
[PHP_XMLRPC]
extension=php_xmlrpc.dll
[PHP_EXIF]
extension=php_exif.dll

РЕДАКТИРОВАТЬ: Итак, я поиграл с моим.ini немного, удаляя его, помещая мусор в него, и phpinfo () сохранял ту же информацию.Так что я выглядел очень усердно, и у меня установлен .ini upload_max_filesize на 200M, но phpinfo говорит, что 2M.Что дает?Это именно тот файл, который phpinfo пытается сказать мне, это .ini.

Ответы [ 2 ]

2 голосов
/ 31 июля 2012

Самая распространенная ошибка (особенно в Windows) - забыть установить путь "extension_dir" в файле php.ini. PHP по умолчанию предполагает C: \ php \ ext, тогда как многие предпочитают разархивировать PHP в C: \ Program Files \ PHP.

2 голосов
/ 12 августа 2011

Оказалось, что в файле конфигурации произошла ошибка синтаксического анализа из-за отсутствия в кавычках имени в Program Files (x86). Великий призыв Чарльза предложить запустить PHP из командной строки!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...