Can anybody take a look into this, please?
Thanks,
Nuno
> ID: 28994
> User updated by: bas at vanklinkenbergsoftware dot nl
> Reported By: bas at vanklinkenbergsoftware dot nl
> Status: Open
> Bug Type: Documentation problem
> Operating System: N/A
> PHP Version: 4.3.7
> New Comment:
>
> All right, some more investigation shows me that when using lower case
> column names, all works well. When using mixed case column names, using
> a string as the third argument generates the 'Bad Column Offset' error.
> See code snippet below. Note that fieldnames are correctly retrieved
> with pg_field_name().
>
> $db_conn = pg_connect("host = localhost port = 5432 dbname = test
> user = test password = test");
> $result = pg_query($db_conn, 'SELECT * FROM test');
> echo "table column index 0, has a lower case name, works
> fine:<br>\n";
> $fieldname = pg_field_name($result, 0);
> echo "fieldname: $fieldname <br>\n";
> $fieldlength = pg_field_prtlen($result, 0, 0);
> echo "fieldlength: $fieldlength <br>\n";
> $fieldlength2 = pg_field_prtlen($result, 0, $fieldname);
> echo "fieldlength: $fieldlength2 <br>\n";
>
> echo '<br>table column index 1, has a mixed case name, generates
> e_notice and empty fieldlength:<br>\n';
> $fieldname = pg_field_name($result, 1);
> echo "fieldname: $fieldname <br>\n";
> $fieldlength3 = pg_field_prtlen($result, 0, 1);
> echo "fieldlength: $fieldlength3 <br>\n";
> $fieldlength4 = pg_field_prtlen($result, 0, $fieldname);
> echo "fieldlength: $fieldlength4 <br>\n";
>
> You can test the code above at this url:
> http://212.61.21.72/test/pg_field_prtlen_test.php
>
> The database table used in the above code looks like this:
> ==============
> Welcome to psql 7.3.4-RH, the PostgreSQL interactive terminal.
>
> You are now connected to database test as user test.
> test=> select * from test;
> first_column | Second_Column
> --------------+----------------
> 1 | some text
> 2 | some more text
> (2 rows)
>
> test=>
> ============
>
> Appearantly it looks like there are two problems: the documentation
> problem, where the possibility to pass an int as the third argument is
> not documented, and the error that occurs when using mixed case column
> names. Should I file the latter as a separate bug?
>
> Regards,
> Bas
>
>
> Previous Comments:
> ------------------------------------------------------------------------
>
> [2004-07-02 23:17:01] [EMAIL PROTECTED]
>
> What I can see in the sources is that the proto is:
>
> int pg_field_prtlen(resource result, [int row,] mixed
> field_name_or_number
>
>
> Row is optional and the last parameter can be either a string or an
> integer. If it's passed as string, it is recongnised as the field name,
> otherwise as the field number.
>
> I've never used PostgreSQL, so can you or somebody confirm if the
> function is behaving as I've stated, please??
>
> Thanks,
> Nuno
>
> ------------------------------------------------------------------------
>
> [2004-07-02 15:50:02] bas at vanklinkenbergsoftware dot nl
>
> Description:
> ------------
> In the online documentation for pg_field_prtlen, the function
> arguments are described as follows:
>
> int pg_field_prtlen (resource result, int row_number, string
> field_name)
>
> but actually it should be:
>
> int pg_field_prtlen (resource result, int row_number, int
> column_number)
>
> (The third argument should be column number instead of field name).
> When using pg_field_prtlen as stated in the online documentation, a
> 'Bad Column Offset' error is generated.
>
>
>
> ------------------------------------------------------------------------
>
> Edit this bug report at http://bugs.php.net/?id=28994&edit=1
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php