|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.08.2009, 19:17 | #1 |
Форумчанин
Регистрация: 26.10.2007
Сообщений: 124
|
Проблема со вставкой HTML кода через include
Здраствуйте !!
Я первый раз создаю сайт с нуля и решил, что обойдусь без особых знаний php. Но когда у меня получилось около 60 HTML страниц, и что при небольшом изменении дизайна на одной из страниц, мне приходится копировать код с этим изменением на все 60 стр., я понял что надо как-то использовать скрипты ) Ну я решил, каждый элемент дизайна (повторяющегося на всех страницах) у меня будет в отдельном текстовом файле. Например (head.txt - шапка сайта, menu - меню - сайта, и т.д.). вот php файл (head.php), который открывает файл head.txt с кодом html для чтения и считывает оттуда всё содержимое: Код:
Код:
Код:
А если этот же подключаемый код выводить просто при помощи "echo", то всё правильно отображается: Код:
Подскажите, может функция fread что-то добавляет сверху и от этого всё съезжает ? |
22.08.2009, 19:23 | #2 |
Форумчанин
Регистрация: 03.04.2009
Сообщений: 108
|
зачем вы 2 раза выводите шапку? вы можете открыть исходный код, после того как сгенерирована страница и найти ошибку
возможно вас заинтересует функция file_get_contents()
php,javascript
|
22.08.2009, 19:48 | #3 |
beneto.ru
Форумчанин
Регистрация: 09.03.2009
Сообщений: 174
|
А если так:
http://www.php.su/learnphp/cs/?ic http://us.php.net/manual/en/function.include.php Да и зачем так грузить сервер всякой ***** ? Делается так: Создай папку templates (шаблоны) и помести туда файлы (Например, header.php , left_table.php, right_table.php, footer.php) и прям в них пиши нужное, а потом в файлы вставь такое: Код:
Подробнее в мануалах... |
22.08.2009, 20:49 | #4 |
Форумчанин
Регистрация: 26.10.2007
Сообщений: 124
|
Metandrostenalon
Извиняюсь, это я случайно когда пробовал разные варианты вставки забыл убрать из файла head.php строку echo "$read"; ) Почитаю про file_get_contents, если там конечно не сильно сложно, а время нет, сайт запускать через недельку надо. Jensi А, функция "include" получается может просто вывести содержимое любого файла ? Я думал, с помощью неё можно только подключить файл .php для обработки. )) Спасибо ! А два раза вывел шапку по ошибке и сюда старый код направил, выше описал.. Немного погодя : Прочитал что вроде для вставки кусков Html страниц лучше использовать "require". Я прав или нет ? Последний раз редактировалось POPOV; 22.08.2009 в 21:08. |
22.08.2009, 23:34 | #5 | |||
beneto.ru
Форумчанин
Регистрация: 09.03.2009
Сообщений: 174
|
Цитата:
Ну на том сайте же всё написано: Цитата:
Цитата:
|
|||
23.08.2009, 00:50 | #6 |
Участник клуба
Регистрация: 08.03.2008
Сообщений: 1,537
|
Добавлю.
Удобно создать отдельные файлы(по тематике например) с кучей функций внутри. Например: func_html.php - здесь куски разметки страницы можно хранить, func_bd.php - здесь различные функции при обращении к базам данных и т.д.. Потом "приинклудить" нужный файл и вызывать нужные функции. Простой пример: файл с функцией внутри: Код:
Код:
Если файлов с различным набором функций достаточно много (например больше трех) то, что бы не писать Код:
<?php // Этот файл можно включать во все остальные файлы, в результате каждый из файлов будет //содержать весь набор необходимых функций require_once('param1.php'); require_once ('param2.php'); require_once ('param3.php'); ?> |
23.08.2009, 01:06 | #7 |
Участник клуба
Регистрация: 08.03.2008
Сообщений: 1,537
|
Еще добавлю.
Файлам которые инслудятся можно дать любое расширение например *.ink, это не самый лучший вариант с точки зрения безопасности, т.к. если каким либо образом узнать имя такого файла, то введя в адресной строке путь к нему можно будет увидеть его содержание. Самый простой способ который воспрепятствует этому – это хранить подобные файлы с расширением *.php. Есть и др. способы, но это самый простой и достаточно эффективный. |
23.08.2009, 23:28 | #8 |
Форумчанин
Регистрация: 26.10.2007
Сообщений: 124
|
Gorychev
Да, спасибо большое за советы, но у меня видимо проблема может быть в html коде самом... Jensi Попробовал как вы советовали, создал папку templates, поместил туда файл head.php с html кодом шапки сайта: Код:
Почему-то если html код подключаю просто через echo "<table>......." то всё правильно отображается. При просмотре в Dreamweaver в режиме Design всё отображается как и должно быть, но в браузере нет. Чёрный фон у меня только под полосой с меню. Незнаю, куда мне обратиться.. Сюда же не выложишь весь код страницы чтобы выяснили причину, да и не по теме это. |
24.08.2009, 01:51 | #9 | ||
beneto.ru
Форумчанин
Регистрация: 09.03.2009
Сообщений: 174
|
Цитата:
Как вариант, как только страница загрузилась, посмотри исходный код в браузере и найди то место, где этот отступ сидит и узнаешь причину Цитата:
Немного оффтопа: Код:
Нужно всегда/почти всегда использовать проценты, т.к. разрешения экрана разное бывает, у тебя будет всё хорошо отображаться, а у другого человека ужОс будет |
||
24.08.2009, 21:59 | #10 | ||
Форумчанин
Регистрация: 26.10.2007
Сообщений: 124
|
Цитата:
Про исходный код как я понял это "просмотр html кода страницы" ? А что там поменяться может ? ничё нового не добавлено, код в подключаемом файле верный, так как если я его в место include ставлю, всё правильно отображается. Цитата:
Это чё мне нужно все таблицы в процентах ставить ? И почему 100% обязательно ? Я ставлю 100%, а у меня ну у меня сайт на весь экран растягивается, а при сужении страницы как обычно появляется полоса прокрутки вправо-влево. Щас попробую 666 приинклудить.. ) Немного позже... : Ну вывел в левый вехрний угол сайта надпись 666 )). Вот: Опять полоса, тока не чёрная, так как по картинкой с логотипом и горами, фон какраз желтоватый. А полоска вроде такой же высоты. Чёрный фон у меня только под меню на JavaScript, но как он может оказаться сверху ??) Последний раз редактировалось POPOV; 24.08.2009 в 22:18. |
||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Visual Studio 2008. Проблема с асм вставкой в код на С++ | LexiusUA | Visual C++ | 22 | 25.03.2009 03:31 |
Получение HTML - кода??? | PashaXP | Win Api | 9 | 05.08.2008 15:27 |
оптимиация Html кода | Hallo | HTML и CSS | 18 | 06.12.2007 20:27 |
Выдернуть куски кода из html-кода | trafbite | Помощь студентам | 7 | 18.08.2007 13:51 |
include проблема (redefine error) MS VS 2005 | CyberM | Общие вопросы C/C++ | 1 | 29.06.2007 16:30 |