note 12302 deleted from function.odbc-num-rows by jimw
| From: | jimw@php.net | Date: | Mon, 17 Dec 2001 22:33:30 +0000 |
| Subject: | note 12302 deleted from function.odbc-num-rows by jimw | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-23032@lists.php.net to get a copy of this message | ||
Quick Recordcount function:
<?
function count_rows ($query_handle) {
$num_rows = odbc_num_rows($query_handle);
if($num_rows > -1) { return $num_rows; }
if(!odbc_fetch_row($query_handle,1)) return 0;
$lower = 0;
$upper = 1;
while(odbc_fetch_row($query_handle,$upper)) {
$lower = $upper; $upper *= 2;
}
while(($lower + 1) != $upper) {
$middle = ($upper + $lower) / 2;
if(odbc_fetch_row($query_handle, $middle)) {
$lower = $middle;
}
else {
$upper = $middle;
}
}
odbc_fetch_row($query_handle, 1);
return $lower;
}
?>
Problems:
a) at the end of the function the cursor stands at row 1
b) the datasource could have changed