Warning: mysql_connect(): Access denied for user''@'localhost' - 小众知识

Warning: mysql_connect(): Access denied for user''@'localhost'

2013年01月27日 14:18:05 苏内容
  标签: mysql
阅读:7328

Warning: mysql_connect(): Access denied for user''@'localhost' (using password: NO) in C:\ApaServ\php\includes\duibifun.php online 6

原因是在调用配置文件时无效,造成读取用户名和密码及数据库相关数据引起。

已经在php.ini文件中设置好了include_path =".;c:/ApaServ/php/includes",定义这个目录下的文件为全局变量。但在调用时,如:  require("myfun2.php");就是检测不到传入的参数,r user''@'localhost'  看到没有用户名,也说明了没有变量传进来,最简单的echo语句都不能读取到调用文件中定义的全局变量。

这个一开始我一直接以为是在配置文件中没有配置好数据库的用户和密码,这个在网上说的最多,也在一定程度上误导了我。

我在myfun2.php文件中,把所有的定义的变量前面都加上globle,结果还是一样的。我还把require("myfun2.php");这句改成myfun2.php所有的绝对路径也不行。这已经用了我好几天的时间,也没有找出问题所在。但今天我在用echo检测调用文件是否读取得的时候,发现没有真正把参数读进来,这时我只是查找配置文件,因为我把apache从2.0.58升级到2.2.22,把php从4.4.2升级到

5.4.7,把mysql3点几,升级到5.5.27,这个跨度很大,所以相关的文件改变也很大。

在我一筹莫展的时候,我看到duibifun.php文件,在<?后面有个php,而myfun2.php只是<?却没有php,我就顺手加上了,但我保存以后,php却没有跟duibifun.php中的php一样字体变成红色,就跟<?颜色一样,而是蓝色的,我把前面的空格去掉,保存完以后,我刷新了一下网页,让我冒血的一幕出现了,居然页面显示出来了,而且一个错误提示都没有。那一刻,一切又变得那么美好了。

  从这点上看,养成一个好习惯是多么重要!

扩展阅读