Fix PDO error handling
This commit is contained in:
parent
35b6491a3c
commit
61dc40a512
|
@ -111,7 +111,7 @@ if (!defined("DRIVER")) {
|
||||||
$result = @($unbuffered ? mysql_unbuffered_query($query, $this->_link) : mysql_query($query, $this->_link)); // @ - mute mysql.trace_mode
|
$result = @($unbuffered ? mysql_unbuffered_query($query, $this->_link) : mysql_query($query, $this->_link)); // @ - mute mysql.trace_mode
|
||||||
$this->error = "";
|
$this->error = "";
|
||||||
if (!$result) {
|
if (!$result) {
|
||||||
$this->errrno = mysql_errno($this->_link);
|
$this->errno = mysql_errno($this->_link);
|
||||||
$this->error = mysql_error($this->_link);
|
$this->error = mysql_error($this->_link);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,6 +40,9 @@ if (extension_loaded('pdo')) {
|
||||||
function store_result($result = null) {
|
function store_result($result = null) {
|
||||||
if (!$result) {
|
if (!$result) {
|
||||||
$result = $this->_result;
|
$result = $this->_result;
|
||||||
|
if (!$result) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if ($result->columnCount()) {
|
if ($result->columnCount()) {
|
||||||
$result->num_rows = $result->rowCount(); // is not guaranteed to work with all drivers
|
$result->num_rows = $result->rowCount(); // is not guaranteed to work with all drivers
|
||||||
|
@ -50,6 +53,9 @@ if (extension_loaded('pdo')) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function next_result() {
|
function next_result() {
|
||||||
|
if (!$this->_result) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
$this->_result->_offset = 0;
|
$this->_result->_offset = 0;
|
||||||
return @$this->_result->nextRowset(); // @ - PDO_PgSQL doesn't support it
|
return @$this->_result->nextRowset(); // @ - PDO_PgSQL doesn't support it
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue