Как программно выполнить URL
24.11.2011
16:21
#1
Здравствуйте!
Подскажите как программно выполнить запрос к PHP скрипту находящемуся на сервере поадресу:
Никаких файлов передавать не нужно. Просто произвести переход по этому адресу под правами администратора этого сайта. (Логин и пароль есть)
Пытался прикрутить функцию ОтправитьДляОбработки
но как то не смог найти подходящего примера в интернете. В документации не очень понятно.
Подскажите как программно выполнить запрос к PHP скрипту находящемуся на сервере поадресу:
Никаких файлов передавать не нужно. Просто произвести переход по этому адресу под правами администратора этого сайта. (Логин и пароль есть)
Пытался прикрутить функцию ОтправитьДляОбработки
но как то не смог найти подходящего примера в интернете. В документации не очень понятно.
24.11.2011
17:47
#2
А просто ЗапуститьПриложение("http://site.ru/admin/index.php?event=update") не подходит?
25.11.2011
18:40
#3
- На сайте нужно вводить логин и пароль.
- Пишет что нет такой процедуры или функции
- Пишет что нет такой процедуры или функции
28.11.2011
18:59
#6
"У меня есть такой метод.
Глобальный контекст (Global context)ЗапуститьПриложение (RunApp)
Синтаксис:
ЗапуститьПриложение(<СтрокаКоманды>, <ТекущийКаталог>, <ДождатьсяЗавершения>)
Параметры:
<СтрокаКоманды> (обязательный)
Тип: Строка.
Командная строка для запуска приложения либо имя файла, ассоциированного с некоторым приложением.
<ТекущийКаталог> (необязательный)
Тип: Строка.
Задает текущий каталог запускаемого приложения.
В режиме веб-клиента игнорируется.
<ДождатьсяЗавершения> (необязательный)
Тип: Булево.
Истина - дожидаться завершения запущенного приложения перед продолжением работы.
Значение по умолчанию: Ложь
Описание:
Выполняет запуск внешнего приложения либо открытие файла с использованием ассоциированного с ним приложения.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент.
Примечание:
В отличие от функции КомандаСистемы запуск приложения выполняется непосредственно, минуя командный интерпретатор.
Поведение метода зависит от используемой операционной системы и режима запуска. Используемые в реализации метода механизмы операционной системы допускают различные варианты использования. Например, в некоторых режимах метод может открывать html ссылки с помощью браузера "по умолчанию". Такие возможности не являются штатными т.к. не гарантируется их наличие во всех режимах запуска.
Для работы метода на веб-клиенте, необходимо предварительно подключить расширение работы с файлами.
Пример:
// открытие файла MS Excel
ЗапуститьПриложение("Таблица.xls");"
Глобальный контекст (Global context)ЗапуститьПриложение (RunApp)
Синтаксис:
ЗапуститьПриложение(<СтрокаКоманды>, <ТекущийКаталог>, <ДождатьсяЗавершения>)
Параметры:
<СтрокаКоманды> (обязательный)
Тип: Строка.
Командная строка для запуска приложения либо имя файла, ассоциированного с некоторым приложением.
<ТекущийКаталог> (необязательный)
Тип: Строка.
Задает текущий каталог запускаемого приложения.
В режиме веб-клиента игнорируется.
<ДождатьсяЗавершения> (необязательный)
Тип: Булево.
Истина - дожидаться завершения запущенного приложения перед продолжением работы.
Значение по умолчанию: Ложь
Описание:
Выполняет запуск внешнего приложения либо открытие файла с использованием ассоциированного с ним приложения.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент.
Примечание:
В отличие от функции КомандаСистемы запуск приложения выполняется непосредственно, минуя командный интерпретатор.
Поведение метода зависит от используемой операционной системы и режима запуска. Используемые в реализации метода механизмы операционной системы допускают различные варианты использования. Например, в некоторых режимах метод может открывать html ссылки с помощью браузера "по умолчанию". Такие возможности не являются штатными т.к. не гарантируется их наличие во всех режимах запуска.
Для работы метода на веб-клиенте, необходимо предварительно подключить расширение работы с файлами.
Пример:
// открытие файла MS Excel
ЗапуститьПриложение("Таблица.xls");"
28.11.2011
19:05
#7
спс. но без запуска приложений надо. чтобы юзер не видел. в фоновом режиме.
ничего криминального. просто реально не нужно ему видеть как я скрипт обмена с сайтом запускаю. в этом то и фишка.
ничего криминального. просто реально не нужно ему видеть как я скрипт обмена с сайтом запускаю. в этом то и фишка.
28.11.2011
21:33
#8
"Может это наведет на мысль...
Работа с HTML-документами
i Заполнение HTML-анкет
ФамилияИмяОтчество
Работа с HTML-документами
i Заполнение HTML-анкет
ФамилияИмяОтчество
Процедура URLПриИзменении(Элемент) ЭлементыФормы.ПолеHTML.Перейти(URL); КонецПроцедуры"
Процедура ПолеHTMLДокументСформирован(Элемент) // Событие возникает и при открытии формы, когда в реквизите // URL содержится пустая строка. Если URL <> """" Тогда Док = ЭлементыФормы.ПолеHTML.Документ; // При попытке обратиться к несуществующему свойству // произойдет ошибка Док.forms["frm"].fam.Value = "Иванов"; Док.forms["frm"].nam.Value = "Иван"; Док.forms["frm"].otch.Value = "Иванович"; КонецЕсли; КонецПроцедуры
29.11.2011
06:19
#9
"Мне тут на соседнем форуме говорили что можно как то методом ПОЛУЧИТЬ
сделать, но у меня что то ошибку выдает(
сделал скрипт echo "OK";
в браузере выдает - OK
Запустил его через 1С.
Выдало совсем не OK в xml файле сообщение по английски: что типа запущено teamviewer или вроде того. (Прога стоит для удаленного управления компом).
Ну думаю, порт занят может. Выключил ее.
Заново через 1С выполняю скрипт - теперь ошибка метода ПОЛУЧИТЬ на 1С ке.
Чудеса...
Вроде метод правильно использую:
test.php содержит:
Ошибка 1С:
Ошибка при вызове метода контекста (Получить)
При наборе строки в браузере: kurator.loc/test.php »»
выдает OK
В чем может быть ошибка?"
сделать, но у меня что то ошибку выдает(
сделал скрипт echo "OK";
в браузере выдает - OK
Запустил его через 1С.
Выдало совсем не OK в xml файле сообщение по английски: что типа запущено teamviewer или вроде того. (Прога стоит для удаленного управления компом).
Ну думаю, порт занят может. Выключил ее.
Заново через 1С выполняю скрипт - теперь ошибка метода ПОЛУЧИТЬ на 1С ке.
Чудеса...
Вроде метод правильно использую:
// --------- СОЕДИНИМСЯ И ЗАПУСТИМ СКРИПТ ОБМЕНА-------------
Попытка
Соединение=Новый HTTPСоединение(ИмяСервера);
Исключение
Сообщить("Не удалось установить соединение с сервером:"
+ Символы.ПС + ИнформацияОбОшибке().Описание, СтатусСообщения.Важное); Возврат;
КонецПопытки; // посылаем запрос
СтрокаВыполненияСкрипта="http://kurator.loc/test.php";
Попытка
Соединение.Получить(СтрокаВыполненияСкрипта,КаталогВременныхФайлов() + "temp___.xml");
Соединение = Неопределено;
Сообщить("На сервере произведено обновление БД!"+КаталогВременныхФайлов() + "temp___.xml");
Исключение
Сообщить(ИнформацияОбОшибке().Описание, СтатусСообщения.Важное);
КонецПопытки;
test.php содержит:
www.w3.org/TR/xhtml1/DTD... »»">
Ошибка 1С:
Ошибка при вызове метода контекста (Получить)
При наборе строки в браузере: kurator.loc/test.php »»
выдает OK
В чем может быть ошибка?"
29.11.2011
10:58
#10
Подождика, а ты сделать-то что хочешь? Объект HTTP-соединение используется для получения файла с http-ресурса. для запуска скрипта тебе нужно на форме разместить поле HTML-документа (тип данных строка, элемент управления "Поле HTML-документа"), назначить строке адрес твоего скрипта. Тогда при открытии формы поле выполнит скрипт. Так же через это поле можно что-либо "рисовать" с помощью HTML (мой пример выше). Функциональность поля-HTML определяется функциональностью браузера системы.
Вот ссылка на базу, в ней пример работы с HTML и HTTP (для управляемых форм).
Вот ссылка на базу, в ней пример работы с HTML и HTTP (для управляемых форм).
Читают тему
(гостей: 1)