Добро пожаловать на ИТ форум!

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

Регистрация

Вопрос вставки текста из запроса

Чих Пых

New Member
Регистрация
18.06.2019
Сообщения
9
Уважаемые специалисты !

Есть задача - некоторый бинарный файл генерирует HTML документ, иногда заглядывая в разные файлы в качестве шаблонов, которые можно править. В одном таком месте мне нужно динамически менять информацию в стиле таблица -> строка -> слева название, справа значение. Сейчас там жёстко зашита строка.

Я смог реализовать данный вопрос отредактировав значение в шаблоне через <img src="внешний скрипт">, но в целом вся страница таблично-текстовая, и картинка смотрится убого и неуместно.

Доступа в <head> у меня нет, да и вообще даже в <body> и <table> тоже.
Возможно ли решить вопрос подгрузки данных (просто строку из внешнего скрипта) через какой-нибудь скрипт, расположенный прямо в ячейке таблицы ? Ну или не через скрипт а какую нибудь модную или не очень модную технологию, но непосредственно из ячейки ?
 

Чих Пых

New Member
Регистрация
18.06.2019
Сообщения
9
Это ответ или вопрос ?

PHP это вообще разговор неочем, можно и PHP прикрутить но пока что внешний скрипт на перле, я бы ограничился скриптом на шелле который печатает HTTP header и собственно нужную строчку.

Вопрос же стоит как этот внешний запрос выполнить из ячейки таблицы.
 

BaNru

Пацифизжу
Регистрация
13.11.2010
Сообщения
3 885
О, какие особенности. Оказывается PERL используется. Мы это конечно знали.
И знаем из какой ячейки. Банковской что ли?

Извини, но какой вопрос, такой и ответ.
 

Чих Пых

New Member
Регистрация
18.06.2019
Сообщения
9
Оказывается Пацифизжу читать не умеет. Пацифизжу, пожалуйста, можно без тупых комментариев, можете даже просто помолчать. Ясен перец что для генерации нужных данных используется какой то язык программирования который в этом вопросе никакого значения не имеет. Просто прочитайте первый пост, там чётко написано что чем генерируется без всяких оказывается.

Уважаемые Гуру, может все таки есть какое то решение ?
 

BaNru

Пацифизжу
Регистрация
13.11.2010
Сообщения
3 885
А прочитать ответ никак?
Не понятно когда, зачем и почему обновлять.
Если на стороне клиента, то это AJAX можно использовать.
Если на стороне сервера то ваш Perl должен выдирать и вставлять результаты.
Непонятно что у вас есть, а чего нет.

"Дядечка, я знаю что у вас сломалось!" (с) Ералаш.

PS Ники написаны не там и мой ник не Пацифизжу.
 

Volly

Active Member
Регистрация
21.03.2012
Сообщения
668
Чих Пых сказал(а):
...чётко написано...
Не надо писать чётко, надо писать понятно, разумеется, если хотите получить помощь
 

Чих Пых

New Member
Регистрация
18.06.2019
Сообщения
9
Volly сказал(а):
...чётко написано...
Не надо писать чётко, надо писать понятно, разумеется, если хотите получить помощь
Окей, допускаю, что я не прав.

Попробуйте задать наводящий вопрос чтобы я понял что Вы хотите от меня узнать по моей проблеме.

По предыдущему комменту да, разумеется со стороны клиента.
ещё раз повторюсь что доступа в <head> <body> и <table> у меня нет.
могу что то вставить в кусок <tr><td>ТЕКСТ1</td><td>ТЕКСТ2</td></tr>
сейчас я сделал ТЕКСТ2 как <img srс="ссылка на внешний Perl скрипт"> который рендерит кусок текста как картинку.
 

miketomlin

Member
Регистрация
12.11.2013
Сообщения
95
JS-скрипты подключаются какие-нибудь на странице (из отдельных файлов)? К которым у вас есть доступ.
 

Чих Пых

New Member
Регистрация
18.06.2019
Сообщения
9
Вроде бы нет. Проблема в том что это совершенно закрытая железка на линукс-подобной встроенной системе, которая уже 100 лет не поддерживается :)
Из файлов пока нашёл только шаблон для строки таблицы.

