PHP.SU

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

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

> Найдено сообщений: 3
dima_si Отправлено: 31 Августа, 2016 - 09:57:11 • Тема: Связать якорь тега [A] и [SELECT] • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 910
armancho7777777, OrmaJever спасибо за пинок в нужном направлении, готовый вариант кода выглядит следующим образом (возможно кому-то и пригодится):

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2.         var olds=$(document).scrollTop();
  3.         $(document).on('scroll', function(e) {
  4.                 $('#scrl').html('');
  5.                 var s = $(document).scrollTop();                                       
  6.                 var name='';
  7.                 if(olds<s){
  8.                         $("a[name]").each(function(){
  9.                                 if(s>=$(this).offset().top) {name=$(this).attr('name');}
  10.                                
  11.                                 });
  12.                 }
  13.                 else{
  14.                         var DelaemIveriyu = $("a[name]").get().reverse();
  15.                         $(DelaemIveriyu).each(function(){
  16.                                 if(s<=$(this).offset().top){name=$(this).attr('name');}
  17.                         });
  18.                 }
  19.                 $('SELECT option').each(function(){
  20.                         if($(this).attr('value')=='#'+name)this.selected=true;
  21.                         else this.selected=false;                      
  22.                 });
  23.                 olds=s;
  24.         });
  25.  
dima_si Отправлено: 29 Августа, 2016 - 14:13:58 • Тема: Связать якорь тега [A] и [SELECT] • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 910
Уважаемые форумчане, уверен, что кто-то из вас уже сталкивался с подобной задачей. На странице имеется список SELECT, который в свою очередь содержит все якоря, которые раскиданы по странице. При выборе селекта настроен переход на нужный якорь. Необходимо настроить обратное взаимодействие, когда при скроллинге будет меняться значение SELECT'a в соответствии с проходящем якорем. Использую JQuery, т.ч. можно и на нем. Кто в теме пожалуйста подскажите, как это можно реализовать.
dima_si Отправлено: 28 Марта, 2013 - 10:01:15 • Тема: Помогите пожалуйста разобраться с DCOM объектом (1C + PHP) • Форум: Вопросы новичков

Ответов: 0
Просмотров: 215
Уважаемые форумчане, прошу помощи в решении своего вопроса, возможно, кто-то сталкивался с вопросами интеграции 1С 7.7 в приложения WEB. Даже и не знаю на каком из форумов задавать данный вопрос. Имеется WEB приложение, написанное на PHP (Windows + Apache + PHP + MySQL), реализован модуль формирования документов 1С через WEB-интерфейс (модуль рабочий), 1С установлена на WEB-сервере, для интеграции используется DCOM объект «V77.GeneralPropPage».
Алгоритм действия: пользователь заходит через WEB-интерфейс, совершает какое-то действие (нажимает кнопку), в 1С создается необходимый документ.
Встал вопрос о разделении серверов, 1С переезжает на отдельный сервер, не удается подключить DCOM объект удаленного сервера

Тестовый код подключения DCOM-объекта на PHP (локальный вариант, код работает)

PHP:
скопировать код в буфер обмена
  1. $path="C:\\Base\\1c_base";
  2. $myCom = new COM("V77.Application") or die("Unable to instantiate");
  3. if ($myCom->Initialize($myCom->RMTrade,"/d$path /nUser /pPassword","NO_SPLASH_SHOW")==0)
  4.         echo "ERROR [$path]";
  5. else
  6.         echo "OK! [$path]";
  7.  


Для подключения удаленного сервера используется следующий код PHP

PHP:
скопировать код в буфер обмена
  1. $path="C:\\Base\\1c_base";
  2. $server=”192.168.1.2”;   //$server=”Server1C”;
  3. $myCom = new COM("V77.Application",$server) or die("Unable to instantiate");
  4. if ($myCom->Initialize($myCom->RMTrade,"/d$path /nUser /pPassword","NO_SPLASH_SHOW")==0)
  5.         echo "ERROR [$path]";
  6. else
  7.         echo "OK! [$path]";
  8.  

Ответ сервера:
Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `V77.Application': Отказано в доступе. ' in F:\home\test\www\index.php:9 Stack trace: #0 F:\home\test\www\index.php(3): com->com('V77.Application', '192.168.1.2') #1 {main} thrown in F:\home\test\www\index.php on line 3

Была мысль, что нужна авторизация, в мануалах PHP практически нет примеров (и толкогого описания) авторизованного доступа, есть строчка: «If server_name is an array, it should contain the following elements (case sensitive!). Note that they are all optional (although you need to specify both Username and Password together); if you omit the Server setting, the default server will be used (as mentioned above), and the instantiation of the object will not be affected by the directive.», тогда поменял код и добавил авторизацию ассоциированным массивом:

PHP:
скопировать код в буфер обмена
  1. $path="C:\\Base\\1c_base";
  2. $server=array("Server"=>"192.168.1.2","Username"=>"user1","Password"=>"MyPassword");
  3. $myCom = new COM("V77.Application",$server) or die("Unable to instantiate");
  4. if ($myCom->Initialize($myCom->RMTrade,"/d$path /nUser /pPassword","NO_SPLASH_SHOW")==0)
  5.         echo "ERROR [$path]";
  6. else
  7.         echo "OK! [$path]";
  8.  

Ответ сервера:
Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `V77.Application': Сервер RPC недоступен. ' in F:\home\test\www\index.php:3 Stack trace: #0 F:\home\test\www\index.php(3): com->com('V77.Application', Array) #1 {main} thrown in F:\home\test\www\index.php on line 3

Как видим это не массив.

Еще была мысль, что это структура (класс), попробовал следующим кодом:

PHP:
скопировать код в буфер обмена
  1. class myClass {
  2.         var $Server='192.168.1.2';
  3.         var $Username='user1';
  4.         var $Password='MyPassword';
  5. }
  6.  
  7. $server= new myClass();
  8. $path="C:\\Base\\1c_base";
  9. $myCom = new COM("V77.Application",$server) or die("Unable to instantiate");
  10. if ($myCom->Initialize($myCom->RMTrade,"/d$path /nUser /pPassword","NO_SPLASH_SHOW")==0)
  11.         echo "ERROR [$path]";
  12. else
  13.         echo "OK! [$path]";
  14.  

Ответ сервера:
Fatal error: Uncaught exception 'com_exception' with message 'Could not create COM object - invalid arguments!' in F:\home\test\www\index.php:9 Stack trace: #0 F:\home\test\www\index.php (9): com->com('V77.Application', Object(myClass)) #1 {main} thrown in F:\home\test\www\index.php on line 9

Тоже не подошло...

Системный администратор клянется и божиться, что доступ до объекта имеется. Пробовали и через определенного пользователя и давали доступ для всех пользователей, не помогло.

У кого имеется опыт в данном вопросе, прошу подскажите, каким образом организовать связь с DCOM-объектом удаленного сервера? Желательно авторизованный доступ, но мне будет интересен и опыт не авторизованного доступа.

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB