Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: загрузка внешнего файла в листинг

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
dimalogin
Отправлено: 05 Апреля, 2007 - 13:42:32
Post Id



Новичок


Покинул форум
Сообщений всего: 24
Дата рег-ции: Апр. 2007  
Откуда: Санкт-Петербург


Помог: 0 раз(а)




Здравствуйте, возможно ли, разделить файл *.php в котором до html-тегов имеется код php на два файла *.php. 1-все что до html-тегов 2-после. Или сформулирую проще - разбить один файл *.php на два, чтоб исполнялись как один. Смысл - при отладке моей домашней странички, устал прокручивать листинг.
 
 Top
Viper
Отправлено: 05 Апреля, 2007 - 13:51:11
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




сохраняеш код php в два разных файла *.php (1.php, то что до html и 2.php, то что после html). Затем расширение html меняеш на php и через include подключаеш файлы 1.php и 2.php.

ЗЫ! Надеюсь понял правильно Улыбка


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
-SCHATTEN-
Отправлено: 05 Апреля, 2007 - 14:15:18
Post Id



Пользователь


Покинул форум
Сообщений всего: 615
Дата рег-ции: Июль 2006  
Откуда: Оттуда !


Помог: 0 раз(а)




Я бы посоветовал вообще весь HTML код, в темплейтах держать.
И РНР скрипты остануться чистыми и удобно, и практично...
 
 Top
UserID
Отправлено: 05 Апреля, 2007 - 18:05:55
Post Id



Магистр JavaScript


Покинул форум
Сообщений всего: 151
Дата рег-ции: Авг. 2006  


Помог: 0 раз(а)




-SCHATTEN-
Истину глаголешь...

Получится нечто вроде этого:
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. /**
  4. * @title  HTML template parser class
  5. * @author Nikitin V.A.
  6. * @email nikitin.vadim@gmail.com
  7. * @date   13 / Feb / 2007
  8. */
  9.  
  10. // Class initialization
  11. class parser {
  12.        
  13.         // Variables to redefine
  14.         var $vars = array();
  15.        
  16.         // Handler on redefining variables
  17.     var $template;
  18.        
  19.     // Handler to template file
  20.         var $tpl_file;
  21.        
  22.         // Class constructor
  23.         function parser()
  24.         {
  25.                 if(!@function_exists("file_get_contents"))
  26.                 {
  27.                         $this->tpl_halt("Server needs to update.");
  28.                         return false;
  29.                 }
  30.         }
  31.        
  32.         // Set variables
  33.         function set_tpl($key,$var)
  34.         {
  35.                 $this->vars[$key] = $var;
  36.         }
  37.        
  38.         // Redefine vars in template
  39.         function tpl_parse()
  40.         {
  41.                 foreach($this->vars as $find => $replace)
  42.         {
  43.                 $this->template = str_replace($find, $replace, $this->template);
  44.         }
  45.         }
  46.        
  47.         // Load template file
  48.         function get_tpl()
  49.         {
  50.                 if(empty($this->tpl_file) || !file_exists($this->tpl_file))
  51.                 {
  52.                         $this->tpl_halt("Can`t to find template file.");
  53.                 }
  54.                 else
  55.                 {
  56.                         $this->template = file_get_contents($this->tpl_file);
  57.                 }
  58.                 return $this->template;
  59.         }
  60.  
  61.         // If an error were generated, display it
  62.         function tpl_halt($msg)
  63.         {
  64.                 die("<code>".$msg."</code>");
  65.         }
  66. };
  67. ?>
  68.  


Ну и обращаемся:
PHP:
скопировать код в буфер обмена
  1.  
  2. $tpl = new parser();
  3. $tpl->tpl_file = "_template/".$CMS['tpl_path']."/index_header.tpl";
  4. $tpl->get_tpl();
  5. $tpl->set_tpl("{INDEX_TITLE}",   $CMS['index_title']);
  6. $tpl->tpl_parse();
  7. print $tpl->template;
  8.  


Вроде сложного нет ничего, поэтому над комментами не загонялся...
 
 Top
