|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2001-07-31 14:39 UTC] huevo at earthling dot net
If I access a memo field (Access 2000) by name:
$temp = odbc_result($result,'Description');
I get the expected result, a string value.
If I access the field by number:
for ($i=1; $i<=odbc_num_fields($result); $i++)
if (odbc_field_type($result,$i) == 'LONGCHAR')
$temp = odbc_result($result,$i);
odbc_result fails, returning false.
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 16:00:02 2025 UTC |
Correction: I have tracked down the source of the problem; still a bug. Code was actually like this: for ($i=1; $i<=odbc_num_fields($result); $i++) if (odbc_result($result,$i)) { $name = odbc_field_name($result,$i); $value = odbc_result($result,$i); } The second odbc_result returned false, the first returned the string. I solved by assigning to a variable. New bug: for ($i=1; $i<=odbc_num_fields($result); $i++) { $test = odbc_result($result,$i); if (odbc_field_name($result,$i) == 'Description') { echo $test; echo odbc_result($result,'Description'); echo odbc_result($result,$i); } } Only the first echo outputs any value. Any accesses after the first by odbc_result to a memo field result in failure. Good programming practice would dictate not to call odbc_result multiple times on the same data, but this behaviour is still unexpected.