Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: COM-объекты в PHP
Форумы портала PHP.SU » PHP » Программирование на PHP » COM-объекты в PHP

Страниц (2): [1] 2 »
 

1. Михаил - 26 Ноября, 2010 - 13:03:56 - перейти к сообщению
Здравствуйте!!!
Проблема следующая: пхп-скрипт вызывает СОМ-объект для работы с Excel'ем
PHP:
скопировать код в буфер обмена
  1.  
  2.         $xls = new COM("Excel.Application"); // Создаем новый COM-объект
  3.         $xls->Application->Visible = 1;      // Заставляем его отобразиться
  4.         $xls->Workbooks->Add();              // Добавляем новый документ
  5.  
  6. /*------*/
  7.  
  8.  


При запуске скрипта Excel открывается на сервере.
Как сделать, чтобы Excel запускался на клиентской машине?
Заранее спасибо Улыбка
2. OrmaJever - 26 Ноября, 2010 - 13:54:11 - перейти к сообщению
никак. php не имеет доступа к клиенту.
3. Михаил - 26 Ноября, 2010 - 13:59:26 - перейти к сообщению
А с помощью аякса это можно как-нибудь осуществить?
4. DlTA - 26 Ноября, 2010 - 14:06:51 - перейти к сообщению
встречный вопрос: А зачем?
5. ALEN - 26 Ноября, 2010 - 14:07:34 - перейти к сообщению
Скажу так, если это можно будет спокойно реализовать, то пользовательский компьютер будет прямо на ладошке вместе с его жизнью.
6. Мелкий - 26 Ноября, 2010 - 14:10:02 - перейти к сообщению
Михаил, из соображений безопасности, нельзя.

Но как в скором времени отзовётся JustUserR, а я его опережу - ActiveX и только для IE - тогда возможно.
7. Михаил - 26 Ноября, 2010 - 14:23:45 - перейти к сообщению
Цитата:
встречный вопрос: А зачем?

для заполнения экселевской формы. часть данный заполняется из БД, часть данных пользователи должны заполнять вручную.

Но если не возможна реализация на клиентской машина, тогда для каких целей они используются?

Может есть какой-то компромисс?
например, сохранить сформированный файл?
8. JustUserR - 26 Ноября, 2010 - 14:29:28 - перейти к сообщению
Михаил пишет:
Как сделать, чтобы Excel запускался на клиентской машине?
Возможность осуществления открытия XLS-документа на клиентсой стороне зависит от включаемого набора фукнциональных компонентов предоставляемых конечному пользователю - в частности для обеспечения гененрации представления некоторого объема информации в виде excel-таблицы - достаточно осуществить создание целевого документа и отправку его пользователю браузера со спецификацией MIME-типа В случае если вам необходимо допустить возможность пользователя интегактивного взаимодействия с документом посредством оригинального excel-компонента - то в таком случае в действительности единственным решением является использование Internet explorer с технолгией ActiveX - что является полностью приемлемым решением в случае применение указанный действия в целях администрирования web-сайта
9. ALEN - 26 Ноября, 2010 - 14:30:08 - перейти к сообщению
А не проще дать пользователю зарегистрироваться на сайте и просто делать автозаполнение форм???
10. Михаил - 26 Ноября, 2010 - 14:49:17 - перейти к сообщению
Цитата:
А не проще дать пользователю зарегистрироваться на сайте и просто делать автозаполнение форм???

Дело в том, что пользователь делает запрос, на основании которого СОМ-объектом формируется типовая форма.

кроме Актив Х способов нет?
11. JustUserR - 26 Ноября, 2010 - 14:50:20 - перейти к сообщению
ALEN пишет:
А не проще дать пользователю зарегистрироваться на сайте и просто делать автозаполнение форм???
В случае если оригинальный XSL-файл включает в себя достаточно сложную структуру обеспечвающую такие программные возможности как контроль типов данных и организация алгоритмической взаимосвязи между информационными компонентами - то оптимальным решением является предоставление возможности пользователю по оперированию с оригинальным документом
12. Михаил - 26 Ноября, 2010 - 14:57:58 - перейти к сообщению
структура XSL-файла простая - в определенные ячейки вносятся данные из БД.
13. JustUserR - 26 Ноября, 2010 - 15:29:21 - перейти к сообщению
Михаил пишет:
Структура XSL-файла простая - в определенные ячейки вносятся данные из БД.
В качестве возможного варианта решения вашей задачи допустимо использование схемы включающей в себя конвертирование информационных полей в процессе передачи их значений между серверной и клиентской стороной - в частности целевой PHP-скрипт выполняет открытие требуемого XLS-файла и производит его конвертацию в набор полей элементов управления в соовтетствии с правилами сохрнанения индексирования - что предоставляет возможность пользователю производить редактирование параметров web-ресурса в классической форме
14. DlTA - 26 Ноября, 2010 - 17:23:43 - перейти к сообщению
Михаил, а что мешает выслать пользователю файл, который юзверь заполнит на своей у себя и отошлет на сервер?
15. JustUserR - 27 Ноября, 2010 - 12:41:41 - перейти к сообщению
DlTA пишет:
Что мешает выслать пользователю файл, который юзверь заполнит на своей у себя и отошлет на сервер?
Использование предполагаемой вами схемы проведения модификакции XLS-файла посредством его загрузки на локальный компьютер - включает в себя проведения пользователем множества мануальных операций и отсутствие интерактивности а также необходимость наличия на клиентмской стороне соответствующего программного обеспечения - в то время как предлагаемый вами вариант не осуществляет зависимостей от клиентского ПО

 

Powered by ExBB FM 1.0 RC1