Реализовать скрипт на php

Discussion in 'PHP' started by Wakko, 25 Mar 2010.

  1. Wakko

    Wakko New Member

    Joined:
    1 Jun 2009
    Messages:
    36
    Likes Received:
    2
    Reputations:
    0
    Имеется папка news, в ней лежат файлы вида 1.txt 2.txt 3.txt ...... n.txt, в кажом файле записана новость.
    рядом с папкой news лежит файл info.txt в нем расположены названия этих файлов, в таком виде:

    1|новость номер один
    2|новость номер два
    3|новость номер три
    ....
    ....
    ....
    n|название новости


    подскажете как реализовать на php, чтобы бралось содержимое файла 1.txt , в файле info.txt искалось его название и выводилось циклом так $str_1 = название. $str_2 = содержание.

    Подскажите пожалуйста, могу немножко отблагодорить деньгами и плюсом.
     
    1 person likes this.
  2. dr.Web

    dr.Web Member

    Joined:
    2 Feb 2009
    Messages:
    8
    Likes Received:
    22
    Reputations:
    10
    а не легче в файле сразу это всё написать???например в нулевой строке

    стукни мне в асю 6465777 помогу чем смогу.
     
  3. Deathdreams

    Deathdreams Elder - Старейшина

    Joined:
    8 Nov 2008
    Messages:
    342
    Likes Received:
    116
    Reputations:
    5
    ТС не ищет лёгких путей.
     
  4. Omegа

    Omegа Member

    Joined:
    16 Dec 2009
    Messages:
    27
    Likes Received:
    11
    Reputations:
    5
    Code:
    <?php
    	$dirs = glob('news/*');
    	foreach($dirs as $filename) {
    		preg_match("~^.*/([0-9]+)\.txt$~", $filename, $res);
    		$files[$res[1]] = $res[0];
    	}
    	$news = file('info.txt');
    	foreach($news as $newsname) {
    		list($num,$str_1)=explode('|',$newsname);
    		$str_2 = file_get_contents($files[$num]);
    		echo '<h2>'.$str_1.'</h2>'.$str_2.'<hr/>'; //пример
    	}
    ?>
     
    #4 Omegа, 25 Mar 2010
    Last edited: 25 Mar 2010
    1 person likes this.
  5. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    ТС, держи, вот написал:
    PHP:
    <?php

    $infoName 
    'info.txt'//файл с инфо
    $dirName 'news'//папка с новостями

    $fHandle file($infoName);
    foreach(
    $fHandle as $fString)
    {
        
    $tempArray explode('|'trim($fString"\r\n"));
        
    $fArray[$tempArray[1]] = $tempArray[0];
    }

    if (
    $handle opendir($dirName))
    {
        while (
    false !== ($file readdir($handle)))
        {
            if (
    $file != "." && $file != "..")
            {
                
    $id explode('.'$file);
                echo 
    $id[0] . '|' array_search($id[0], $fArray) . "\r\n";
            }
        }
        
    closedir($handle);
    }

    ?>
    Дам тебе совет - в качестве БД используй MySQL, т.к. работа с этой СУБД намного проще, чем работа с файлами.
     
    1 person likes this.
  6. Wakko

    Wakko New Member

    Joined:
    1 Jun 2009
    Messages:
    36
    Likes Received:
    2
    Reputations:
    0
    Огромное всем спасибо! Плюсики поставил.
    mailbrush, у меня есть куча нвостей в тхт, их и нужно перегнать из тхт в базу. Только такой путь приходил в голову.