Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] генерация rtf документа из ШАБЛОНА с помощью php

Ответить
Настройки темы
[решено] генерация rtf документа из ШАБЛОНА с помощью php

Пользователь


Сообщения: 124
Благодарности: 2

Профиль | Отправить PM | Цитировать


Здравствуйте!
Не работает подставка значений в заменител (<<name>>):

PHP код: Выделить весь код

//выбор приложения для визуализации

    
header('Content-Type: application/msword');
    
header('Content-Disposition: inline, filename=cert.rtf');
    
        
$name1="Ivan";

    
//открыть файл шаблона
    
$filename 'PHPCert.rtf';
    
$output file_get_contents($filename);
            
    
//замена заполнителей в шаблоне
    
$output str_replace("<<name>>",$name1,$output);
    
    
//отправить сгенерированный документ в браузер
    
echo $output


Отправлено: 12:05, 15-09-2010

 

Deadooshka


Сообщения: 2517
Благодарности: 692

Профиль | Отправить PM | Цитировать


Цитата zvezda_t:
В итоге полученный файл сохраняется как .doc »
в этом формате (doc) можно сохранить только самим вордом. RTF - это текстовый файл, который можно редактировать в ворде. имхо юзеру все равно, какое расширение у файла, главное, что можно открыть и отредактировать в ворде (если не нужны какие-то особые примочки от MS).
если нужен именно формат doc, то c COM можно сохранить rtf-файл в doc, и отдавать уже его. Если нужна сложная обработка ворд-файла, то изучайте объекты/свойства Word для макросов/скриптов, или поищите готовые макросы...

Отправлено: 17:14, 09-10-2010 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 124
Благодарности: 2

Профиль | Отправить PM | Цитировать


Цитата Sham:
если нужен именно формат doc, то c COM можно сохранить rtf-файл в doc, и отдавать уже его. »
то есть сначала обработать мой rtf файл, а потом сохранить его как .doc?
как его так сохранить?

Отправлено: 17:23, 09-10-2010 | #12


Deadooshka


Сообщения: 2517
Благодарности: 692

Профиль | Отправить PM | Цитировать


хз, имхо как в примере к классу (не тестил)
PHP код: Выделить весь код

<?php
   
require_once("clsWord.php");

   
$input "C:\\Doc1.rtf";
   
$output "C:\\Doc1.doc";

   
$Word = new clsMSWord;
   
$Word->Open($input);
   
$Word->SaveAs($output);
   
$Word->Quit();

?>


Отправлено: 17:30, 09-10-2010 | #13


Пользователь


Сообщения: 124
Благодарности: 2

Профиль | Отправить PM | Цитировать


а если я в заголовке вывожу как .doc - это не тоже самое?
PHP код: Выделить весь код

//выбор приложения для визуализации

    
header('Content-Type: application/msword');
    
header('Content-Disposition: inline, filename=cert.doc');
    
        
$name1="Ivan";

    
//открыть файл шаблона
    
$filename 'PHPCert.rtf';
    
$output file_get_contents($filename);
            
    
//замена заполнителей в шаблоне
    
$output str_replace("<<name>>",$name1,$output);
    
    
//отправить сгенерированный документ в браузер
    
echo $output


Отправлено: 17:33, 09-10-2010 | #14


Deadooshka


Сообщения: 2517
Благодарности: 692

Профиль | Отправить PM | Цитировать


хе-хе, открывается...
формат все-равно будет rtf, даже если расширение будет .doc. Если это устраивает, то ок, но поведение word в этом случае надо отследить. Наверное, при сохранении юзером формат преобразуется в doc.

upd
не, формат не меняется при сохранении (word2003). Но имхо может поменяться при использовании какой-то чисто вордовской примочкой...

Отправлено: 18:19, 09-10-2010 | #15


Пользователь


Сообщения: 124
Благодарности: 2

Профиль | Отправить PM | Цитировать


что то я запуталась...
А если с помощью html разметки сформировать документ и вывести через заголовки, то какой формат у документа будет?


PHP код: Выделить весь код

header("Content-type: application/vnd.ms-word");
  
      
header("Content-Disposition: attachment;Filename=document_name.doc");
   
      echo 
"<html>";
   
      echo 
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Windows-1252\">";
  
      echo 
"<body>";
  
      echo 
"<b>Тело моего документа</b>";
  
      echo 
"</body>";
  
      echo 
"</html>"


Отправлено: 19:03, 09-10-2010 | #16


Deadooshka


Сообщения: 2517
Благодарности: 692

Профиль | Отправить PM | Цитировать


Формат html, расширение doc . Это поведение той программы, с помощью которой открывается файл (видимо ворд не обращает внимание на расширение).

Отправлено: 19:08, 09-10-2010 | #17


Пользователь


Сообщения: 124
Благодарности: 2

Профиль | Отправить PM | Цитировать


получается формат не имеет значения?
главное сохранить с расширением .doc?

Отправлено: 19:22, 09-10-2010 | #18


Deadooshka


Сообщения: 2517
Благодарности: 692

Профиль | Отправить PM | Цитировать


формат имеет значение, у каждого формата свои ограничения. rtf имхо наиболее сопоставим с doc. В остальном - зависит от софта.
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:09, 09-10-2010 | #19



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » [решено] генерация rtf документа из ШАБЛОНА с помощью php

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Почистить HTML с помощью PHP Artem-Samsung Вебмастеру 2 29-07-2010 10:02
[решено] генерация pdf с помощью php zvezda_t Вебмастеру 3 28-01-2010 21:59
Оптимальность шаблона Карина Вебмастеру 5 11-02-2009 21:42
как на php конвертировать XML в PDF, RTF Vlad Drakula Вебмастеру 5 07-12-2006 17:21
Как сделать меню с помощью php и mysql... FADE Вебмастеру 17 08-07-2004 19:19




 
Переход