【问题标题】:ADODB not connectingADODB 连接不上
【发布时间】:2013-04-01 02:13:03
【问题描述】:

我在两个站点上使用了 ADOdb。第一次它完美无缺,第二次,除了站点使用不同的数据库和登录信息之外,一切都一样,而且它似乎甚至没有尝试连接。

使用不正确的表名或登录信息,不会导致错误输出或任何事情。

这是我的代码:

$DBTYPE = 'mysql';
$DBHOST = '***';
$DBUSER = '***';
$DBPASS = '***';
$DBNAME = 'fe';
// End Configuration

require_once($config['basedir'].'/libraries/adodb/adodb.inc.php');

$conn = &ADONewConnection($DBTYPE);
$conn->PConnect($DBHOST, $DBUSER, $DBPASSWORD, $DBNAME);
@mysql_query("SET NAMES 'UTF8'");

知道为什么这不起作用吗?我现在完全不知所措。正如我所说,除了两个单独的网络主机之外,没有什么区别,一个有效,一个无效。

【问题讨论】:

  • 您确定在第二个站点中打开了错误报告吗?既然您使用的是 mysql 数据库,为什么不使用 mysqli 扩展呢?
  • 我对 ADOdb 非常熟悉,我宁愿坚持使用它:/ 第一个站点完全是用它编写的。错误报告已开启
  • 好的,我明白了,您的用户名/密码中是否有任何异常字符...如果有,您的文件编码是否正确?
  • 有,但我只是将密码更改为字母数字,并进行了测试,仍然没有
  • 可能是数据库不允许访问(可能是主机限制?即:无法连接,除非从特定 ip..)。如果您尝试连接到其他站点中使用的同一个数据库,会发生什么情况?

标签: php mysql adodb


【解决方案1】:

这将起作用:

$conn = &NewADOConnection($DBTYPE);
$conn->PConnect($DBHOST, $DBUSER, $DBPASSWORD, $DBNAME);
@mysql_query("SET NAMES 'UTF8'");

NewADOConnection 而不是ADONewConnection

【讨论】:

    【解决方案2】:

    试试这个:

    $conn = NewADOConnection($DBTYPE);
    $conn->Connect($DBHOST, $DBUSER, $DBPASSWORD, $DB_NAME) or die("ERROR CONNECT " . $DBNAME);
    $query = "SET NAMES 'UTF8'";
    
    $rs = $db->Execute($query) or ("Error SQL. " . $db->ErrorMSG()); 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-09
      相关资源
      最近更新 更多