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

Компьютерный форум 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 | Цитировать


не вижу ошибок

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



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

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


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


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

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


Sham, скажите мне пожалуйста,

вот у меня есть обычный вордовский документ - как мне туда вставить данные из БД с помощью php?

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


Deadooshka


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

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


Цитата zvezda_t:
обычный вордовский документ »
Это doc(x)? Проприетарный формат (закрытый то бишь), т.е. нормально изменять получиться только средствами MS, обычно через COM-объекты (готовых скриптов море).

Если речь о RTF-файле, то другое дело. RTF - открытый формат, редактируется в текстовом редакторе, и в MS Word. Можно поискать PHP-библиотеки для работы с rtf, но если требуется только поиск-замена, то имхо необязательно.

Кириллица в rtf преобразуется (не в открытом виде), хотя word и кириллицу понимает, хз.

Последний раз редактировалось Sham, 16-09-2010 в 17:22.


Отправлено: 17:07, 16-09-2010 | #4


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


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

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


А возможно из обычного word1.doc сделать rtf файл - чтоб уже в нём проще было работать с заменителями?

Можно какой нибудь примерчик - как используя com объекты заменить значения в шаблоне???

Отправлено: 20:14, 07-10-2010 | #5


Deadooshka


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

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


Цитата zvezda_t:
из обычного word1.doc сделать rtf файл »
если открыть в Word: меню Файл - Сохранить как - Текст в формате rtf (из списка "тип файла").
Цитата zvezda_t:
как используя com объекты заменить значения в шаблоне »
посмотрите тут. Для PHP - имхо это изврат. RTF для этого больше подходит (с ним можно работать, как с текстовым файлом).

Отправлено: 15:46, 08-10-2010 | #6


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


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

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


Цитата Sham:
если открыть в Word: меню Файл - Сохранить как - Текст в формате rtf (из списка "тип файла"). »
я так и сделала, а потом вставила в текст документа: <<name>>
и использую скрипт из первого сообщения - замена не происходит(((

Закоментировала строчки:
//header('Content-Type: application/msword');
//header('Content-Disposition: inline, filename=cert.rtf');
и посмотрела в браузере что выводит:
Цитата:
{\rtf1\ansi\ansicpg1251\uc1\deff0\stshfdbch0\stshfloch0\stshfhich0\stshfbi0\deflang1049\deflangfe104 9{\fonttbl{\f0\froman\fcharset204\fprq2{\*\panose 02020603050405020304}Times New Roman;} {\f1\fswiss\fcharset204\fprq2{\*\panose 020b0604020202020204}Arial;}{\f2\fmodern\fcharset204\fprq1{\*\panose 02070309020205020404}Courier New;}{\f35\fswiss\fcharset204\fprq2{\*\panose 020b0604030504040204}Tahoma;} {\f36\fmodern\fcharset0\fprq1{\*\panose 02060609020000020004}Consultant{\*\falt Courier New};}{\f72\froman\fcharset0\fprq2 Times New Roman;}{\f70\froman\fcharset238\fprq2 Times New Roman CE;}{\f73\froman\fcharset161\fprq2 Times New Roman Greek;} {\f74\froman\fcharset162\fprq2 Times New Roman Tur;}{\f75\froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f77\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f78
своего заменителя я там не нашла... Я что то не так делаю?

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


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


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

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


Цитата Sham:
посмотрите тут. Для PHP - имхо это изврат. »
скачала класс для работы с com объектами, но там нет методов для вставки своих данных в шаблон...
можно только открыть, поставить закладку и сохранить документ((

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


Deadooshka


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

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


у меня сохраняет <<name>>. Наверно это касается только чистого doc(x) (не шаблон, без всяких спец-полей). Сохраните шаблон как обычный doc, и все спец-поля замените на простой текст <<>>, т.е. текст без всяких примочек word. Этот doc уже в rtf.
Цитата zvezda_t:
но там нет методов для вставки своих данных в шаблон »
имхо, это общий пример. Изучайте скриптинг для Word (справка по скриптингу в нем есть). Имхо можно разобраться.

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


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


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

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


Цитата Sham:
Наверно это касается только чистого doc(x) (не шаблон, без всяких спец-полей). Сохраните шаблон как обычный doc, и все спец-поля замените на простой текст <<>>, т.е. текст без всяких примочек word. Этот doc уже в rtf. »
Да, сохранила как Вы сказали - получилось) Большое спасибо!!! :-)

В итоге полученный файл сохраняется как .doc - то есть этот метод позволяет получить стандартный вордовский документ? (пользователи хотят на выходе иметь именно документ word)
Скажите пожалуйста, этот метод надёжный?

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



Компьютерный форум 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




 
Переход