• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 6674
  • Last Modified:

PHP Fatal error: Call to undefined method DB_Error::query()

I'm using Zend Core for Oracle. I have a file called PTutil.php connects to oracle DB, query the DB and display results.

Currently I'm unable to make work due to this error:

PHP Fatal error:  Call to undefined method DB_Error::query() in ../Phonetimes/PTutil.php on line 192

The line 192 is this:

$res =& $db->query($query);

PEAR is installed and working fine.

I did some google search on this error, and tried what were suggested but still have the same error.

Can you please help me solve this error?

  • 5
  • 4
1 Solution

$res =& $db->sql_query($query);
bprof2007Author Commented:
Thank I've tried it and got this error:

PHP Fatal error:  Call to undefined method DB_Error::sql_query() in ../PTutil.php on line 193

which wrapper class are you using for mysql functions?
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

bprof2007Author Commented:
I'm using a file called DB.php here are some info from the file itself about what it does?

 * Database independent query interface
 * PHP versions 4 and 5
 * LICENSE: This source file is subject to version 3.0 of the PHP license
 * that is available through the world-wide-web at the following URI:
 * http://www.php.net/license/3_0.txt.  If you did not receive a copy of
 * the PHP License and are unable to obtain it through the web, please
 * send a note to license@php.net so we can mail you a copy immediately.
 * @category   Database
 * @package    DB
 * @author     Stig Bakken <ssb@php.net>
 * @author     Tomas V.V.Cox <cox@idecnet.com>
 * @author     Daniel Convissor <danielc@php.net>
 * @copyright  1997-2005 The PHP Group
 * @license    http://www.php.net/license/3_0.txt  PHP License 3.0
 * @version    CVS: $Id: DB.php,v 1.80 2005/02/16 02:16:00 danielc Exp $
 * @link       http://pear.php.net/package/DB

I didn't work with OO in PHP before. :(
The error is basically due to the function query() being undefined. Why dont' you use straight off the oci8 methods. And then you can use oci_fetch_array() to fetch out any results you want, much like mysql functions.

$conn = oci_connect('scott', 'tiger', 'orcl');
$query = 'SELECT myclob FROM mytable WHERE mykey = :mykey';
$stid = oci_parse ($conn, $query);
oci_bind_by_name($stid, ":mykey", $mykey, 5);
oci_execute($stid, OCI_DEFAULT);

Open in new window

bprof2007Author Commented:
Thanks much nizsmo for the code.

Can you please explain to me what is mykey in this line:

oci_bind_by_name($stid, ":mykey", $mykey, 5);

I'm not sure why its needed.

I'm also getting this error:

Fatal error: Call to a member function fetchInto() on a non-object in /usr/local/Zend/apache2/htdocs/test.php on line 93

93:while ($res->fetchInto($row)) {

I'm really n00b in pear and connecting to oracle.

not too sure what fetchInto does? but have you set the $row variable?
You can fetch the results from the OCI connection using this function:

Also in case you are still wondering about the oci_bind_by_name() function:

Hope this helps!
Forgot to mention, in those sites above there are some nice examples, especially some full examples in oci_fetch_array() link, which will probably answer your questions :)
bprof2007Author Commented:
Thanks a lot
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

  • 5
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now