Home >Backend Development >PHP Tutorial >Common dos commands Technical notes on solving the problem that PHP cannot connect to MySQL under the DOS command line

Common dos commands Technical notes on solving the problem that PHP cannot connect to MySQL under the DOS command line

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-07-29 08:44:071127browse

It just so happened that my friend xjb also encountered this problem today, so I wrote this note to record the description and solution of the problem.
Problem description: Using the web method, you can connect to mysql, but under the command line, it prompts:
 Fatal Error: undefined function mysql_connect()
 Environment: Windows 2003, PHP 5.2.0, MYSQL 5.0, Apache 2.0
 In php. ini, the module option of php_mysql.dll has been turned on; the test script is also very simple, just a mysql_conect function, the content is as follows:

Copy the codeThe code is as follows:


php.ini:
extension =php_mysql.dll
The content of the test script test.php is as follows:
text.php
if ( !mysql_connect(DBHOST, DBUSER,DBPWD) )
{
echo "Connection failed!";
exit;
}
echo "Connection successful!t";
?>


Use web mode to call http://localhost/test.php, it executes normally and displays "Connection successful".
  But use dos command line to call d: /php/php.exe test.php shows that the connection failed. The error message is: Fatal Error: undefined function mysql_connect()
 Obviously, in the dos command line environment, the mysql module is not called. I tried all the methods, but still couldn't solve it. I was puzzled. Later, I wrote a script to see the php configuration and the difference in the two environments:
test.php

Copy code Code As follows:


echo phpinfo();
?>


Carefully check the php configuration information input by phpinfo() in the two environments, and finally found the problem:
Web method http://localhost When called in /test.php mode, its Configuration File (php.ini) Path is displayed as C:WINDOWSphp.ini.
DOS COMMAND command line mode d:/php/php.exe When test.php is called, its Configuration File (php.ini) Path is d:phpphp.ini.
 There is a php.ini file in both the c:windows and d:php directories. The php.ini in the d:php directory does not open the extension=php_mysql.dll module. So I deleted d:phpphp.ini and kept only c:windowsphp.ini, and the problem was solved.
 Summary: When installing php under windows, in order to avoid configuration file confusion, after copying the php.ini in the installation directory to the windows directory, the php.ini file in the original installation directory should be renamed or deleted to avoid causing problems. When executing in different environments, inconsistencies in the search configuration files may occur. The cause of the problem is usually very simple, but the process of finding and troubleshooting it is quite annoying.

The above introduces the technical notes on common DOS commands to solve the problem that PHP cannot connect to MySQL under the DOS command line. It includes the content of common DOS commands. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn