ID: 9934 Updated by: sniper Reported By: [EMAIL PROTECTED] Old-Status: Open Status: Feedback Bug Type: DBM/DBA related Assigned To: Comments: Have you tried using the dba extension instead? ie. change php_db.dll to php_dba.dll and check the manual pages for dba extension how to use it: http://www.php.net/dba FYI: The db extension is deprecated. --Jani Previous Comments: --------------------------------------------------------------------------- [2001-03-22 12:30:43] [EMAIL PROTECTED] sample code: <? $db = dbmopen("test007","n"); dbminsert($db,"key1","data1"); dbminsert($db,"key2","data3"); dbminsert($db,"key2","data2"); print "n<br> Value here should be data1: "; print dbmfetch($db,"key1"); print "n<br> Value here should be data2: "; print dbmfetch($db,"key2"); print "n<br> Value here should be data3: "; print dbmfetch($db,"key3"); dbmclose($db); ?> here is the bug description: don't even try using this function in php4.x on windows. it is extremely buggy; returns bad data. typically, you will find the first character of inserted data missing, with some wierd chars at the end. on examining the dbm file, it seems the php_dbm.dll methods are incorrectly reading data by skipping the first character, reading the rest of the string and then getting completely messed up because all following string length entries are "shifted". i don't know how this huge bug has survived in all php 4.x implementations on windows. it basically renders php 4.x on windows useless for disk based db access. i replaced my 4.x install with 3.x and had no problem running my dbm code. please somebody! fix this! thanks, amir --------------------------------------------------------------------------- ATTENTION! Do NOT reply to this email! To reply, use the web interface found at http://bugs.php.net/?id=9934&edit=2 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]