Задать вопрос
@Kirill-Gorelov
С ума с IT

Как вставить свой путь к файлу в document.documentElement.innerHTML?

Всем привет. Хочу сделать для себя отображение кода с синтаксимом.
Нашел библиотеку, все хорошо. Но проблема.
document.documentElement.innerHTML - отображает код своей страницы.
А как сделать, что бы innerHTML отображал код файла который я хочу указать?
То есть я передаю путь файла через GET параметр в php. И как мне вывести содержимое этого файла с помощью innerHTML?

Я так же понимаю, что .innerHTML может выводить не только html содержимое, но и php и другие языки?
  • Вопрос задан
  • 219 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
@r_zaycev
Вы что-то запутались. document.documentElement.innerHTML это на клиенте (только), а php это на сервере (только).

Читайте нужный файл на сервере, делайте htmlspecialchars и отправляет в браузер. А там уже форматируйте клиентской библиотекой код.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
BuriK666
@BuriK666
Компьютерный псих
php.net/manual/ru/function.highlight-file.php
<?php
echo highlight_file($_GET['f'])
?>

Предостережение
Необходимо пользоваться функцией highlight_file() с должным вниманием, с тем чтобы по неосторожности не раскрыть конфиденциальную информацию, такую как пароли или любую другую информацию, которая может создать потенциальную угрозу безопасности.
Ответ написан
Комментировать
Acuna
@Acuna
Заполнил свой профиль
Дак в чем проблема? Аяксом вызываете какой-нибудь файл (на php), передаете в него нужные параметры (если хотите), подвешиваете колбек и в его теле уже обрабатываете какой-нибудь тег на странице и в нем выводите содержимое этого файла:

$.ajax ({
  
  'method': 'get',
  'url': 'http://ваш_сайт/my-file.php',
  'data': { массив параметров по желанию },
  'success': function (content) {
      $('#mytag').html (content);
  },
  
});

Предварительно вставьте на страницу код вида

<div id="mytag"></div>

А в my-file.php уже суйте highlight_file () или что вам нужно через echo. JS - это просто прокладка, он сам ничего не получает, он может только содержимое колбека всунутого в него получить.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы