Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Отпарсить Word-документ
 
 автор: DEM   (07.07.2009 в 10:20)   письмо автору
 
 

Есть WORD-документ. в ём идёт информация вида:
Названик1
Картинка1.1
Название1
Картинка1.2
Всегда одинаковый текст
Таблица с данными1

Названик2
Картинка2.1
Название2
Картинка2.2
Всегда одинаковый текст
Таблица с данными2

...


Можно ли его как нить отправсить и занести данные (название и данные из таблицы) в БД?

  Ответить  
 
 автор: ddhvvn   (07.07.2009 в 15:54)   письмо автору
 
   для: DEM   (07.07.2009 в 10:20)
 

Для работы есть специальные классы

  Ответить  
 
 автор: Trianon   (07.07.2009 в 16:55)   письмо автору
 
   для: ddhvvn   (07.07.2009 в 15:54)
 

Где?

  Ответить  
 
 автор: DEM   (07.07.2009 в 17:33)   письмо автору
 
   для: ddhvvn   (07.07.2009 в 15:54)
 

слышал про .COM в РНР, но нигде ен смог найти нормального примера как да что :(

  Ответить  
 
 автор: ddhvvn   (07.07.2009 в 19:01)   письмо автору
 
   для: DEM   (07.07.2009 в 17:33)
 

такое смотрели?
Правда функционал, конечно, обрезан будет...

Я был уверен, что видел библиотеки для работы с doc файлами... но что-то все найти не могу...

  Ответить  
 
 автор: talka   (07.07.2009 в 19:48)   письмо автору
4.1 Кб
 
   для: ddhvvn   (07.07.2009 в 19:01)
 

если есть доступ к СОМ объектам, то можно *.doc перевести в *.html примерно так:

<?
$word
=new COM('word.application') or die('Не могу создать экземпляр объекта СОМ'); 
$word->Application->Visible=1;
$word->Documents->Open('C:/word.doc'); 
$word->Selection->WholeStory(); 
$word->Selection->Copy(); 
$word->Selection->MoveDown(); 
$word->Selection->Paste(); 
$path=$word->ActiveDocument->Path."/"
$word->Documents[1]->SaveAs($path."word.html"8);
$word->Quit();
?>

и очистить от лишних тегов. Класс htmlcleaner во вложении (старенький, правда). Можно доработать под свои нужды. Более человеческий способ мне не встречался.

  Ответить  
 
 автор: moonfox   (07.07.2009 в 23:26)   письмо автору
 
   для: talka   (07.07.2009 в 19:48)
 

этож тока на ms серверах?

  Ответить  
 
 автор: mihdan   (08.07.2009 в 13:37)   письмо автору
 
   для: DEM   (07.07.2009 в 10:20)
 

Если через COM

  Ответить  
 
 автор: mekomelo   (13.10.2009 в 10:57)   письмо автору
 
   для: mihdan   (08.07.2009 в 13:37)
 

Скажите пожалуйста, как заставить PHP работать с COM?
Нашел код для открытия и дальнейшей работы с .doc, но PHP не может открыть файл.

<?php

com_load_typelib
('Word.Application');

$word = new COM("word.application") or die("Unable to instantiate Word");

// use like this. Place your's word file in C drive
$word->Documents->Open('C:/reminder_new.doc');
echo 
$current_date date("m/d/Y");

$timdate("Y-m-d");

$info_array=array(  "Name"      => "pavan",
                    
"TODAYDATE" => "$tim,
                    
"Company"   => "sparsh" ,
                    
"project"   => "Myrepc",
                    
"Features"   => "Auto fill form editor") ;

foreach(
$info_array as $bookmarkname => $re)
    {

        
$objBookmark $word->ActiveDocument->Bookmarks($bookmarkname);
        
$range $objBookmark->Range;
        echo 
$range->Text $re ;

    }

$new_file "c:/reminder_filled.doc";

$word->Documents[1]->SaveAs($new_file);

$word->ActiveDocument->Close(false);

$word->Quit();
$word null;

?>


Я так понял, что нужно подключить библиотеку, но не могу найти какую.

Использую denwer 3.0, знаю что не лучший вариант, но это одно из условий..

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования