Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> работа с .dbf файлами, ОЧЕНЬ СРОЧНО НУЖНА ПОМОЩЬ!!! 
:(
    Опции темы
ТРЕТЬ
Дата 3.11.2006, 20:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 92
Регистрация: 8.1.2006
Где: mind's gloomy corner

Репутация: нет
Всего: 1



Помогите пожалуйста!!!
Дело в том, что мне очень срочно надо сделать скрипт для работы с файлами баз данных (.dbf)...
Я нашел вроде подходящие функции - dbase_create, dbase_open и т.п.
Потом достал для них библиотеку - php_dbase.dll
В php.ini раскоментил её...

Но все равно ничерта не получается - беру пример из мануала 
Код

// database "definition"
$def = array(
  array("date",     "D"),
  array("name",     "C",  50),
  array("age",      "N",   3, 0),
  array("email",    "C", 128),
  array("ismember", "L")
);

// creation
if (!dbase_create('/tmp/test.dbf', $def)) {
  echo "Error, can't create the database\n";
}

$db = dbase_open('/tmp/test.dbf', 0);

if ($db) {
  // read some data ..
  
  dbase_close($db);
}

В результате...
Warning: dbase_open() [function.dbase-open]: unable to open database /tmp/test.dbf
Сам файл создается, но весит 0 байт...

Использую Денвер "Base_PHP5_2006-04-25_a1.3.31_p5.1.2_m4.1.16_pma2.6.1.exe"




Это сообщение отредактировал(а) ТРЕТЬ - 8.11.2006, 14:31
PM MAIL WWW ICQ   Вверх
-=Ustas=-
Дата 4.11.2006, 08:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ustix IT Group
****


Профиль
Группа: Участник Клуба
Сообщений: 2222
Регистрация: 21.1.2005
Где: Краснодар

Репутация: 32
Всего: 69



Цитата(ТРЕТЬ @  3.11.2006,  20:41 Найти цитируемый пост)
Использую Денвер "Base_PHP5_2006-04-25_a1.3.31_p5.1.2_m4.1.16_pma2.6.1.exe"


У меня нормальный сервак (т.е. апач + php и т.д.), вышеприведенный тобой код пашет просто отлично. Кстати, там у Денвера, если я не ошибаюсь, на tmp диру какие то права особые выставляются. Попробуй в другом месте создать, допустим в одной дире с скриптом.


--------------------
В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм.
-----
PM WWW ICQ Skype   Вверх
ТРЕТЬ
Дата 7.11.2006, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 92
Регистрация: 8.1.2006
Где: mind's gloomy corner

Репутация: нет
Всего: 1



Пробовал в том же месте что и скрипт - не помогает.

Если не затруднит, можно твою библиотеку dbase и php.ini получить?

И еще было бы здорово еще и файлик таблицы, который у тебя получается...


И немного побочный вопрос, что делает open_basedir функция? Как я понял, она открывает дирикторию, как базу данных, но в мануале как-то этот вопрос достаточно слабо освещен, поэтому я не смог разобраться в её синтаксисе и области применения...
PM MAIL WWW ICQ   Вверх
-=Ustas=-
Дата 8.11.2006, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ustix IT Group
****


Профиль
Группа: Участник Клуба
Сообщений: 2222
Регистрация: 21.1.2005
Где: Краснодар

Репутация: 32
Всего: 69



Цитата(ТРЕТЬ @  7.11.2006,  22:33 Найти цитируемый пост)
Пробовал в том же месте что и скрипт - не помогает.

Поставь нормальный сервер.

Добавлено @ 10:38 
Модератор: 
А вот:
Цитата(ТРЕТЬ @  3.11.2006,  20:41 Найти цитируемый пост)
Помогите, очень прошу!!!

да еще и такими огромными буквами, не стоит писать!!!


--------------------
В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм.
-----
PM WWW ICQ Skype   Вверх
ТРЕТЬ
Дата 8.11.2006, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 92
Регистрация: 8.1.2006
Где: mind's gloomy corner

Репутация: нет
Всего: 1



Цитата(-=Ustas=- @  8.11.2006,  10:34 Найти цитируемый пост)
да еще и такими огромными буквами, не стоит писать!!!

Извини, пожалуйста, просто нужно было крайне срочное разрешение проблеммы...

И все-таки, выложи, пожалуйста свой php_dbase.dll файл...
PM MAIL WWW ICQ   Вверх
-=Ustas=-
Дата 8.11.2006, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ustix IT Group
****


Профиль
Группа: Участник Клуба
Сообщений: 2222
Регистрация: 21.1.2005
Где: Краснодар

Репутация: 32
Всего: 69



Ну попробуй


Присоединённый файл ( Кол-во скачиваний: 32 )
Присоединённый файл  php_dbase 7,28 Kb


--------------------
В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм.
-----
PM WWW ICQ Skype   Вверх
evilguard
Дата 12.11.2007, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 19.11.2006

Репутация: нет
Всего: нет



Помогите, у меня тоже проблема с dBase:
Код

<?php

// open in read-only mode
$db = dbase_open('catalog.dbf', 0);

if ($db)
{
  $row = dbase_get_record($db, 5); // читаем запись номер 5 
  print $row[12]; // текстовое поле 12
  dbase_close($db);
}

?> 

Проблема с кодировкой, в dbf текстовые поля на русском, на экран выводится естественно не русский текст
ЏҐаўл© Ј«п­жҐўл© ¦га­ « ® ¬®¤Ґ Ё бвЁ«Ґ ¤«п ¤Ґўг襪. ќЄбЄ«о§Ёў­лҐ д®в®Ја дЁЁ, ЇбЁе®«®ЈЁп, гў«ҐЄ ⥫м­лҐ ¬ вҐаЁ «л ® §ўҐ§¤ е Ё ­Ґ в®«мЄ®, Ј®а®бЄ®Ї, б®­­ЁЄ, вҐбвл Ё ¬ бᠠॠ«м­ле ў®§¬®¦­®б⥩ ­ ©вЁ бў®© Ё­¤ЁўЁ¤г «м­л© бвЁ«м Ё ¤®ЎЁвмбп ў ¦Ё§­Ё гбЇҐе . 
PM MAIL   Вверх
evilguard
Дата 12.11.2007, 22:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 19.11.2006

Репутация: нет
Всего: нет



ээ, все решил проблему нашел такую замечательную функцию
Код

function convert_cyr_text($text,$convert_to=""){                                 // detect codepage of $text and return converted to $convert_to
// Swed  http://collection.com.ua/webmaster
  if(!$code_page)$convert_to = "w";                                              // by default convert to windows-1251
  $countChars = count_chars($text);                                              // cont chars of text
  $sums = array(                                                                 // set sums for each codepage
   "w" => array("small" => array_sum(array_slice($countChars,224,32)),           // windows-1251 small chars
                "cap"   => array_sum(array_slice($countChars,192,32))),          // capitalize chars
   "k" => array("small" => array_sum(array_slice($countChars,192,32)),           // koi8-r
                "cap"   => array_sum(array_slice($countChars,224,32))),
   "i" => array("small" => array_sum(array_slice($countChars,208,32)),           // iso8859-5
                "cap"   => array_sum(array_slice($countChars,176,32))),
   "a" => array("small" => array_sum(array_slice($countChars,160,16))+           // cp866
                             array_sum(array_slice($countChars,224,16)),
                "cap"   => array_sum(array_slice($countChars,128,32))),
   "m" => array("small" => array_sum(array_slice($countChars,223,32)),           // x-mac-cyrillic
                "cap"   => array_sum(array_slice($countChars,128,32))),
  );
  $max = max($sums);                                                             // get max values
  foreach ($sums as $name => $codepage)
   if ($codepage == $max) $convert_from = $name;                                 // get name current codepage
  if ($convert_from == $convert_to) return $text;                                // retrun not converted
  return convert_cyr_string($text,$convert_from,$convert_to);                    // return converted
}

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0817 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.