-SCHATTEN-
Отправлено: 05 Апреля, 2007 - 18:56:13
Post Id



Пользователь


Покинул форум
Сообщений всего: 615
Дата рег-ции: Июль 2006  
Откуда: Оттуда !


Помог: 0 раз(а)




Ну это тебе и мне понятно, ну пусть ещё человекам 5... а остальным =)))

а вызов вот так сделай
PHP:
скопировать код в буфер обмена
  1.  
  2. function main()
  3. {
  4. $tpl = new parser();
  5.  $tpl->tpl_file = "_template/".$CMS['tpl_path']."/index_header.tpl";
  6.  $tpl->get_tpl();
  7.  $tpl->set_tpl("{INDEX_TITLE}",   $CMS['index_title']);
  8.  $tpl->tpl_parse();
  9.  print $tpl->template;
  10. }
  11.  
  12. //И сам вывод получится :
  13. main();
  14.  
 
 Top
UserID
Отправлено: 05 Апреля, 2007 - 22:06:10
Post Id



Магистр JavaScript


Покинул форум
Сообщений всего: 151
Дата рег-ции: Авг. 2006  


Помог: 0 раз(а)




-SCHATTEN-

Перлы нашего универа:
- задание на лабу по С++:
Наследовать от класса гаража класс платной стоянки, для которого определить оператор «==» для целого числа слева, возвращающего результат сравнения числа машин в гараже и заданного числа. Также перегрузить оператор «!», который пытается заехать одной машиной в гараж.
-------------------------------- -------------------------------- ----------------
Особенно меня прёт, про оператор, который пытается заехать в гараж, а о перегрузке восклицательного знака вообще говорить не могу ))) Я плакал, когда первый раз такое прочитал
 
 Top
-SCHATTEN-
Отправлено: 06 Апреля, 2007 - 06:00:23
Post Id



Пользователь


Покинул форум
Сообщений всего: 615
Дата рег-ции: Июль 2006  
Откуда: Оттуда !


Помог: 0 раз(а)




Ха-ха

Кто их придумывал .... Радость

У нас тут много тех кто тока начал учить РНР, может кто сможет это на РНР сделать...

UserID и evgenijj - НЕпытаемся. или хотябы пока не выкладываем...
 
 Top
Viper
Отправлено: 06 Апреля, 2007 - 08:16:35
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




если уж про шаблоны зашло... можно ещё использовать "шаблонизаторы", типа Smarty. Хотя помойму проще свой накатать имхо.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
-SCHATTEN-
Отправлено: 06 Апреля, 2007 - 10:26:33
Post Id



Пользователь


Покинул форум
Сообщений всего: 615
Дата рег-ции: Июль 2006  
Откуда: Оттуда !


Помог: 0 раз(а)




Viper
+1
Да и надежнее...
 
 Top
UserID
Отправлено: 06 Апреля, 2007 - 13:18:35
Post Id



Магистр JavaScript


Покинул форум
Сообщений всего: 151
Дата рег-ции: Авг. 2006  


Помог: 0 раз(а)




Ага, прикручиваем tidy и будет аки полиморфный html Улыбка программисты всех стран, объединяйтесь... Даёшь битмап для lynx`a :-D, искусственный интеллект для IE (пусть браузер говорит нечеловеческим голосом Билли Гейтса) Видимо фильм "Убить Билла" вышел с каким-то намёком, тонким философским наставлением.
 
 Top
-SCHATTEN-
Отправлено: 06 Апреля, 2007 - 14:09:15
Post Id



Пользователь


Покинул форум
Сообщений всего: 615
Дата рег-ции: Июль 2006  
Откуда: Оттуда !


Помог: 0 раз(а)




Голливудская улыбка
 
 Top
kamikadze
Отправлено: 06 Апреля, 2007 - 20:22:04
Post Id



Склонен к самоубийству


Покинул форум
Сообщений всего: 391
Дата рег-ции: Янв. 2007  


Помог: 0 раз(а)





Тарантино винду ставил
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB