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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: php5 и COM

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: Проблемы при создании СОМ объъектов в пхп5
Sneg
Отправлено: 29 Марта, 2007 - 12:57:54
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Март 2007  
Откуда: Russia


Помог: 0 раз(а)




в мануалах по установке пхп5 написано (цитата), "Версия PHP5 для Windows имеет встроенную поддержку данного расширения. Это означает, что для использования данных функций не требуется загрузка никаких дополнительных расширений."
но при попытке реализовать кае-либо сом-соединение выдается ошибка.
например соединение с word'ом
код стандартный пример (причем на php4.3 работает):
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.    $word=new COM("Word.application") or die("Couldn't start Word!");
  3.   // смотрю что $word из себя представляет
  4.    print_r($word) ;        echo"<br>";
  5.    var_export($word);      echo"<br>";
  6.    var_dump($word);        echo"<br>";
  7.  // далее стандартный пример
  8.    $word->visible =true;
  9.    $word->Activate();
  10.    $word->Documents->Add("c:bpl_por.dot");
  11.    $bkm[1]="nomer";
  12.    $bkm[2]="data";
  13.    $bkm[3]="summa";
  14.    for($i=1; $i<=3; $i++)
  15.    {
  16.    if ($word->ActiveDocument->Bookmarks->Exists($bkm[$i]."1"))
  17.       {  $word->ActiveDocument->Bookmarks[$bkm[$i]."1"]->Select();
  18.        
  19.        $word->Selection->InsertAfter("123");
  20.    }
  21.    if ($word->ActiveDocument->Bookmarks->Exists($bkm[$i]."2"))
  22.    
  23.    {  $word->ActiveDocument->Bookmarks[$bkm[$i]."2"]->Select();
  24.        $word->Selection->InsertAfter($$bkm[$i]);
  25.    }
  26.    }
  27.   $fname="".uniqid("w").".doc";
  28.    echo $fname;
  29.    $word->ActiveDocument->SaveAs("C:Program FilesApache GroupApachehtdocsword".$fname);
  30.    $word->Quit();
  31.    $word->release() ;
  32.    header ("Location: http://127.0.0.1/word/".$fname);
  33.  
  34. ?>


в результате в браузере:
Цитата:
com Object
com::__set_state(array( ))
object(com)#1 (0) { }
Microsoft Word


Цитата:
Fatal error: Uncaught exception 'com_exception' with message '<b>Source:</b> Microsoft Word<br/><b>Description:</b> &#205;&#229; &#243;&#228;&#224;&#229;&#242;&#241;&#255; &#224;&#234;&#242;&#232;&#226;&#232;&#231;&#232;&#240;&#238;&#226;&#224;&#242;&#252; &#239;&#240;&#232;&#235;&#238;&#230;&#229;&#237;&#232;&#229;' in C:Program FilesApache GroupApachehtdocsword_com.php:21 Stack trace: #0 C:Program FilesApache GroupApachehtdocsword_com.php(21): com->Activate() #1 {main} thrown in C:Program FilesApache GroupApachehtdocsword_com.php on line 21
///


может кто подскажет что? может как-то по-другому php.ini надо конфигурировать, чтобы СОМ работало правильно?
 
 Top
Sneg
Отправлено: 30 Марта, 2007 - 18:40:01
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Март 2007  
Откуда: Russia


Помог: 0 раз(а)




вопрос снят: дело было в версии PHP , поставила 4.6 все заработало.
 
 Top
-SCHATTEN-
Отправлено: 30 Марта, 2007 - 20:38:27
Post Id



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


Покинул форум
Сообщений всего: 615
Дата рег-ции: Июль 2006  
Откуда: Оттуда !


Помог: 0 раз(а)




Дело было не в версии а в настройках файла php.ini скорее всего там просто это было выключено. а убрать это из РНР 5 никто немог !
 
 Top
Sneg
Отправлено: 01 Апреля, 2007 - 06:47:21
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Март 2007  
Откуда: Russia


Помог: 0 раз(а)




это понятно, что в .ini дело - но где именно, те настройки, которые надо сделать.
все, что непосредственно были выделены в блок [COM] - я перепробовала - но так толком не получилось. - вот и спрашивала - может, кто подскажет, КАК настроить .ini для PHP5, чтобы можно было с СОМом работать)))...
 
 Top
san4es
Отправлено: 18 Июня, 2010 - 14:45:33
Post Id


Частый гость


Покинул форум
Сообщений всего: 201
Дата рег-ции: Март 2008  
Откуда: СПб, Ломоносов


Помог: 0 раз(а)




Sneg пишет:
КАК настроить .ini для PHP5, чтобы можно было с СОМом работать)))

присоединяюсь. скрипт в редакторе работает на сервере нет - выдаёт ошибку 500.
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  // запускаем Word
  3. $word = new COM("word.application") or die("Ошибка запуска Word");
  4. echo "Word запушен, версия {$word->Version}\n";
  5.  
  6. // поверх всех окон?
  7. $word->Visible = 1;
  8.  
  9. // создаём пустой документ
  10. $word->Documents->Add();
  11. // что-то пишем
  12. $word->Selection->TypeText(iconv('utf-8','windows-1251', 'проверка печати скриптом'));
  13. // или просто открываем существующий
  14. //$word->Documents->Open(realpath('test.doc'));
  15. // отправляем на печать
  16. $word->Documents[1]->PrintOut();
  17. // закрываем без лишних диалогов
  18. $word->Documents[1]->Close(0);
  19. // выход из Word
  20. $word->Quit();
  21.  
  22. // очистка экземпляра COM
  23. $word = NULL;
  24. ?>


Отредактировано модератором: JustUserR, 19 Июня, 2010 - 12:04:16
Откройте новую тему если у вас имеется вопрос
 
 Top
EuGen Администратор
Отправлено: 18 Июня, 2010 - 17:38:28
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Прошло 3 года.. как думаете, тема еще актуальна?
Тема закрыта!


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB