No error messages returned when mysql_connect does not work for PHP on IIS

回眸只為那壹抹淺笑 提交于 2019-12-23 20:14:47

问题


I am new to PHP and MySQL and have recently installed both PHP v5.3.10 and MySQL v 5.5.21 on a Windows Server 2003 server already running IIS v6.

PHP runs and I have created a database on MySQL from the MySQL 5.5 Command Line Client. However, when I try to access the database from PHP with the following commands:

echo "Open database";
$link = mysql_connect($host, $username, $password);
echo " link: $link";
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db($db_name, $link)or die("cannot select DB");

echo " database open";

I get the following returned to the web page:

Open database

No error messages are produced and nothing after the mysql_connect command is returned from the PHP to the screen.

Also tried line below which also did not return any error messages:

mysql_connect($host, $username, $password) or die('Cannot connect:' . mysql_error());

Anybody have any ideas why I can't make a connection and can't get an error message back from mysql_connect command?

I have checked MySQL and I have tried defining the host as %, localhost, the local host IP and the IP:port number (from the port number 3306 listed in the my.ini) to no effect. I only have one username of 'root' created in mySQL with a single password (which I used when I opened MySQL to create the database)

The 'php.ini' I have placed in both the 'C:\Program Files\PHP' and 'C:\WINDOWS'.
This file contains 'extension_dir = "C:\Program Files\PHP\ext"' to specify the extension directory and includes the following at the end of the file:

[PHP_PDO_MYSQL]

extension=php_pdo_mysql.dll

[PHP_MYSQL]

extension=php_mysql.dll

[PHP_MYSQLI]

extension=php_mysqli.dll

Also I tried running phpinfo() and it returned the following table for mysqlnd:

mysqlnd                enabled 
Version                mysqlnd 5.0.8-dev - 20102224 - $Revision: 321634 $  
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  

So Is I assume the php should be able to connect.


回答1:


Try this:

ini_set('display_errors',1);
error_reporting(E_ALL);



回答2:


To mirror @Jrod:

  • is error_reporting on?
  • have you checked the error_log for the instance?

It sounds like something's failing and your error reporting isn't set high enough to show it. You might try addin this to the top of the script:

error_reporting(E_ALL);


来源:https://stackoverflow.com/questions/9604145/no-error-messages-returned-when-mysql-connect-does-not-work-for-php-on-iis

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!