你的位置:
问答吧
-> PHP基础
-> 问题详情
如何解决这个'ODBC'@'localhost'错误
在localhost执行一个index.php文件是就出现下面的警告信息 ,不知道是是哪的问题 是不是config.inc.php设置不对呢
请高手帮忙看看 先谢谢了
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'ODBC'@'localhost' (using password: NO) in E:\php\xampplite\htdocs\user_db\user_db\inc\config.inc.php on line 17
Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in E:\php\xampplite\htdocs\user_db\user_db\inc\config.inc.php on line 19
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in E:\php\xampplite\htdocs\user_db\user_db\inc\config.inc.php on line 19
Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user 'ODBC'@'localhost' (using password: NO) in E:\php\xampplite\htdocs\user_db\user_db\inc\config.inc.php on line 20
Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in E:\php\xampplite\htdocs\user_db\user_db\inc\config.inc.php on line 20
Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user 'ODBC'@'localhost' (using password: NO) in E:\php\xampplite\htdocs\user_db\user_db\inc\session.inc.php on line 27
Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in E:\php\xampplite\htdocs\user_db\user_db\inc\session.inc.php on line 27
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user 'ODBC'@'localhost' (using password: NO) in E:\php\xampplite\htdocs\user_db\user_db\inc\session.inc.php on line 73
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in E:\php\xampplite\htdocs\user_db\user_db\inc\session.inc.php on line 73
E:\php\xampplite\htdocs\user_db\user_db\inc\user.inc.php: Zeile 17),Access denied for user 'ODBC'@'localhost' (using password: NO)
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user 'ODBC'@'localhost' (using password: NO) in E:\php\xampplite\htdocs\user_db\user_db\inc\session.inc.php on line 101
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in E:\php\xampplite\htdocs\user_db\user_db\inc\session.inc.php on line 101
(E:\php\xampplite\htdocs\user_db\user_db\inc\session.inc.php: Zeile 119),Access denied for user 'ODBC'@'localhost' (using password: NO)
谢谢大家的关注 问题已经解决 是 CONFIG.INC.PHP 的函数preg_match()参数 没写对 现在已经改好了
作者: daikof
发布时间: 2008-12-07
你用滴嘛程序?
作者: yafeikf
发布时间: 2008-12-07
数据库连接错误,你检查一下你的数据库连接配置文件
作者: sinopf
发布时间: 2008-12-07
很明显是数据库账号密码的问题~
作者: ThankPHP
发布时间: 2008-12-07
贴一下 配置文件原代码 请看一下
一个是 config.inc.php
[php]<?php
define('MY_DOC_ROOT', $_SERVER[DOCUMENT_ROOT] . dirname($_SERVER[SCRIPT_NAME]));
define('MY_INCLUDE_PATH', MY_DOC_ROOT.'/inc/');
define('MY_LOG_PATH', MY_DOC_ROOT.'/log/');
$cfg = new StdClass(); // configuration object
$reg = new StdClass(); // registry object
include (MY_INCLUDE_PATH. 'config.session.inc.php');
include (MY_INCLUDE_PATH. 'config.user.inc.php');
// store db connection in registry;
$reg->sess_db = mysql_connect(
$cfg->session->db->host
, $cfg->session->db->user
, $cfg->session->db->password
, false
);
mysql_query('SET NAMES "utf8"'); // set mysql communication chracter set
mysql_select_db($cfg->session->db->db_name);
// if multiple databases are in use
$reg->user_db = $reg->sess_db;
// FUNCTIONS *************************************************************
function is_included_file($filename) {
$files = get_included_files();
foreach($files as $k=>$f) {
if($k != 0 && strstr($f, "$filename")) {
return true;
}
}
return false;
}
function is_develop_server() {
return preg_match("/^infoserver$|^zinemuc\.dyndns\.org$/i",
$_SERVER['HTTP_HOST']);
}
function is_test_server() {
return preg_match("/infogate-muenchen\.de$/i",
$_SERVER['HTTP_HOST']);
}
function is_production_server() {
return preg_match("/friendly-hunting|join-oto\.(de|com)$/i",
$_SERVER['HTTP_HOST']);
}
// use instead of die and echo for debugging purposes
function self_log($msg) {
// global $header_log_count,
// $HTTP_SERVER_VARS;
// $header_log_count++;
// echo "X-Log" . $header_log_count . ": " . preg_replace("/\r\n|\r|\n/"," ", $msg) . "
";
// header("X-Log" . $header_log_count . ": " . preg_replace("/\r\n|\r|\n/"," ", $msg), false);
// chdir(dirname($_SERVER['SCRIPT_FILENAME']));
// $fl = fopen(MY_LOG_PATH . 'log.txt', 'a');
// fwrite($fl, "[" . date("Y-m-d H:i:s") . "] - [{$HTTP_SERVER_VARS[REMOTE_ADDR]}] - " . preg_replace("/\r\n|\r|\n|\s+/"," ", $msg) . " - [{$HTTP_SERVER_VARS[HTTP_USER_AGENT]}]\r\n");
// fclose($fl);
}[/php]
还有一个是 session.inc.php
$cfg->session = new StdClass();
// the name of the session to use in session_name()
$cfg->session->name = "DB_USER_SESS";
$cfg->session->db = new StdClass();
$cfg->session->lifetime = 60*60*24*366; // 1 year lifetime
//$cfg->session->lifetime = 10;
// local auf infoserver
if (is_develop_server()) {
// connection information
$cfg->session->db->host = 'localhost';
$cfg->session->db->user = 'root';
$cfg->session->db->password = '';
$cfg->session->db->db_name = 'db_user';
$cfg->session->db->table_name = 'sessions';
// test auf infogate-muenchen.de
} elseif (is_test_server()) {
$cfg->session->db->host = 'localhost';
$cfg->session->db->user = 'user';
$cfg->session->db->password = 'pw';
$cfg->session->db->db_name = 'db_name';
$cfg->session->db->table_name = 'sessions';
// production auf friendly-hunting
} elseif (is_production_server()) {
$cfg->session->db->host = 'db_host';
$cfg->session->db->user = 'user';
$cfg->session->db->password = 'pw';
$cfg->session->db->db_name = 'db_name';
$cfg->session->db->table_name = 'sessions';
}
作者: daikof
发布时间: 2008-12-07
using password: NO
这你都看不出?
密码错误,要不就是你的用户名写错了
作者: wy0933
发布时间: 2008-12-07
这个我已经调很多遍了 问题似乎不是那么简单的
作者: daikof
发布时间: 2008-12-07
作者: daikof
发布时间: 2008-12-08
config.inc.php 第二行 ... 改成 ...
[php]define('MY_DOC_ROOT', $_SERVER['DOCUMENT_ROOT'] . dirname($_SERVER['SCRIPT_NAME']));[/php]
这程序风格很老外 ... 不像中国人写的 ...
我很好奇完整的程序是做什么用的 ...
作者: Sunyanzi
发布时间: 2008-12-08
列害 , 是一个基础的用户系统 但是刚开始 还有好多地方还没完成, 所以先要在 localhost测试一下, 刚才改了一下代码(同上) 但是 还是不ok 请高手继续指点 谢谢了
作者: daikof
发布时间: 2008-12-08
你先在程序所在服务器上登录mysql试下,看看你的那个账号能不能登上
作者: bigbigworld
发布时间: 2008-12-08
可以登录 是不是 我给出的两个文件里面的代码有什么错误呢
作者: daikof
发布时间: 2008-12-08