Давайте попробуем поставить вопрос так: можно ли вообще это сделать изнутри строки или ячейки страницы ?
 

BaNru

Пацифизжу
Регистрация
13.11.2010
Сообщения
3 885
Что сложного прочитать моё первое сообщение? Там всего 4 слова? Два из которых требуется прочитать и нажать.
 

Чих Пых

New Member
Регистрация
18.06.2019
Сообщения
9
Ничего сложного в нажатии нет. Я лично голосую за PHP, отчетливо понимая что подобная постановка вопроса сама по себе бред.
Если же можно сделать через cлабознакомый мне JS. то попрошу многоуважаемых гуру пример, что надо вписать в шаблон таблицы.
Только не надо спрашивать откуда скрипт грузить, example.org меня вполне устроит.
 

BaNru

Пацифизжу
Регистрация
13.11.2010
Сообщения
3 885
Вставляешь через скрипт в таблицу необходимый запро:
<script>тут сам ajax и можно сращу вывод</script>

Тут уже зависит от того какой вариант больше нравится. Дальше гуглим про ламповый "js xhr", любимый новичками "jquery ajax" или современный "js fetch". Примеров и мануалов 100500.
Что-то непонятно будет - уже дальше спрашиваем.

Что-то более подробно, после более подробных вопросов.
 

Чих Пых

New Member
Регистрация
18.06.2019
Сообщения
9
Как же тяжело общаться с умными людьми. Мне вот лично совершенно безразличен JS, и даже думать о нем приходится только потому, что кому то ранее думать было лень. Ради одноразовой задачи вставки одного значения в ячейку таблицы предлагается изучить целый язык программирования. Бесспорно, это повысит общий уровень моей образованности, только не понимаю зачем.

Попробуем по другому ! Уважаемый BaNru, есть внешний скрипт на перле по URI /somepath/somescript
{
print "content-type: text/plain\n";
print "\n";
print "123"
}

Вас не затруднит наваять кусочек кода на JS в любой версии, а судя по описанию, меня в 2019 году даже устроит js fetch, чтобы строка "123" появилась между <td> и </td> ? Правда правда, честное пионерское, Вы бы очень помогли мне и сильно сэкономили бы моё время :), и получили мы ментальное огромное +100500 к своей карме.
 

BaNru

Пацифизжу
Регистрация
13.11.2010
Сообщения
3 885
Можно было только первую ссылку в гугле открыть
Код:
<script>fetch('/somepath/somescript').then(function(response) {
  return response.text();
}).then(function(text) {
  document.write(text)
});</script>
 

Чих Пых

New Member
Регистрация
18.06.2019
Сообщения
9
Уважаемый BaNru !!! Все почти получилось !!!
Почти +100500 Вам к карме ! Если честно Вы немного добавили знаний в опилки в моей голове, чему я бесконечно рад.

Теперь осталось решить проблему, что данный скрипт видимо делает полный overwrite всему документу (то есть вместо таблицы отображается пустая страница с контентом, генерируемым внешним скриптом).
 

BaNru

Пацифизжу
Регистрация
13.11.2010
Сообщения
3 885
Да, точно, document.write() после загрузки затирает файл. Я уже и забыл об этом.

<div id="abc"></div>
<script>fetch('/somepath/somescript').then(function(response) {
return response.text();
}).then(function(text) {
document.querySelector('#abc').textContent = text;
});</script>

Либо innerHTML вместо textContent , если надо вставить HTML код.
 

Чих Пых

New Member
Регистрация
18.06.2019
Сообщения
9
BaNru ! Вы мой герой ! Простите если поначалу мы немного не поняли друг друга.

Искренне выражаю Вам свою огромную благодарность за Вашу помощь !
Пусть Вам будет много раз по +100500 в Вашу карму !

Вы просто сэкономили мне невероятное количество времени и сил, учитывая, что пока мы в Вами общались, я успел провести частичный реверс-инженеринг этой хреновины и написать пачку патчей на 3 языках вместо траты времени :) и Вы избавили меня от необходимости изучать JS для решения этой задачи.
 
Верх Низ