Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Загрузка данных с другой страницы, Как правильно настроить? 
:(
    Опции темы
C5oLoJ
Дата 26.11.2007, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



                               Есть вот такой скрипт загрузки курса валют на страницу
Код

<?
$addr = "http://www.rbc.ru/index.html";
$begblock1 = "USD ЦБ РФ";
$begblock2 = "EUR ЦБ РФ";
$begin = "<FONT SIZE=\"-2\">";
$end = "</FONT>";
$result = array();
$screen = file($addr);
$i = 0;
while ($i < sizeof($screen) && strpos($screen[$i], $begblock1) == false) {$i++;}
$temp = explode($begin, $screen[$i + 2]);
$temp = explode($end, $temp[1]);
$kursdollar = $temp[0];
$i = 0;
while ($i < sizeof($screen) && strpos($screen[$i], $begblock2) == false) {$i++;}
$temp = explode($begin, $screen[$i + 2]);
$temp = explode($end, $temp[1]);
$kurseuro = $temp[0];
echo "document.write(\"Доллар - <B>$kursdollar</B><BR>Евро - <B>$kurseuro</B>\");";
?>

                               Попытался его переделать таким образом
Код

<?
$addr = "http://b90.takru.com/in.php?id=92682";  // адрес страницы
$begblock1 = "<br>"; // идентификатор начала блока
$begin = "<FONT SIZE=\"-&nbsp;\">"; // фрагмент HTML-кода до полезных данных
$end = "</a>"; // фрагмент HTML-кода после полезных данных
$result = array();  // массив строк результата
$screen = file($addr);
$i = 0;
while ($i < sizeof($screen) && strpos($screen[$i], $begblock1) == false) {$i++;}
$temp = explode($begin, $screen[$i + 2]);
$temp = explode($end, $temp[1]);
$tak = $temp[0];
echo "document.write(\" - <B>$tak</B>\");";
?>


Мне нужно отделить ссылки от текста "оплаченная реклама" желательно что бы они  и выглядели как положенно ;) smile 

M
skyboy
пользуемся тегом [ code=php] иликнопкой "код", что равнозначно


Это сообщение отредактировал(а) skyboy - 26.11.2007, 19:14
PM MAIL   Вверх
C5oLoJ
Дата 28.11.2007, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



В общем пришол к такому варианту: 

Код

<?
$str = file_get_contents('http://b100.takru.com/in.php?id=101768');
$pattern = "!<br>(.*)a>!si";
$n = preg_match_all ($pattern, $str, $res);
for ($i=0;$i<$n;$i++)  
   echo htmlspecialchars($res[0][$i]).
                         "<br>";
?>


Вставил его в свой сайт таким образом:

Код

<tr>
<td <?=tdcolor("str")?>align=center>
<b><?=$lang[account8]?></b>
</td></tr>
<tr><td>

<?= $str = file_get_contents('http://b100.takru.com/in.php?id=101768');
$pattern = "!<br>(.*)a>!si";
$n = preg_match_all ($pattern, $str, $res);
for ($i=0;$i<$n;$i++)  
   echo htmlspecialchars($res[0][$i]).
                         "<br>";
?>
</td></tr>



Но вот выдает он не то что надо! Вместо выборочных даннных между "<br> и a>" выдает все подряд!
Подскажите как исправить.
PM MAIL   Вверх
teroni
Дата 28.11.2007, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 15.5.2007
Где: Днепропетровск

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



Модификаторы не правильные... Надо сделать * не жадной...
Код

$pattern = "!<br>(.*)a>!si";

заменить на 
Код

$pattern = "!<br>(.*)a>!U";

PM MAIL   Вверх
C5oLoJ
Дата 28.11.2007, 19:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Конечно спасибо но фактически на результат работы скрипта это особо не повлияло.

Сейчас вопрос состоит в том что при помещении скрипта в тело страницы выдается вот такая окалесица:

Код

document.writeln('Оплаченная Реклама:'+ '
- Программа для создан..
- Создать сайт всего з..
- портал для водителей
- Создать сайт самому ..'+ '');<br>-&nbsp;<a href="http://tak.ru/clicks.php?key=517194192887255084900409555023266" class="takru" target=_top>Программа для создан..</a>
<br>-&nbsp;<a href="http://tak.ru/clicks.php?key=223131130827245064930409575093261" class="takru" target=_top>Создать сайт всего з..</a>
<br>-&nbsp;<a href="http://tak.ru/clicks.php?key=220133187805245044950449555053266" class="takru" target=_top>портал для водителей</a>
<br>-&nbsp;<a href="http://tak.ru/clicks.php?key=919193199886265064970449555053273" class="takru" target=_top>Создать сайт самому ..</a>


вместо положенного:
_______________________
- Программа для создан..
- Создать сайт всего з..
- портал для водителей
- Создать сайт самому ..
_______________________

Почему скрипт не выполняется в теле как положенно? smile 
PM MAIL   Вверх
teroni
Дата 28.11.2007, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 15.5.2007
Где: Днепропетровск

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



Ну а htmlspecialchars зачем в коде писали?
PM MAIL   Вверх
C5oLoJ
Дата 29.11.2007, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Так это конечно все хорошо но все таки скрипт выводит значение два раза и лишний текст:

document.writeln('Оплаченная Реклама:'+ '            - Этого быть не должно
- Зарабатывай 5000$ в ..
- Заработай 900$ в сут..
- Проститутки Москвы и..
- 150 цифровых товаров..'+ '');                                 '+ ''); этого и всего далее тоже!
- Зарабатывай 5000$ в ..
- Заработай 900$ в сут..
- Проститутки Москвы и..
- 150 цифровых товаров..
PM MAIL   Вверх
teroni
Дата 29.11.2007, 17:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 381
Регистрация: 15.5.2007
Где: Днепропетровск

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



<?= - а это зачем в 7-й строчке?
просто <?php напишите!
PM MAIL   Вверх
C5oLoJ
Дата 1.12.2007, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



teroni сэнкс все работает.

Но чего то не хватает! 

НЕ могли бы Вы подсказать как сделать чтобы скрипт выдовал не все схожие по заданным параметрам данные а только первое?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




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


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

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