Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Подгрузка страниц и работа с строками 
:(
    Опции темы
Dima85
Дата 26.11.2010, 20:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 19.7.2007

Репутация: нет
Всего: нет



Перенесите тему пожалуйста в PHP.

Таким образом подгружаю html файлы на страницу.

Код

      <?php 
      $page = preg_replace( '#[^a-zA-Z0-9]#i', '', GET('page'));
      $page = substr($page, 0, 25);
      if ($page != '') {
      $filename = 'pages/'.$page.'.html';
      if (file_exists($filename)) {include($filename);} else {echo "<h4>Error 404</h4>";}
      } else { 
      include('pages/index.html'); 
      }
      ?>

Знаю что это не совсем безопасно, но сейчас не об этом.
В первой строчке каждого подгружаемого файла есть такая строчка:
Код

<h2 class="title">Название страницы</h2>


Вопрос: Помогите пожалуйста как вывести эту первую строчку точнее текст "Название страницы" в переменную. Которую в дальнейшем хочу использовать в <title></title>

Это сообщение отредактировал(а) Dima85 - 26.11.2010, 20:40
PM MAIL   Вверх
bars80080
Дата 26.11.2010, 20:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



а в файле 

include($filename);

хтмл-текст идёт открытым способом?
то есть не внутри переменной:

$text = '
<h2>...
';

?
PM MAIL WWW   Вверх
Dima85
Дата 26.11.2010, 21:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 19.7.2007

Репутация: нет
Всего: нет



bars80080 открытым. Никаких переменных в подгружаемых файлах нет.
PM MAIL   Вверх
bars80080
Дата 26.11.2010, 23:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



тогда include придётся обрамлять всякими ob_flush, чтобы <h2> не вышла раньше <title>

лучше такой файл считывать как шаблон

кстати, в таком случае и текст уде будет в переменной, остолось только регуляркой его проверить, но с ней я уже не подскажу.

должно быть что-то вроде:

preg_match($s, ''#<h2>(.+?)<\/h2>#isU'')
PM MAIL WWW   Вверх
Dima85
Дата 27.11.2010, 12:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 396
Регистрация: 19.7.2007

Репутация: нет
Всего: нет



Да действительно. В моем ведь случае даже если и достанешь эту переменную она появится после отображение на странице title. А прибегать к ob_flush не хочется.


То есть предлагаете в подгружаемых страницах текст разбить в переменные:
Код

$title= '<h2 class="title">Название страницы</h2>';
$othetext = '';


Может есть еще какие-то мысли как по-другому можно менять title в зависимости с подгруженной страницей?
Пришла в голову мысль создать файл(пример: page.txt) где будут имена подгружаемых страниц и title. В дальнейшем просто открывать его, искать там открываемый файл и брать оттуда title.  Но это опять же лишние телодвижения при создания новых страниц. Хочется сделать без дополнительных файлов и в то же время как-то просто. 

Это сообщение отредактировал(а) Dima85 - 27.11.2010, 12:27
PM MAIL   Вверх
bars80080
Дата 27.11.2010, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 44
Всего: 315



Цитата(Dima85 @  27.11.2010,  11:25 Найти цитируемый пост)
То есть предлагаете в подгружаемых страницах текст разбить в переменные:

нет, я сказал:

Цитата(bars80080 @  26.11.2010,  22:35 Найти цитируемый пост)
лучше такой файл считывать как шаблон

то есть fopen($path, 'r'), fread() и так далее

но если планировать всё грамотно, то все необходимые данные должны храниться в базе, в том числе отдельными полями, что вставить в <title>, что в <meta description, что keywords, а что в тэг <h1>

это и есть самое простое. главная же простота здесь заключается в том, что теперь специалист по маркетингу и СЕО легко сможет открыть в некотором вэб-интерфейсе нужный пункт и переправить его, только его и ничего более. чем улучшит позицию страницы в поисковиках
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0453 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.