diff options
| -rw-r--r-- | drivers/adodb-oci8.inc.php | 54 |
1 files changed, 27 insertions, 27 deletions
diff --git a/drivers/adodb-oci8.inc.php b/drivers/adodb-oci8.inc.php index 8a5dcde8..d8b71c6e 100644 --- a/drivers/adodb-oci8.inc.php +++ b/drivers/adodb-oci8.inc.php @@ -806,6 +806,11 @@ END; $hint = ''; } + // If non-bound statement, $inputarr is false + if (!$inputarr) { + $inputarr = array(); + } + if ($offset == -1 || ($offset < $this->selectOffsetAlg1 && 0 < $nrows && $nrows < 1000)) { if ($nrows > 0) { if ($offset > 0) { @@ -813,10 +818,6 @@ END; } $sql = "select * from (".$sql.") where rownum <= :adodb_offset"; - // If non-bound statement, $inputarr is false - if (!$inputarr) { - $inputarr = array(); - } $inputarr['adodb_offset'] = $nrows; $nrows = -1; } @@ -834,32 +835,31 @@ END; } $stmt = $stmt_arr[1]; - if (is_array($inputarr)) { - foreach($inputarr as $k => $v) { - $i=0; - if ($this->databaseType == 'oci8po') { - $bv_name = ":".$i++; + foreach($inputarr as $k => $v) { + $i = 0; + if ($this->databaseType == 'oci8po') { + $bv_name = ":" . $i++; + } else { + $bv_name = ":" . $k; + } + if (is_array($v)) { + // suggested by g.giunta@libero. + if (sizeof($v) == 2) { + oci_bind_by_name($stmt, $bv_name, $inputarr[$k][0], $v[1]); } else { - $bv_name = ":".$k; + oci_bind_by_name($stmt, $bv_name, $inputarr[$k][0], $v[1], $v[2]); } - if (is_array($v)) { - // suggested by g.giunta@libero. - if (sizeof($v) == 2) { - oci_bind_by_name($stmt,$bv_name,$inputarr[$k][0],$v[1]); - } - else { - oci_bind_by_name($stmt,$bv_name,$inputarr[$k][0],$v[1],$v[2]); - } + } else { + $len = -1; + if ($v === ' ') { + $len = 1; + } + if (isset($bindarr)) { + // prepared sql, so no need to oci_bind_by_name again + $bindarr[$k] = $v; } else { - $len = -1; - if ($v === ' ') { - $len = 1; - } - if (isset($bindarr)) { // is prepared sql, so no need to oci_bind_by_name again - $bindarr[$k] = $v; - } else { // dynamic sql, so rebind every time - oci_bind_by_name($stmt,$bv_name,$inputarr[$k],$len); - } + // dynamic sql, so rebind every time + oci_bind_by_name($stmt, $bv_name, $inputarr[$k], $len); } } } |
