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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> перенос данных из формы в документ word 
:(
    Опции темы
lrad
Дата 12.7.2009, 09:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здравствуйте!
Подскажите как можно реализовать перенос данных из формы на веб странице в документ Word?
Тоесть пользователь выбирает на форме из выпадающего списка определенные данные, нажимает кнопку отправить, открывается word, и в нужном месте документа подставляются выбранные данные.
PM MAIL ICQ   Вверх
skyboy
Дата 12.7.2009, 12:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

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



тебе надо формировать документ Word'a. при помоши чего именно - не скажу, надо искать "php класс word".
с другой стороны - почему именно DOC? Формировать RTF на порядок проще(есть инфо по используемому языку разметки в отличие от), формировать HTML ты уже и так умеешь, на крайняк для DOCX имеется описание, хоть и громоздкое. Может, выбрать более удобный формат?
После формирования надо просто отдать человеку сформированные данные. С заголовками, которые инициирует скачивание, а не открытие в браузере.
PM MAIL   Вверх
lrad
Дата 12.7.2009, 12:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(skyboy @  12.7.2009,  12:01 Найти цитируемый пост)
на крайняк для DOCX имеется описание, хоть и громоздкое.

Где можно почитать?

PM MAIL ICQ   Вверх
skyboy
Дата 12.7.2009, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

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



ну, и выбрал же ты. самый нераспространенный формат, как мне кажется. даже PDF универсальнее.
wiki: docx
ecma: docx
iso: docx
где взять менее универсальное и более компактное описание - не в курсе. Ищи, гугл не запретили.
PM MAIL   Вверх
Nirvana77
Дата 12.7.2009, 23:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Братан, я могу ошибаться, но для Word так же как и для Excel нужно использовать COM-обьект!

Держи пример для Excel: 

Код

<?php
$xls = new COM("Excel.Application");       // Создаем новый COM-объект
$xls->Application->Visible = 1;                // Заставляем его отобразиться
$xls->Workbooks->Add();
$range=$xls->Range("A1");                    // Выбрали ячейку A1
$range->Value = "Что-то записываем";  // Вставили значение

// Сохраняем документ
$xls->Workbooks[1]->SaveAs("test.xls");

$xls->Quit();                          //Закрываем приложение 
$xls->Release();                     //Высвобождаем объекты
$xls = Null; 
$range = Null;
?>


PM MAIL   Вверх
Nirvana77
Дата 13.7.2009, 00:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Держи пример для Word  smile 

Код

<?php
$word = new COM("word.application");  // Создаем новый COM-объект
$word->Visible = 1;                   // Заставляем его отобразиться
$word->Documents->Add();

$word->Selection->TypeText("Текст, например имя из формы - $name и мейл из формы - $email");
$word->ActiveDocument->SaveAs("test.doc"); // Сохраняем документ
 
$word->Quit();                        //Закрываем приложение
$word = null;
?>



Это сообщение отредактировал(а) Nirvana77 - 13.7.2009, 00:15
PM MAIL   Вверх
lrad
Дата 13.7.2009, 13:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Nirvana77 Спасибо!

А как реализуется перенос заполненных данных для печати?(Не word).
К примеру возьмем для простоты платежку для банка;
я создаю форму, на ней заполняю все поля, нажимаю кнопку печать.
Как реализовать, чтобы на печать шел именно бланк?
тоесть я должен его сначала создать.Вопрос в чем? и где он должен храниться?
Если можно, то поподробней, пожалуйста.

ЗЫ. Мне нужна не платежка! Я просто на примере ее хочу понять принцип

Это сообщение отредактировал(а) lrad - 13.7.2009, 15:31
PM MAIL ICQ   Вверх
skyboy
Дата 13.7.2009, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

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



lrad, предупреждаю: работа с COM возможна только под windows.
печатать только сформированный на сервере DOC не получится: браузер может только предложить пользователю диалог "открыть/сохранить".
PM MAIL   Вверх
Nirvana77
Дата 13.7.2009, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(lrad @ 13.7.2009,  13:04)
ЗЫ. Мне нужна не платежка! Я просто на примере ее хочу понять принцип

COM использовать можно только на Windows, но практически на каждом Линуксе стоит OpenOffice. 
Для этого нужно просто зайди на их форум, прочитать как сделать документ Word на PHP используя OpenOffice. Или прочитать с чего можно содрать, например писанного на Java. Или взять уже готовое и пользоваться.
Для этого нужно только зайти в Google и набрать - PHP openOffice и получить кучу полезной информации:

PHP DocWriter 
http://phpdocwriter.sourceforge.net/ 

Или прочитать, куда рыть и с чего содрать можно тут
http://www.linux.org.ru/view-message.jsp?msgid=1896482

-----------------------

Если я тебя правильно понял, ты хочешь пример как сделать, как например тут, во вкладке Сбербанк
"Форма ПД-4 для оплаты через Сбербанк РФ" ?
http://www.waytothelight.ru   
Ну так это очень просто и к MS Word не имеет никакого отношения - это помесь html с xhtml. Сохраните себе этот бланк и разберите его на молекулы, что куда идет и где что выводится. 

Данные подставляются например: 

$plat = 'Плательщик: ____________ (подпись)';
echo '<div align="left">'.$plat.'</div>';

В итоге получится вот так:
<div align="left">Плательщик: ____________ (подпись) </div> 

PM MAIL   Вверх
nerezus
Дата 13.7.2009, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


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

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



Сколько проблем.
Просто пиши в doc-файл в html.
Это самый простой и очевидный способ.

Цитата

COM использовать можно только на Windows, но практически на каждом Линуксе стоит OpenOffice. 
 Сервера видел? Какой там ОО, если там даже иксов нет?
Нет, конечно это все можно поставить, но... это гемор, есть способы проще.

Цитата

Или прочитать с чего можно содрать, например писанного на Java. 
 http://php.net/java


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
Nirvana77
Дата 13.7.2009, 20:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(nerezus @ 13.7.2009,  19:41)
Просто пиши в doc-файл в html.

Самая мудрая мысль, загонять html с расширением doc  smile 
PM MAIL   Вверх
lrad
Дата 13.7.2009, 22:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(nerezus @  13.7.2009,  19:41 Найти цитируемый пост)
Сколько проблем.Просто пиши в doc-файл в html.Это самый простой и очевидный способ.


Не корректно печатается...+ много лишнего кода ворд делает....
PM MAIL ICQ   Вверх
bars80080
Дата 13.7.2009, 23:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

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



дык, не ворд же будет писать разметку, а ты. как запишешь, столько и возьмёт
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.1061 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


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

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