IMHO.WS

IMHO.WS (https://www.imho.ws/index.php)
-   Веб-программирование (https://www.imho.ws/forumdisplay.php?f=29)
-   -   Как вставлять код из одного файла в другой (https://www.imho.ws/showthread.php?t=44280)

Psionic Vision 25.11.2003 02:12

Как вставлять код из одного файла в другой
 
Я где-то читал что есть код позволяющий вставить один HTML файл в другой, прямо в том месте где пишешь этот код... Только синтаксис не помню.. может кто знает?

Stasik 25.11.2003 02:56

iframe?

Psionic Vision 25.11.2003 03:29

Нет, не iframe. Божеупаси :-) . Я имел ввиду конструкцию типа <! file.html >, которая просто берет из файла код и вставляет в файл с этой конструкцией. Например

insertion.html:

Код:

ТЕЛО ФАЙЛА
FILE 01

Код:

<html>
<body>
blahblah
<! insertion.html>
</html>

Равно

Код:

<html>
<body>
blahblah
ТЕЛО ФАЙЛА ТУТ
</html>

Что то такое, но как именно это делается - не помню...

Goryn 25.11.2003 16:11

Видимо, ты имеешь в виду технологию SSI. В ней есть директива включения документа в текст страницы

Код:

<!--#include virtual="document.html" -->

Psionic Vision 25.11.2003 16:17

Да! Именно это я и имел ввиду. А что надо чтобы она работала? И есть ли у нее какие нибудь минусы? Например, если я хочу сделать меню для вебпаги и вставлять его на каждой странице - это хорошо или нет?

Goryn 25.11.2003 16:27

1. Использование SSI должно быть разрешено твоим провайдером.

2. По умолчанию в настройках Апачи на наличие SSI-директив проверяются только файлы с расширением .shtml
Если ты хочешь включать их и в другие файлы, а в них не работает (апач принимает их за коментарии и просто пропускает), тогда в корене надо добавить в файл .htaccess следующую строку:

AddHandler server-parsed .html .htm

Тогда Апач будет проверять на SSI и файлы с указанным расширением.

Psionic Vision 26.11.2003 00:43

А вообще, желательно ли использоваие этой директивы или некоторые браузеры ее не воспринимают? Есть ли что нибудь такое?

Добавлено через 1 час и 14 минут:
Когда я использую директиву <<!-- #include virual=....>, то все вроде работает но когда я смотрю код, то получается что это как бы цельная страница, и директивы не видно. это правильно? директива просто "склеивает" два файла?

sky7 26.11.2003 01:27

Neo
Директива выполняется сервером, не браузером. Для теста попробуй создать файл локально, и открыть не заливая на сервер, и ... ничего не получится. Теги <!-- и --> обозначают в HTML комментарий и будут пропущенны.

WMRomik 26.11.2003 03:22

Neo
Ну разумеется.
Ничего того, что является указаниями к интерпритатору на стороне сервера, клиенту не отдаётся.
В отличии от JavaScript, например.
Из чего следует, то, что браузер читает чистый HTML и никак кроме того, как и должно быть, его отображать не может,
т.е. это работает со всеми браузерами одинаково.

Psionic Vision 26.11.2003 19:01

Ясно.

CEO 12.12.2003 03:59

А как вставить текстовый в html-страницу файл без использования SSI? Можно ли это сделать при помощи JS?

Stasik 12.12.2003 10:58

<script src="http://www.server.ru/file.js"></script>

CEO 12.12.2003 13:36

Stasik :Спасибо, но я так уже умею. Но в этом фале (file.js) наверное должен находится какойто скрипт, например заголовок функции, а если сходу туда поместить обычные текст типа:
text
text text
text
text text
То при пдключении этого скрипта
<script src="http://www.server.ru/file.js"></script>
Відается ошибка.

smap 12.12.2003 16:14

а ты в file.js напиши следующие :)
Text=
"текст1<br>"+
"текст2<br>"+
"текст3<br>"+
"текст4<br>"
document.writeln(Text);

только мне кажеться всёже ето геморой...
может быть можно и проще ))

Stasik 12.12.2003 17:22

Цитата:

Відается ошибка.
можно по-русски?

CEO 13.12.2003 15:23

smap:Так конечно можно, но в том-то и задача, вставлять самый произвольный текст, а не подготовленный специальным образом.
Stasic:
Цитата:

можно по-русски?
Конечно можно, извиняюсь. У меня просто три раскладки и я между ними иногда путаюсь. По РУССКИ: нужна функция, аргументом которой будет имя текстового файла. Эта функция откроет текстовый файл, считает его содержимое в переменную Text и выведет на страницу. Можно ли сделать такое, без использования всяких наворотов типа активХ и т.п., используя только стандартный JS?

smap 13.12.2003 16:37

мона, наверное ... ща попробую сделать :)

Добавлено через 10 минут:
млин ... так просто нельзя.. можно только если как нибуть геморойно
чере iframe например ;) ща набрыкаю что-нибудь :)

smap 13.12.2003 20:48

забил .. :) думай сам ... но вриптципи реально через iframe типо пихаешь :D туда
свой файл потом как нибуть считываешь через какой то оператор =))) не поню..
считываешь в переменую.... и вот и выводишь ... да кстати iframу с размерами 0x0
другого спопсоба я просто не вижу :) так что дерзай .... ну или есть тут профи?

Goryn 16.12.2003 15:24

По-моему, кроме SSI единственный способ вставки другой страницы - iframe

CEO 17.12.2003 14:17

smap :c iframe я уже зняю как это сделать, мне интересно было это чисто на JS узнать как делается. Нельзя так нельзя. Прийдется забить на это.
Всем спасибо за помощь, тему наверное можно закрывать.


Часовой пояс GMT +4, время: 03:10.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.