我很难让PHP连接到Apache环境中的MySQL数据库。我试图自己解决这个问题,然而,我在这个问题上花了太多时间而没有解决问题。
在我的php.ini
文件中,我有以下内容(经过广泛研究后,这似乎是所需INI声明的共识):
; Directory in which the loadable extensions (modules) reside.
; extension_dir = "./"
extension_dir = "C:\php\ext"
extension=php5apache2_2.dll
extension=msql.dll
extension=php_mysql.dll
extension=php_mysqli.dll
mysql.default_port = 3607
mysqli.default_port = 3306
在我的Apache httpd.conf
文件中:
LoadModule php5_module "C:/php/php5apache2_2.dll"
ServerName localhost:80
DocumentRoot "C:/Apache2/htdocs"
AddType text/html .shtml
AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtml
extension=php_msql.dll
PHPIniDir "C:/php"
我有PHP 5.2.17,Apache 2.2.22(Wind32)和MySQL 5.2。
PHP脚本工作正常,包括<?php phpinfo(); ?>
。我可以使用MySQL Workbench来创建模式,表格,脚本等。
我在某处(在寻找答案的几个小时后)读到如果在PHPInfo页面中没有看到MSQL错误地安装了某些内容?我按照建议重新安装无济于事。我已启动/停止服务,在更改后定期重新启动以确保更改将会生效。
我正在使用Windows Vista的笔记本电脑上工作。当我尝试访问MySQL时,我得到了这个致命的错误:
致命错误:调用未定义的函数mysql_connect()
对于这个装置新手的任何帮助将不胜感激!
答案 0 :(得分:1)
我有类似的问题。事实证明它没有从php文件夹加载php.ini文件(是的,对吧)我检查了phpinfo说...
“配置文件(php.ini)路径”设置为“C:\ Windows”。将php.ini放在该目录中,呃瞧瞧。
...希望我安装了WAMP
答案 1 :(得分:0)
尝试以下
将 libmysql.dll 复制到路径 c:\ windows \ system32 。 该文件应位于C:\ php \ root文件夹中。重启你的电脑。
请参阅 在Windows下安装扩展程序 部分 http://php.net/manual/en/install.windows.extensions.php
答案 2 :(得分:0)
SUCCESS !!!!
我并不声称能为其他任何人提供解决方案,但是,这是经过多次旋转后最终为我工作的。我正在开发基于Windows Vista的环境FYI。
卸载:MySQL,Apache和PHP。确保所有相关服务不再运行且已被删除(通常卸载会解决此问题,但并非总是如此)。从本质上讲,清理石板。
转到(不确定是否允许这样做)www.WAMPServer.com我下载了这个组 Apache 2.2.22 - MySQL 5.5.24 - PHP 5.4.3 XDebug 2.1.2 XDC 1.5 PhpMyadmin 3.4.10.1 SQLBuddy 1.3.3 webGrind 1.0
安装时,我只需按照屏幕提示操作即可。
有一些配置设置如下: 在HTTPD.CONF
中ServerRoot (set according to where Apache is installed)
Listen 80
ServerName localhost:80
LoadModule php5_module "c:/wamp/bin/php/php5.4.3/php5apache2_2.dll"
* Note the above line - you may have to copy the dll into that directory if not there
#
# This should be changed to whatever you set DocumentRoot to.
#
# <Directory "c:/wamp/www/">
<Directory "C:/wamp/bin/apache/apache2.2.22/htdocs">
* Note - above line will be changed to match your htdocs directory
#
# "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin"
# CGI directory exists, if you have that configured.
#
<Directory "C:\wamp\bin\apache\apache2.2.22\cgi-bin">
* In the section <IfModule mime_module>
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
* Note at the end of the CONF file set the directory where the PHP.INI file is located
PHPIniDir "C:\wamp\bin\php\php5.4.3"
在PHP.INI文件中:
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
extension=php_pdo_sqlite.dll
在My.INI文件中:
# The MySQL server
[wampmysqld]
port = 3306
socket = /tmp/mysql.sock
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
basedir=c:/wamp/bin/mysql/mysql5.5.24
log-error=c:/wamp/logs/mysql.log
datadir=c:/wamp/bin/mysql/mysql5.5.24/data
[mysqld]
port=3306
之后我去了MySQL.com并下载了MySQL Workbench GUI工具。我使用它来创建数据库,模式,表等。首次使用工作台时,请确保您具有正确的端口#3306(或您的首选端口)。如果您创建用户和密码,请记住记下它们,因为它们将在您的“连接”声明中使用。
我差点忘了。确保两个dll位于PHP / Ext目录中php_mysql.dll和php_mysqli.dll我已经开始运行......我希望这有助于您解决问题。
最诚挚的问候, 特里