Nikolas Jíša Nikolas Jíša - 5 months ago 23
PHP Question

Call to undefined function mysql_connect

I just installed PHP and Apache on my home PC. When I try to call function

mysql_connect
I get:

fatal error: call to undefined function mysql_connect.


I have loaded php.ini where I have uncommented lines
extension=php_mysql.dll
and
extension=php_mysqli.dll
and changed extension directory to
extension_dir = "C:\php\ext"
- which is the directory where files php_mysql.dll and php_mysqli.dll are. How can I fix this problem?

Output of phpinfo():
http://jsfiddle.net/MMTwA/

Answer

After looking at your phpinfo() output, it appears the mysql extensions are not being loaded. I suspect you might be editing the wrong php.ini file (there might be multiple copies). Make sure you are editing the php file at C:\php\php.ini (also check to make sure there is no second copy in C:\Windows).

Also, you should check your Apache logs for errors (should be in the \logs\ directory in your Apache install.

If you haven't read the below, I would take a look at the comments section, because it seems like a lot of people experience quirks with setting this up. A few commenters offer solutions they used to get it working.

http://php.net/manual/en/install.windows.extensions.php

Another common solution seems to be to copy libmysql.dll and php_mysql.dll from c:\PHP to C:\Windows\System32.

Comments