PHP_SCRIPT разбить ответ не несколько переменных

Тема в разделе "Подгрузка данных, которых нет в коде WEB-документа", создана пользователем dima911, 3 мар 2021.

Метки:
  1. dima911

    dima911 New Member Пользователи

    Регистрация:
    5 апр 2018
    Сообщения:
    89
    Город:
    Волгоград
    Добрый день!
    Столкнулся с такой задачей. Нужно выполнить перевод через гугл транслейтер нескольких границ.
    Но не хочется каждый раз дергать гугл по каждой границе.
    Я хотел отправлять запрос в гугл обрамленный служебными тегами а при получении раскидывать по нужным переменным, что бы за один запрос распарсить несколько граница.
    Возможно ли ответ от PHP_SCRIPT разбить на несколько переменных?
     
  2. dima911

    dima911 New Member Пользователи

    Регистрация:
    5 апр 2018
    Сообщения:
    89
    Город:
    Волгоград
    Беру в такие теги
    $text = '<1-- Hello --1>';
    $text .= '<2-- HI --2>';
    И в таких же тегах получаю ответ. Хотелось бы разобрать ответы по разным переменным.
     
  3. dima911

    dima911 New Member Пользователи

    Регистрация:
    5 апр 2018
    Сообщения:
    89
    Город:
    Волгоград
    или можно так <1> Привет </1> <2> Привет </2>
     
  4. dima911

    dima911 New Member Пользователи

    Регистрация:
    5 апр 2018
    Сообщения:
    89
    Город:
    Волгоград
    Решил такой конструкцией
    [VARF]
    [SET:idtovar][INT_ID][/SET]
    [SET:GRAN_TR]
    <PHP_SCRIPT=Ссылки недоступны для гостей
    data=[FIELDVALUE]<2><CD_GRAN_2!></2><3><CD_GRAN_3!></3><8><CD_GRAN_8!></8>[/FIELDVALUE]
    </PHP_SCRIPT>
    [/SET]
    [/VARF]

    В шаблоне вывода так
    [VARF:idtovar][CSVCS]<CD_GRAN_1!>[CSVCS][REPLACE(<2>{get}</2>|{get})][VARF:GRAN_TR][/REPLACE][CSVCS][REPLACE(<3>{get}</3>|{get})][VARF:GRAN_TR][/REPLACE][CSVCS]
     
    Root нравится это.
  5. dima911

    dima911 New Member Пользователи

    Регистрация:
    5 апр 2018
    Сообщения:
    89
    Город:
    Волгоград
    Подскажите можно ли в проекте указать по типу обязательной граница, наличие переменно "обязательно", что бы контролировать сбои ответов от гугла.
    При отсутствии переменной что бы страница шла на повторный парсинг?
     
  6. dima911

    dima911 New Member Пользователи

    Регистрация:
    5 апр 2018
    Сообщения:
    89
    Город:
    Волгоград
    Немного дополню
    Важно что бы результат без данной переменно "НЕ СОХРАНЯЛСЯ"
    т.е. как я понимаю нужно проверять переменную пустая она или нет после того как пришел ответ и если пустая то делать
    [ADDURL]<CD_DOCURL!>[/ADDURL]
    Но при это процесс записи игнорировать. Что бы не получилось, что документ сохранится частично с пустыми ячейками.
     
  7. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Попробуйте с помощью CHECKENTRY проверять наличие текста в результате Ссылки недоступны для гостей
     
  8. dima911

    dima911 New Member Пользователи

    Регистрация:
    5 апр 2018
    Сообщения:
    89
    Город:
    Волгоград
    Правильно ли я делаю?
    [IF1][CHARCOUNT][VARF:GRAN_TR][/CHARCOUNT]<=5[THEN][ADDURL]<CD_DOCURL!>[/ADDURL][CLEARDOC][/IF1]
     
  9. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Вроде да.
     
  10. dima911

    dima911 New Member Пользователи

    Регистрация:
    5 апр 2018
    Сообщения:
    89
    Город:
    Волгоград
    Не работает добавление ссылок
     
  11. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    CLEARDOC первее срабатывает, чем [ADDURL].

    Вместо использования CLEARDOC можно разместить выводимое содержимое шаблона вывода в том же макросе [IF1] после оператора [ELSE].

    Код:
    [IF1][CHARCOUNT][VARF:GRAN_TR][/CHARCOUNT]<=5[THEN][ADDURL]<CD_DOCURL!>[/ADDURL][ELSE]Шаблон вывода[/IF1]
     
  12. dima911

    dima911 New Member Пользователи

    Регистрация:
    5 апр 2018
    Сообщения:
    89
    Город:
    Волгоград
    Не понял как сделать так что бы документ без перевода игнорировался и не записывался, но при этом ссылка отправлялась на переобход.
    Во мой код, подскажите как это сделать?
    [VARF]
    [SET:idtovar][INT_ID][/SET]
    [SET:GRAN_TR]
    <PHP_SCRIPT=Ссылки недоступны для гостей
    data=[FIELDVALUE]<2><CD_GRAN_2!></2><3><CD_GRAN_3!></3><8><CD_GRAN_8!></8><16><CD_GRAN_16!></16>[/FIELDVALUE]
    </PHP_SCRIPT>
    [/SET]
    [SET:GRAN_IMG]
    [DFN]/images_catalog/[/DFN]<DOWNLOADFILE><CD_GRAN_7!></DOWNLOADFILE>
    [/SET]
    [/VARF]
    [IF1][CHARCOUNT][VARF:GRAN_TR][/CHARCOUNT]<=5[THEN][ADDURL]<CD_DOCURL!>[/ADDURL][CLEARDOC][/IF1]
    <CD_CYCLE_GRAN_1!>
     
  13. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Как и писал выше


    Код:
    [VARF]
    [SET:idtovar][INT_ID][/SET]
    [SET:GRAN_TR]
    <PHP_SCRIPT=http://translate.com2/index2.php[UTF-8]>
    data=[FIELDVALUE]<2><CD_GRAN_2!></2><3><CD_GRAN_3!></3><8><CD_GRAN_8!></8><16><CD_GRAN_16!></16>[/FIELDVALUE]
    </PHP_SCRIPT>
    [/SET]
    [SET:GRAN_IMG]
    [DFN]/images_catalog/[/DFN]<DOWNLOADFILE><CD_GRAN_7!></DOWNLOADFILE>
    [/SET]
    [/VARF]
    [IF1][CHARCOUNT][VARF:GRAN_TR][/CHARCOUNT]<=5[THEN][ADDURL]<CD_DOCURL!>[/ADDURL][ELSE]Шаблон вывода (что вывести в результат, когда перевод удачный)[/IF1]
    Также смотрите лог выполнения функций в нижней части окна результатов предпросмотра парсинга контента.
     

Поделиться этой страницей