duanlvxing7707 2011-06-04 07:10
浏览 52
已采纳

如何使用pear mdb2调试问题的原因

<?php

 include("PEAR/MDB2.php");
      $dsn = 'mysqli://root@localhost/heart_hugger';
$options = array(
    'debug' => 2,
    'result_buffering' => false,
);

$mdb2 =& MDB2::singleton($dsn, $options);
if (PEAR::isError($mdb2)) {
    die($mdb2->getMessage());
}


$table_name = 'cms';

// if left as a non array all fields of the table will be fetched using '*'
// in that case this variable can be set to true, to autodiscover the types
$result_types = "";

$mdb2->loadModule('Extended');
$res = $mdb2->extended->autoExecute($table_name, null,
                        MDB2_AUTOQUERY_SELECT, 'cmsId = '.$mdb2->quote(1, 'integer'),
                        null, true, $table_name);

if (PEAR::isError($res)) {
    die($res->getMessage());
}

$row = $res->fetchRow();
echo "value from fetchrow = ".$row[2];


$mdb2->disconnect();
?>

i am getting the following error

MDB2 Error: not supported

and i have no idea what exactly is not supported. The above code is an example given by pear in MDB2 manual. can any one please suggest what i am missing ? thanks

  • 写回答

1条回答 默认 最新

  • doz22551 2011-06-06 13:58
    关注

    First, debug which of the die calls are echoing the message:

    die('first: ' . $res->getMessage());
    

    After that, check the extended user information:

    die($res->getMessage() . "
    " . $res->getUserInfo());
    

    This should give you a hint about the real problem.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?