Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

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

 

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

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

тема: как парсить файл и выводить результат в переменную ( в цикле)?
 
 автор: adminn   (07.12.2007 в 22:19)   письмо автору
 
 

Очень прошу помощи реализовать скрипт.
Допустим :
В файле db.txt находится следующие :

# www.isil.ru
# www.xamelion.org
# www.avant-garde.ru
# www.goldbuker.net.ru

мне нужно парсить файл и после этого выводить (в цикле) адрес в переменную "$urls"
потом проверять наличие скрипта на сайтах (из файла db.txt) и записать ответы в файл.
Я не понял как мне парсить db.txt, а следующие действия я реализовал так


$url2 = "http://.$urls/file/1.php";
for ($x=0;$x<count($f);$x++)
{
$urls=str_replace("\n","",$f[$x]);
$urls=str_replace("\r","",$url);
$cont=implode("", file($urls));
$open=fopen("logs.txt","a+");
fwrite($open,$urls."\n");
if (eregi("TEST",$cont)){
fwrite($open,"GOOD! - ");
}
fclose($open);
}

   
 
 автор: exp   (08.12.2007 в 00:57)   письмо автору
 
   для: adminn   (07.12.2007 в 22:19)
 

зачем в logs.txt записывать файлы полностью, может лучше адреса
<?
$gde 
file('db.txt');
$gde str_replace(array("\n""\r"' ','#'), ''$gde);

$open=fopen("logs.txt","a"); 

for (
$x=0;$x<count($gde);$x++) 

  
$url 'http://' $gde[($x)] . '/file/1.php'
  
$cont file_get_contents($url); 

  if (
eregi("TEST"$cont))  $gde[($x)] .= ' - GOOD!';

  echo 
$gde[($x)]; # test
  
fwrite($open$gde[($x)] . "\n"); 
}
fclose($open); 


?>

   
 
 автор: adminn   (12.12.2007 в 19:52)   письмо автору
 
   для: exp   (08.12.2007 в 00:57)
 

Огромное спасибо! Я разобрался и почти все реализовал , только вот не как не получается выводить только нужные значения.
В ответе я получаю:
www.ispania.aha.ru
www.atkearney.ru - GOOD!
www.agrokorm.ru
как мне выводить результат только положительный? чтоб www.agrokorm.ru, www.ispania.aha.ru не было на выходе. Помогите примером

   
 
 автор: mihdan   (12.12.2007 в 22:09)   письмо автору
 
   для: adminn   (12.12.2007 в 19:52)
 


<?
if (eregi("TEST"$cont))  {
    
$gde[($x)] .= ' - GOOD!''
} else {
    continue;
}
?>

   
 
 автор: adminn   (12.12.2007 в 22:40)   письмо автору
 
   для: mihdan   (12.12.2007 в 22:09)
 

спасибо.
mihdan не подскажите как мне реализовать тот же скрипт если нужно искать файл не только в дире /file, но еще и в down, files...
Извиняюсь если это глупые вопросы , но мне тяжело разбираться без примеров.

   
 
 автор: mihdan   (12.12.2007 в 22:52)   письмо автору
 
   для: adminn   (12.12.2007 в 22:40)
 


<?
$dirs 
= ('file''down''files');

foreach (
$dirs as $dir) {
$gde file($dir.'/db.txt');
$gde str_replace(array("\n""\r"' ','#'), ''$gde);

$open=fopen("/logs.txt","a"); 

for (
$x=0;$x<count($gde);$x++) 

  
$url 'http://' $gde[($x)] . '/file/1.php'
  
$cont file_get_contents($url); 

  if (
eregi("TEST"$cont))  $gde[($x)] .= ' - GOOD!';

  echo 
$gde[($x)]; # test
  
fwrite($open$gde[($x)] . "\n"); 
}
fclose($open); 
};
?>

   
 
 автор: adminn   (16.12.2007 в 00:40)   письмо автору
 
   для: mihdan   (12.12.2007 в 22:52)
 

$dirs = array ('file', 'down', 'files');
так все заработало.
сп, хороший оператор цикла, ну лучше чем while.

на выходе у меня получается
домен - GOOD!
хотелось бы чтоб результат выводил ссылку на найденной файл, то есть если файл найден в дире file то ссылка получалась "домен.ру/file/1.php" , если в дире files то "домен.ру/files/1.php".
не как не могу сообразить, намекните или конечно лучше пример.

   
Rambler's Top100
вверх

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