Apparently, one cannot use associative arrays in order to compose the record to be written to the dbf file. The following code will not work and will raise an unexpected error:
<?php
$record = array("ID" => 10, "VALUE" => 'Hello');
dbase_add_record($dbid, $record);
?>
Instead:
<?php
$record = array(0 => 10, 1 => 'Hello');
dbase_add_record($dbid, $record);
?>
dbase_add_record
(PHP 4, PHP 5)
dbase_add_record — データベースにレコードを追加する
説明
bool dbase_add_record
( int $dbase_identifier
, array $record
)
与えられたデータをデータベースに追加します。
パラメータ
- dbase_identifier
-
データベースのリンク ID 。dbase_open() あるいは dbase_create() によって返されます。
- record
-
データの配列。要素の数がデータベースのフィールド数と一致している 必要があります。それ以外の場合はdbase_add_record() は失敗します。
注意: dbase_get_record() が返す値をこのパラメータに 使用する際は、deleted という名前のキーを リセットすることを忘れないでください。
返り値
成功した場合に TRUE を、失敗した場合に FALSE を返します。
例
例1 dBase データベースにレコードを追加する
<?php
// read-write モードでオープンする
$db = dbase_open('/tmp/test.dbf', 2);
if ($db) {
dbase_add_record($db, array(
date('Ymd'),
'Maxim Topolov',
'23',
'max@example.com',
'T'));
dbase_close($db);
}
?>
dbase_add_record
michele dot manzato at NOSPAM dot verona dot miz dot it
27-Jan-2006 10:49
27-Jan-2006 10:49
Dahlmann at Dahlmann dot biz
07-Jul-2005 08:57
07-Jul-2005 08:57
I had some problems with old dbase3 database. Odd behaviour of the php-progs and incomplete file copies.
I assume that the header was partly corrupt, but clipper-progs worked fine. I copied structure to file (copy to test structure extended), then rebuilt the database from the structure file again and made an append from the original file.
That fixed the error.
heinrich at c-tera dot de
12-Dec-2002 05:59
12-Dec-2002 05:59
Field type incompatible inputs can cause PHP to crash or strange errors to occur. After finding that out it was easy to fill also "big" dbase-files with size bigger than 15 MB. Don't let your enthusiasm be broken by inexact error messages! :-)
