![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 11.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich i prosze o pomoc. mam stronne www.kredyty-przez-internet.com.pl napisanna w ISO 8859-2 a rss w utf-8 i tam gdzie pobiera wiadomosci to sa krzaki jak rss z konwersowac na iso
oto kod pliku rss <?php /************************************************************ RSS Fetch 0.4.1 RSS Feed Reader Author: Drew Phillips www.neoprogrammers.com Copyright 2005 Drew Phillips This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. ************************************************************/ class rss_parser { var $update_interval = 60; /* How often to fetch the rss file A cached version will be used between updates */ var $data_directory = "c:/rss_fetch/"; /* Where to store the rss data from the feeds Note: an absolute path is better than a relative path here unless you plan on keeping the script to display the feeds in the same folder as this file and the feeds. */ /* NO NEED TO EDIT BELOW HERE UNLESS YOU KNOW WHAT YOU ARE DOING */ var $rss_url; var $num_to_show; var $do_update; var $tags = array(); var $content; var $rss = array(); var $feed_title; var $feed_link; var $feed_description; var $my_html; function rss_parser($url, $numtoshow = 10, $html = "", $update = 0) { $this->rss_url = $url; $this->num_to_show = $numtoshow; $this->do_update = $update; $this->my_html = preg_replace("/(#{.*?) ![]() $this->content = $this->fetch_feed(); $this->parse_feed(); $this->show(); } /* string */ function fetch_feed() { $url_parts = parse_url($this->rss_url); $filename = $url_parts['host'] . str_replace("/", ",", $url_parts['path']) . "_" . @$url_parts['query']; if(file_exists($this->data_directory . "/$filename")) { $last = filemtime($this->data_directory . "/$filename"); if(time() - $last > $this->update_interval * 60 || $this->update_interval == 0) { $update = 1; } } else { $create= 1; } if($create == 1 || ($this->do_update == TRUE && $update == 1)) { $fp = @fsockopen($url_parts['host'], 80, $errno, $errstr, 5); if (!$fp) { echo "Couldn't open rss feed {$this->feed_url} in {$_SERVER['PHP_SELF']}<br />\n"; return; } fputs($fp, "GET " . $url_parts['path'] . "?" . @$url_parts['query'] . " HTTP/1.0\r\n" ."Host: " . $url_parts['host'] . "\r\n" ."User-Agent: Drew's RSS Reader 0.1\r\n" ."Connection: Close\r\n\r\n"); while(!feof($fp)) { $rss_data .= @fgets($fp, 1024); } list(, $rss_data) = explode("\r\n\r\n", $rss_data, 2); $output = @fopen($this->data_directory . "/$filename", "w+"); if(!$output) { return $rss_data; } else { flock($output, LOCK_EX); fputs($output, $rss_data); flock($output, LOCK_UN); fclose($output); } } //update return file_get_contents($this->data_directory . "/$filename"); } /* void */ function parse_feed() { preg_match("/<title>(.*?)<\/title>/", $this->content, $title); $this->feed_title = @$title[1]; preg_match("/<link>(.*?)<\/link>/", $this->content, $link); $this->feed_link = @$link[1]; preg_match("/<description>(.*?)<\/description>/", $this->content, $description); $this->feed_description = @$description[1]; preg_match_all("/<item[^>]*>(.*?)<\/item>/s", file_get_contents("http://www.news.egospodarka.pl/rss.thtml"), $items); if (sizeof($items[0]) == 0) { echo "<br><font class=\"title\">Nie znaleziono żadnych informacji.</font><br> Prosimy wybrać inn± kategorię.\n"; } for($i = 0; $i < sizeof($items[0]); ++$i) { preg_match_all("/(?:<([\w:]*)[^>]*>(?:<!\[CDATA\[)?(.*?)(?:]]>)?<\/\\1>)+?/si", preg_replace("/<item[^>]*>/", "", $items[0][$i]), $elements); for($j = 0; $j < sizeof($elements[0]); ++$j) { $elements[1][$j] = str_replace(":", "__", $elements[1][$j]); //regex fix for items with : like dc:date $this->rss[$i][$elements[1][$j]] = trim(html_entity_decode($elements[2][$j])); } } } /* void */ function show() { if($this->my_html == "") { $this->show_html(); } else { $this->show_user_html(); } } function show_html() { $show = (sizeof($this->rss) > $this->num_to_show ? $this->num_to_show : sizeof($this->rss)); for($i = 0; $i < $show; ++$i) { echo "- <a href=\"{$this->rss[$i]['link']}\" target=\"_new\">{$this->rss[$i]['title']}</a><br />\n"; } } function show_user_html() { $show = (sizeof($this->rss) > $this->num_to_show ? $this->num_to_show : sizeof($this->rss)); for($i = 0; $i < $show; ++$i) { extract($this->rss[$i]); $item = preg_replace("/#\{([^}]+)}/e", "$\\1", $this->my_html); echo $item; } } } // end class ?> |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 11.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
mozna jasniej
![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
rudy99 -> patrząc na Twój post ciśnie mi się na usta jedno pytanie: czy umiesz czytać? Przecież tam wystarczy dosłownie wejść i jedno zdanie przeczytać, by wiedzieć o co chodzi. Ba, nawet nie trzeba angielskiego znać, jako że jest dostępne polskie tłumaczenie tej strony. Jeśli nawet przełączenie sobie języka Cię przerasta, to jak my Ci mamy pomóc? Poziom tego pytania nawet do działu "Przedszkole" się nie nadaje.
Ten post edytował Zyx 11.06.2011, 11:53:58 -------------------- Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 09:05 |