php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #27470 Unexpected content of an array generated by the dbase_get_record()
Submitted: 2004-03-02 18:23 UTC Modified: 2004-03-04 09:56 UTC
Votes:4
Avg. Score:4.5 ± 0.9
Reproduced:1 of 2 (50.0%)
Same Version:0 (0.0%)
Same OS:0 (0.0%)
From: carlos at qualinfo dot com dot br Assigned:
Status: Wont fix Package: dBase related
PHP Version: 4.3.4 OS: Linux MDK9.1 / WindowsXP PRO SP1
Private report: No CVE-ID: None
 [2004-03-02 18:23 UTC] carlos at qualinfo dot com dot br
Description:
------------
This bug already was reported (bug # 4244), but was closed due to missing user feedback.

When I try to print the content of an array - created for the functions dbase_get_records() or dbase_get_records_by_name(), script returns trash (each time a different trash).

Notes: 
(1) This problem does not happen with all archives DBF that I try to list;
(2) The archives (.DBF) are not corrupted;
(3) The garbage that appears includes, also, parts of proper script PHP (parts of functions, variable, etc.);
(4) In both the tested operational systems (Windows and Linux), the result is the same;
(5) Another version of the PHP was used (4.3.2), the result was the same;

Linux:
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-dbase

Windows:
Default with php_dbase.dll.

(sorry for bad english)

Reproduce code:
---------------
$dbname1 = "/usr/temp/AAPFUN01.DBF";
$con1 = dbase_open($dbname1,0);

$rows   = dbase_numrecords($con1);
$fields = dbase_numfields($con1);

for ($i=1;$i<=$rows;$i++) {
  $registro = dbase_get_record($con1,$i) or die("erro");

  for ($x=0; $x < $fields; $x++) {
    $teste = $registro[$x];
    echo($teste . "<br>");
  }
}

dbase_close($con1);

Expected result:
----------------
For example, in key #17 of the array, the expected result:

'20020301' (date type field)





Actual result:
--------------
But the actual result is:

'200203011995090101                    1       0.000 0     240.00     160.0014220219750811        10   020245AL   15  49800238163644712550714425 ...(etc.)'

(this result is the rest of the fields (keys) concatenated. the next key is trash, until the end of array).



Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2004-03-03 04:31 UTC] derick@php.net
Please provide an URL to the DBF file in question.
 [2004-03-04 03:30 UTC] derick@php.net
Assigning to the extensions' maintainer.
 [2004-03-04 09:56 UTC] jimw@php.net
the dbase extension is unmaintained.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Nov 21 11:01:29 2024 UTC