Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проблема с шаблонами
 
 автор: 32188135571740   (30.12.2005 в 14:29)
 
 

Имеется два файла:
index.php
template.html (сам шаблон)
К конце файла index.php, после всех операторов у меня прописано include("./template.html"); Но при запуске index.php этот шаблон отображается некорректно - не показываются картинки, нет стилей (стили хранятся в отдельном в css)..

   
 
 автор: midav   (30.12.2005 в 23:21)   письмо автору
 
   для: 32188135571740   (30.12.2005 в 14:29)
 

Пропиши в template.htm css стиль

   
 
 автор: 32188135571740   (01.01.2006 в 03:02)
 
   для: midav   (30.12.2005 в 23:21)
 

А как тогда быть с картинками?

   
 
 автор: midav   (01.01.2006 в 20:30)   письмо автору
 
   для: 32188135571740   (01.01.2006 в 03:02)
 

Ну значит чтото не так прописано! есть какая то ошибка в скрипте

   
 
 автор: elenaki   (01.01.2006 в 20:47)   письмо автору
 
   для: midav   (01.01.2006 в 20:30)
 

у меня было такое.
почему-то include не может правильно прописать пути к картинкам, если они лежат не в той же папке. например, в файле index.php прописано include "temp/template.php";
а в файле template.php - пути к картинкам указаны так: "../image/pic1.gif" (image - на уровень выше)
при этом если открыть файл template.php, в нем будут все картинки, а если его же открыть через включение в index.php - картинки теряются...
надо как-то выкручиваться, чтобы не приходилось подниматься на верхний уровень...

   
 
 автор: Евгений Петров   (01.01.2006 в 21:52)   письмо автору
 
   для: elenaki   (01.01.2006 в 20:47)
 

Дело в том, что include просто копирует текст т.е. например если у нас есть структура папок:
- www
|
+-- - temp
|   |
|   +-- template.tpl
|   +-- image.jpg
|
+-- index.php

И файл template.tpl выглядит примерно так:
...
<img src="image.jpg">
...

то если открыть template.tpl в папке temp - все будет нормально, но если его проинклудить в файле index.php, кот находится в другой директории, то исходя из логикк файл image.jpg должен лежать в папке www. Отсюда вывод. Используйте абсолютные пути к файлам. Много нервов сэкономите.

   
 
 автор: Shorr Kan   (01.01.2006 в 21:59)   письмо автору
 
   для: elenaki   (01.01.2006 в 20:47)
 

Дело в том, что при структуре



/
image  - pic1.gif
temp - template.php
index.php


и инклуде template.php из index.php - сервер воспринимает, что вы находитесь там, где index.php (что логично, в общем-то).... И в template.php путь надо указывать не вверх, а потом в соседний каталог, а так, как если бы вы указывали его из index.php . А посему - лучше пользуйтесь всегда полным путем - пока не будете уверены в том, что template.php отдельно никогда вызываться не будет...

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования