php mysql数据库 不能连接

php mysql数据库 不能连接
不知道怎么设置了

希望回的大神帮帮忙
谢谢啦这个是我的空间信息

这段代码要怎么填写有没有错误的地方、
<?phpreturn array( 'DB_TYPE'=>'mysql', 'DB_HOST'=>'localhost',198.148.94.23 'DB_PORT'=>'3306', 'DB_NAME'=>'wwwvii', 'DB_USER'=>'root',6 'DB_PWD'=>'root',328055 'DB_PREFIX'=>'tp_',);

问题一
今天给本本装上mysql和php,一切安装都很正常([email protected])。但用phpmyadmin连接测试时却出现“#2002无法连接”的错误,用其它程序也是同样问题。
检查了下,php的mysql扩展正确安装,mysql服务正常启动--那就奇了怪了。又用navicat连接,居然连上了。。看来是php和mysql间的通讯出了问题。
百度了一下,问题被揪出来了:
mysql_connect()函数数据库服务器(server)参数当前设置为localhost,但当其更改为127.0.0.1后又可以正常访问。
系统hosts文件未提供127.0.0.1到localhost的解析。
解决方法(以win7系统为例):找到C:\Windows\System32\drivers\etc\hosts文件,默认为只读,你需要复制一份到其他路径如桌面,打开文件(打开方式:记事本),在文件末尾添加:
127.0.0.1 localhost
如果已存在去掉其前面的“#”。
问题二

php脚本可以正常运行,如phpinfo()。
只要一出现“mysql_connect”函数,就没反应,也不报错。
如 $conn = mysql_connect("127.0.0.1","root","xxxx") or die("MYSQL数据库连接失败:".mysql_error());
apache日志目录error.log中出现
PHP Warning: PHP Startup: Unable to load dynamic library 'c:\\php\\ext\\php_mysql.dll'
解决办法
将“libmysql.dll”复制到apache的bin目录下。然后重启,观察error.log,如果错误消失,那恭喜了。
另:网上资料也有说将““libmysql.dll””“php_mysql.dll”复制到windows/system32的。

问题三

代码如下 复制代码
<?//以上代码省略
$link_id=@mysql_connect( "localhost ", "sampadm ", "secret ");
//以下代码省略
?>
运行时出现如下提示:
fatal error: call to undefined function mysql_connect() in var/www/html/mytest.php
解决方法
1.php.ini中
extension_dir设置为 "d:\apache2\php\ext "绝对路径,否则有些环境中会出错。
打开下面两行功能扩展
extension=php_mysql.dll
extension=php_mysqli.dll

2.拷贝libmysql.dll(php目录下)和php_mysql.dll(php/ext目录下)至c:\windows\system32目录下(libmysql.dll必须为php目录下,比如我的为D:\apache2\php目录下的libmysql.dll,php_mysql.dll则在D:\apache2\php\ext)

3.测试,
1> 先打开命令行
A)依次点击“开始”菜单-> “mysql”-> “mysql5 server”-> “MySQL Command Line Client”
//如此步成功则mysql安全成功,失效则mysql安装失败,请卸载后重装

B)输入密码
//此步正常则说明 root账户的密码正确。失败则账号密码有错

2> 新建文件至主目录,并保存为testmysql.php,接着在浏览器中输入http://localhost/testmysql.php (或者http://localhost:81/testmysql.php

如果不行查看一下apache是否加载了php与 mysql方法

apache中支置对php5的支持httpd.conf文件中加入下面三行
PHPIniDir "D:/ccopen/php5/"
LoadModule php5_module "D:/ccopen/php5/php5apache2_2.dll"
AddType application/x-httpd-php .php
php.ini中去掉下面两行分号
extension=php_mysql.dll
extension=php_mysqli.dll
将php_mysql.dll和libmysql.dll拷到system32
重起apache服务器
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-09
return array(

 'DB_TYPE'=>'mysql',

 'DB_HOST'=>'localhost',

 'DB_PORT'=>'3306',

 'DB_NAME'=>'wwwvii',

 'DB_USER'=>'root',

 'DB_PWD'=>'root',
 
 'DB_PREFIX'=>'tp_'
);

 首先,多余的去掉,无效的代码,

其次,DB_NAME ,DB_USER,DB_PWD,这些都是根据数据库设置来,name我不敢肯定,但user和pwd不可能全是root

追问

谢谢 那个用我那个空间要怎么填写比如是'DB_HOST'=>'localhost',198.148.94.23这样吗格式对不。

数据库是这么设置的但是连接不上

追答

'DB_HOST'=>'localhost',
或者
'DB_HOST'=>'198.148.94.23',

如果web空间和数据库空间不在同一个服务器上,那就应该用ip。
引号里面的表示一个值,就是一串字符,你如果明白php的语法就知道为什么不能那样写了.
另外,你这些的user怎么是个6,一般用户名有限制长度的,不过如果你能正常设置这个user和pass,那也没关系。

追问

我那个空间ftp上传帐号就是6啊你看我那个ftp的空间截图,谢谢啦,真的弄不明白了。

追答

数据库用户,和FTP用户,是不同的

本回答被提问者采纳
第2个回答  2014-01-09
这个DB_HOST一般就是要连接的数据库服务器的主机名或者IP地址,不能写成两个主机,默认是本地,也就是localhost,DB_USER是数据库用户名,默认是root,DB_PWD是root的密码,这三个变量后面的值要指定唯一值,所以后面的逗号和逗号后面的都是多余的,会导致错误,所以最后应该改成:
'DB_HOST'=>'localhost',
'DB_USER'=>'root',
'DB_PWD'=>'root',
其他地方都不动追问

谢谢 那个用我那个空间要怎么填写比如是'DB_HOST'=>'localhost',198.148.94.23这样吗格式对不。

数据库是这么设置的但是连接不上

追答

User为什么是6?

第3个回答  2014-01-09
你的账号密码是FTP的不是数据库的,主机名 两种写法应该都可以,你的空间供应商应该给你说过吧! 数据库的账号密码和服务器地址
第4个回答  2014-01-09
'DB_HOST'=>'localhost',198.148.94.23为何这么写,
'DB_HOST'=>'localhost'就好了哇
相似回答