Я надеюсь, что вы можете помочь мне с моей проблемой.
У меня есть локальный сайт, который читает данные из файлов DBF на терминале в сети. Итак, что я сделал, я поделился файлами DBF на ПК под управлением Windows XP с полным разрешением на чтение / запись.
Когда скрипт PHP запускается на сервере Ubuntu, он сначала пингует компьютер в сети. После подтверждения подключения он подключит общие файлы на сервере. Обратите внимание, что каталог / mnt имеет 777 разрешений, и он также настроен на подкаталоги. Владелец также www-data, который является пользователем PHP.
Сценарий может читать данные из файлов DBF, используя эту настройку. Я использую приведенный ниже скрипт для чтения данных из файла dbf:
$db1 = dbase_open("/mnt/test.dbf", 0) or die(mysql_error());
for($counter=1;$counter<=dbase_numrecords($db1);$counter++){
$dbf_data = dbase_get_record_with_names($db1, $counter) or die(mysql_error());
// insert data to MYSQL database
}
Сценарий выше работает, но только для чтения данных. Когда я перехожу на:
dbase_open («/ mnt / test.dbf», 2)
он должен иметь доступ для чтения и записи, однако он не позволяет мне удалить строки, которые уже были прочитаны. Я использую:
for($count=1;$count<=dbase_numrecords($db1);$count++){
dbase_delete_record($db1, $count);
}
dbase_pack($db1);
но это не работает. Я также попытался поместить dbase_pack в цикл, но все так же. Вот скриншот ошибки:
Надеюсь, вы можете помочь. Заранее спасибо!
Задача ещё не решена.
Других решений пока нет …