Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 2842 Просмотров
*

sph

  • Новичок
  • 6
  • 0 / 0
Привет!

У меня есть ссылка на страницу, например www.mysite.com/page1.html
В этой странице есть скрипт, в котором есть строка so.addVariable('vtag',      '4ae5f5e513df-');
Значение '4ae5f5e513df-' постоянно меняется при загрузке странице.

Как мне загрузить эту страницу и достать оттуда это значение и подставить в нужную мне ссылку?
Т.е. у меня есть страница 1.php и в ней нужно загрузить страницу page1.html, найти в ней нужные мне данные
и обработать их.
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
гуглите мануалы по регулярным выражениям
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

sph

  • Новичок
  • 6
  • 0 / 0
А причем тут регулярные выражения?
Если можно поподробнее...

Мне нужно взять какую-нибудь страницу и читать ее как файл на php.
С файлом fp = fopen(какой-то файл) и потом в цикле я ищу то что мне надо.
Необходимо сделать то же самое, только не текстовым файлом,
а со страницей, которую нужно сначала загрузить, например я загружаю страницу
www.example.com и читаю код хтмл как текстовый файл.
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
А причем тут регулярные выражения?
как это причем тут регулярные выражения? Вы с помощью php цепляете нужную страницу как строку, после регулярным выражением находите вхождение нужных значений (к примеру первое вхождение текста в кавычках после vtag) и запоминаете, дальше используете как надо
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

sph

  • Новичок
  • 6
  • 0 / 0
Строку выцепить согласен. Но проблема в том, как ее выцепить?
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
Код: php
$homepage = file_get_contents('http://joomlaforum.ru/index.php/topic,71900.0/topicseen.html');
echo $homepage;
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

sph

  • Новичок
  • 6
  • 0 / 0
Ясно. Спасибо.
*

sph

  • Новичок
  • 6
  • 0 / 0
Разобрался с поиском в странице, но функция $homepage = file_get_contents('http://joomlaforum.ru/index.php/topic,71900.0/topicseen.html');
возвращается всё время одну и ту же страницу. Как сделать, чтобы в $homepage постоянно грузилась новая информация из 'http://joomlaforum.ru/index.php/topic,71900.0/topicseen.html',
а не та, которая загрузилась в первый раз.
*

beliyadm

  • Легенда
  • 9758
  • 1664 / 66
  • Севастополь, Россия
ничего не понял.. у темы форума (если мы берем ее в пример) есть постоянный адрес (к примеру http://joomlaforum.ru/index.php/topic,71900.0.html - текущая тема)
Если ты будешь обращаться к ней а я писать посты - получишь обновленную версию
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

sph

  • Новичок
  • 6
  • 0 / 0
Проверил на другом сайте и на этом, так и есть страница обновляется.
Но тогда я не понимаю почему разные результаты при обновлении страницы и использовании функции в плагине.

Есть страница http://vkadre.ru/videos/36922952
в ней есть строки:
Код
...
so.addVariable('overstretch','false');
so.addVariable('in_process', 'false');
so.addVariable('vtag',      '31461b9d3135-');
so.addVariable('vkid',      '');
so.addVariable('vid',       '36922952');
...
В строке so.addVariable('vtag',      '31461b9d3135-'); меняется код "31461b9d3135-", его мне и нужно достать.

Я его достаю:
Код
<?php

// Check to ensure this file is included in Joomla!
defined( '_JEXEC' ) or die( 'Restricted access' );

jimport( 'joomla.plugin.plugin' );

class plgContentvkadre extends JPlugin
{

function plgContentvkadre( &$subject, $params )
{
parent::__construct( $subject, $params );
}

function onPrepareContent( &$article, &$params, $limitstart )
{
global $mainframe;

$regex = '/{vkadre\s+(.*?)\s*}/i';
$vkadre_regex = '/so.addVariable\(\'vtag\',\s*\'(.*?)\'\);/i';

$match_result = preg_match($regex, $article->text, $match_array);

  $link = $match_array[1];
//$fd = fopen($link, "r");
//$vkadre_page = fread($fd, filesize($link));
  $vkadre_page = file_get_contents($link);
                            //fclose($fd);

$code = '';
  $match_result = preg_match($vkadre_regex, $vkadre_page, $match_array_vkadre);
  $code = $match_array_vkadre[1];

  $article->text = preg_replace($regex, $code, $article->text);
}

}

?>

Но я не понимаю почему при обновлении страницы на http://vkadre.ru/videos/36922952 код один,
а при использовании плагина другой. Чем может отличаться открытие страницы в браузере
от открытия этой же страницы с помощью:
Код
$vkadre_page = file_get_contents('http://vkadre.ru/videos/36922952');
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Компонент вывода информации из внешней базы данных

Автор rambeer

Ответов: 33
Просмотров: 10467
Последний ответ 12.09.2014, 05:01:34
от Mad_Doc
передача данных в компоненте через GET и POST?

Автор NTFS

Ответов: 1
Просмотров: 2434
Последний ответ 12.03.2010, 10:02:28
от Mitrich
как правильно обращаться к базе данных

Автор salikoff

Ответов: 23
Просмотров: 6297
Последний ответ 29.06.2009, 14:07:16
от w00
Как вывести данные с базы данных?

Автор vod-profi

Ответов: 0
Просмотров: 1729
Последний ответ 21.04.2009, 19:08:34
от vod-profi
Select выборка на mootools

Автор LDJ

Ответов: 4
Просмотров: 2341
Последний ответ 29.05.2008, 13:33:50
от LDJ