#47438 [Opn->Asn]: mysql_fetch_field ignores zero offset

From: Date: Wed, 18 Feb 2009 16:07:12 +0000
Subject: #47438 [Opn->Asn]: mysql_fetch_field ignores zero offset
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-133958@lists.php.net to get a copy of this message
ID: 47438 Updated by: johannes@php.net Reported By: craig dot marvelley at boxuk dot com -Status: Open +Status: Assigned Bug Type: MySQL related Operating System: Windows/Linux PHP Version: 5.3.0beta1 -Assigned To: +Assigned To: mysql New Comment: Should be a simple fix, setting to assigned Previous Comments: ------------------------------------------------------------------------ [2009-02-18 15:45:55] craig dot marvelley at boxuk dot com Description: ------------ When calling mysql_fetch_field(), it seems that in PHP 5.3 the offset parameter, when set to 0, is being ignored - the current pointer offset is returned instead. According to the manual, that should only happen if the field offset is not supplied. I've tested this in PHP 4 and 5.2 but the above behaviour isn't repeated. Reproduce code: --------------- // connect to database, etc... $sql = "SELECT * FROM someTable"; $result = mysql_query($sql); // set the internal pointer to the second field... mysql_field_seek($result, 1); // ... but we'll start at the first field (i.e. ignore the pointer) $i = 0; while($i<mysql_num_fields($result)) { $meta=mysql_fetch_field($result,$i); echo $i . "." . $meta->name . "<br />"; $i++; } Expected result: ---------------- For a table with columns like this: column1 | column2 | column3 I'd expect to see 0. column1 1. column2 2. column3 (This happens in PHP < 5.3beta1) Actual result: -------------- I get this: 0. column2 1. column2 2. column3 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=47438&edit=1

« previous php.bugs (#133958) next »