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

Форум PHP

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

 

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

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

тема: Граббер новостей
 
 автор: Loneliness   (30.10.2007 в 14:08)   письмо автору
 
 

Делаю граббер новостей для wap сайта(Ссылка http://wap.hitbiz.info/my/news/). На данный момент насочинял такое:

<?php

$request 
stripslashes($_GET['request']);
$idn stripslashes($_GET['idn']);
$lu stripslashes($_GET['lu']);
$numcec stripslashes($_GET['numcec']);

if(
$request==news) {$s file("http://wap.newsru.com/$request/$idn/?lu=$lu");}
if(
$request==sect) {$s file("http://wap.newsru.com/$request/$numcec/");}
if(empty(
$request)) {$s file("http://wap.newsru.com/");}

$s = @implode(""$s);

$s=str_replace('<br/><br/>','<br>',$s);
$s=str_replace('/">','">',$s);
$s=str_replace('<a href="/news/','<a href="http://wap.hitbiz.info/my/news/index.php?request=news&idn=',$s);
$s=str_replace('<a href="/sect/','<a href="http://wap.hitbiz.info/my/news/index.php?request=sect&numcec=',$s);
$s=str_replace('/?lu','&lu',$s);

echo 
$s;
?>


это работает, однако небольшая неувязка на страницах дальше главной- сама новость иногда делится на части и у меня получается ссылка например такого вида
<a href="http://wap.hitbiz.info/my/news/index.php?request=sect&numcec=1/246750">Далее</a>
В CMS на сайте соответственно фильтрация параметров, и такой запрос не проходит, выдает ошибку аутентификации.
Как можно заменить в urlах на странице в параметре numsec(numcec=1/246750) слэш / например на тире независимо от номера новости ?

   
 
 автор: mihdan   (30.10.2007 в 21:59)   письмо автору
 
   для: Loneliness   (30.10.2007 в 14:08)
 


<?php
str_replace
('/''-'$str);
?>

   
 
 автор: Loneliness   (30.10.2007 в 22:22)   письмо автору
 
   для: mihdan   (30.10.2007 в 21:59)
 

это все слеши в тексте заменит на тире. Мне нужно заменить только слеши по маске numcec=1/246750 - слеши находящиеся в середине любого числового значения, которое написано сразу после numsec=. Подозреваю, нужно как-то регулярными выражениями.. А как конкретно- инкогнито..

   
 
 автор: mihdan   (30.10.2007 в 22:29)   письмо автору
 
   для: Loneliness   (30.10.2007 в 22:22)
 


<?php
$pattern 
'!numrec=([\d]+)\/([\d]+)!si';
$str preg_replace($pattern'\\1-\\2'$str);
?>

   
 
 автор: Loneliness   (30.10.2007 в 23:10)   письмо автору
 
   для: mihdan   (30.10.2007 в 22:29)
 

Все ОК, благодарю!

   
Rambler's Top100
вверх

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