Создать форум бесплатно: ixbb.ru :: Календарь на Апрель 2024 года: calendar2008.ru/2024/aprel/

Страницы: (6) 1 [2] 3 4 ... Последняя » ( Перейти к первому непрочитанному сообщению ) Reply to this topicStart new topicStart Poll

Как разбить страницу на части?

, с подгрузкой содержимого ?
dudeonthehorse
Отправлено: Aug 3 2010, 10:23 AM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 763
Пользователь №: 2933
Регистрация:
26-October 09



QUOTE (gregst @ Aug 3 2010, 10:07 AM)
не е*и мозг. испольщуй любую бесплатную цмс. советую modx - она для простых сайтов не сложная - разберешься

пускай человек начнет понимать хотя бы такие мелочи как инклуды, а до cms руки как нибудь еще дойдут

QUOTE
а то пол экрана пустые стоят ...
тут уж ты где то - что то упустил или не так сделал. если твой исходный вариант отображался нормально, то после нарезки на header и footer все должно быть так же нормально. а создавать несколько включаемых файлов нет смыла. header'a и footer'a вполне достаточно
PMEmail PosterICQ
Top
gregst
Отправлено: Aug 3 2010, 01:42 PM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 1012
Пользователь №: 1169
Регистрация:
28-September 07



зачем?
я в пхп не соображаю. но 2 сайта на цмс без проблем поднял.
PMEmail Poster
Top
dudeonthehorse
Отправлено: Aug 3 2010, 02:08 PM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 763
Пользователь №: 2933
Регистрация:
26-October 09



лично мое мнение - нужно хоть немного понимать то с чем работаешь. банальный перенос на другой хостинг той же джумлы порой без знаних того же пхп не обходится. это примерно то же самое, автолюбитель должен в принципе знать как сменить свечи в своей колымаге.
я в пхп соображаю достаточно хорошо и поднял уже не одну сотню сайтов.
к тому же в данный момент работаю исключительно с битриксом - а там без пхп с места не тронешься.
PMEmail PosterICQ
Top
alturgrey
Отправлено: Aug 4 2010, 03:00 AM
Quote Post


  Сержант
*

Группа: Members
Сообщений: 24
Пользователь №: 3443
Регистрация:
3-August 10



Разбил.Теперь второй важный вопрос:
Как реализовать динамическую подгрузку контента (кучи файлов, с разномастным содержимым, текстами там, рисунками, прочим) в центральную, основную часть страницы, щелкая в Хедере по меню ?
Меню простое, прописали скрипт, в выпадающих позициях ссылки типа <a href =
Но как не меняя кода между :
<?
include("header.php");
?>
LINK на контент
<?
include("footer.php");
?>
, нажатиями в меню менять =LINK на контент= ?
PMEmail Poster
Top
dudeonthehorse
Отправлено: Aug 4 2010, 07:17 AM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 763
Пользователь №: 2933
Регистрация:
26-October 09



примерная схема дальнейшей работы:

1 способ:

файл index.php
CODE
<?
include("header.php");
?>
тут текст и картинки на главной
<?
include("footer.php");
?>

файл about.php
CODE
<?
include("header.php");
?>
тут текст и картинки о компании
<?
include("footer.php");
?>

файл contacts.php
CODE
<?
include("header.php");
?>
тут контактная информация
<?
include("footer.php");
?>


имеем три файла с подгрузкой шаблона , ссылки к которым прописываем в меню в шаблоне. для каждой новой страницы создаем новые файлы.


второй способ

файл index.php
CODE
<?
$page = $_GET['page'];
include("header.php");

if(!$page) { ?>тут контент для главной<? } // если переменная пуста отображаем главную
else if ($page=="about") { ?>тут контент для раздела о компании<? } // если равна тому то, отображаем то то
else if ($page=="contacts") { ?>тут контент для контактов<? }

include("footer.php");
?>


меню будет выглядеть примерно так
CODE
<a href="index.php">Главная</a>
<a href="index.php?page=about">О компании</a>
<a href="index.php?page=contacts">Контакты</a>
?>


то есть мы все упрощаем делая на одной странице. в индексе в начале мы объявили переменную $page равной $_GET['page'] что значит в строке браузера будет отмечаться раздел нашего сайта (смотри ссылки пунктов меню)


есть еще способ с базами данных, но это удобно скажем для новостей или каталога, т.е. для множества ну совсем уж однотипных страниц. перевари то что я привел выше, и усли нужно покажу как с базами данных работать.
PMEmail PosterICQ
Top
alturgrey
Отправлено: Aug 4 2010, 07:51 AM
Quote Post


  Сержант
*

Группа: Members
Сообщений: 24
Пользователь №: 3443
Регистрация:
3-August 10



Первый вариант отпадает. Хотя и очень прост.
Слишком много страниц на сайте.
Базы я бы пока не трогал, может удастся обойтись одним лишь php ?

Второй вариант более реален.
Если уточнить:
Меню в header.php будет не таким:

<a href="index.php">Главная</a>
<a href="about.php">О компании</a>
<a href="contacts.php">Контакты</a>
а таким:

<a href="index.php">Главная</a>
<a href="index.php?page=about">О компании</a>
<a href="index.php?page=contacts">Контакты</a>

так ?

а здесь, немного неясно:

<?
$page = $_GET['page'];
include("header.php");

if(!$page) { ?>тут контент для главной<? } // если переменная пуста отображаем главную
else if ($page=="about") { ?>тут контент для раздела о компании<? } // если равна тому то, отображаем то то
else if ($page=="contacts") { ?>тут контент для контактов<? }

include("footer.php");
?>

как понять (тут контент для главной), (тут контент для контактов) ??
это что, в фигурных кавычках писать КОНТЕНТ ... ??? дивы, скрипты, ВСЕ прямо в index.php ??
PMEmail Poster
Top
dudeonthehorse
Отправлено: Aug 4 2010, 08:42 AM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 763
Пользователь №: 2933
Регистрация:
26-October 09



с меню ты все понял правильно.

да, все будет храниться прямо в одном файле пихаешь прямл хтмл код на место "тут контент для главной" и т.д. или для некого удобства можно сделать так:
CODE
<?
$page = $_GET['page'];
include("header.php");

if(!$page) { indlude("main.php"); }
else if ($page=="about") { include("about.php"); }
else if ($page=="contacts") { include("contacts.php"); }

include("footer.php");
?>

а в файлах main.php, about.php и contacts.php так же хранишь нужный код для этих страниц. но в принципе так же много файлов выходит. а с другой стороны это нормально, нежели все хранить в индексном файле.

без использования базы данных, как ни крути, файлов будет много, ведь данные надо где то хранить
PMEmail PosterICQ
Top
alturgrey
Отправлено: Aug 4 2010, 08:52 AM
Quote Post


  Сержант
*

Группа: Members
Сообщений: 24
Пользователь №: 3443
Регистрация:
3-August 10



М, получается такое мега -меню:

<?
$page = $_GET['page'];
include("header.php");

if(!$page) { indlude("main.php"); }
else if ($page=="about") { indlude("about.php"); }
else if ($page=="contacts") { indlude("contacts.php"); }
.....
...
...
else if ($page=="telefons") { indlude("tels.php"); }
else if ($page=="kalendar") { indlude("klnd.php"); }
include("footer.php");
?>
выходит в структуре сайта, самый незаменимый файл будет это index.php,
а него будет приписан Постоянный дизайн страниц (в виде висящей постоянно Хедере вверху-внизу), и здорового списка файлов (в функции if), выполняющего функцию меню ?

(эта функция, требует указания где-нить в <head> или доп. прописывания ?
PMEmail Poster
Top
gregst
Отправлено: Aug 4 2010, 09:44 AM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 1012
Пользователь №: 1169
Регистрация:
28-September 07



еще раз говорю - не е*и мозг. поставь цмс - один шаблон, автоматически генерится меню, легко создаются страницы и вставляются текст и картинки
PMEmail Poster
Top
dudeonthehorse
Отправлено: Aug 4 2010, 09:56 AM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 763
Пользователь №: 2933
Регистрация:
26-October 09



QUOTE (gregst @ Aug 4 2010, 09:44 AM)
еще раз говорю - не еби мозг. поставь цмс - один шаблон, автоматически генерится меню, легко создаются страницы и вставляются текст и картинки

если действителльно не хочешь париться можешь сайт на cms посадить, будет действительно проще и не важно как это работает. я же объясняю простое решение с пониманием происходящего

QUOTE
if(!$page) { indlude("main.php"); }
else if ($page=="about") { indlude("about.php"); }
else if ($page=="contacts") { indlude("contacts.php"); }
.....
...
...
else if ($page=="telefons") { indlude("tels.php"); }
else if ($page=="kalendar") { indlude("klnd.php"); }

это не меню, а оператор условия, которым мы даем понять браузеру что грузить в основной блок, вот только я опечатался - не indlude, а include. эта функция подключающая файлы.

само меню ты строишь сам либо в header.php либо в footer.php . если оттаклкиваться от условий приведенных выше, меню строишь в шаблоне(header.php или footer.php) таким образом:
CODE
<ul>
<li><a href="index.php">главная</a></li>
<li><a href="index.php?page=contacts">контакты</a></li>
<li><a href="index.php?page=about">о компании</a></li>
...
...
...
<li><a href="index.php?page=telefons">телефоны</a></li>
<li><a href="index.php?page=akalendarbout">календарь</a></li>
</ul>
PMEmail PosterICQ
Top

Topic OptionsСтраницы: (6) 1 [2] 3 4 ... Последняя » Reply to this topicStart new topicStart Poll

 



[ Script Execution time: 0.0396 ]   [ 10 queries used ]   [ GZIP выключен ]