LastRSS - méně článků – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

LastRSS - méně článků – PHP – Fórum – Programujte.comLastRSS - méně článků – PHP – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
mara6666
~ Anonymní uživatel
5 příspěvků
12. 1. 2008   #1
-
0
-

Mám dotázek jak rict teto čtečce LastRSS aby nečetla všechny aktuality, ale jen např. 4 nebo 3 Ted mam kod upraven tak abyse zobrazovalo jen logo odkud se cte RSS kanal a titulek clanku. Potrebuji aby mi to na strankach ukazovalo jen 3 clanky.

<?php

include "./lastRSS.php";

$rss = new lastRSS;

$rss->cache_dir = './temp';
$rss->cache_time = 1200;

// Try to load and parse RSS file
if ($rs = $rss->get('http://servis.idnes.cz/rss-utf8.asp?c=fincentrum')) {
// Show website logo (if presented)
if ($rs[image_url] != '') {
echo "<a href=\"$rs[image_link]\"><img src=\"$rs[image_url]\" alt=\"$rs[image_title]\" vspace=\"1\" border=\"0\" /></a>\n";
}

// Show last published articles (title, link, description)
echo "<ul>\n";
foreach($rs['items'] as $item) {
echo "\t<li><a href=\"$item[link]\">".$item['title']."</a></li>\n";
}
echo "</ul>\n";
}
else {
echo "Nelze se spojit z databází...\n";
}
?>

Vlastni kod LastRSS
http://lastrss.oslab.net/lastRSS.phps

Nahlásit jako SPAM
IP: 212.96.164.–
Reklama
Reklama
nickJartin0
Návštěvník
12. 1. 2008   #2
-
0
-

LastRSS jsem nikdy nepouzival, ale nestacilo by do toho foreach cyklu dat pomocnou promennou, ktera bude pocitat clanky:

<?php

include "./lastRSS.php";

$rss = new lastRSS;

$rss->cache_dir = './temp';
$rss->cache_time = 1200;

// Try to load and parse RSS file
if ($rs = $rss->get('http://servis.idnes.cz/rss-utf8.asp?c=fincentrum')) {
// Show website logo (if presented)
if ($rs[image_url] != '') {
echo "<a href=\"$rs[image_link]\"><img src=\"$rs[image_url]\" alt=\"$rs[image_title]\" vspace=\"1\" border=\"0\" /></a>\n";
}

// Show last published articles (title, link, description)
echo "<ul>\n";
$i = 2;
foreach($rs['items'] as $item) {
echo "\t<li><a href=\"$item[link]\">".$item['title']."</a></li>\n";
if (!$i--) break;
}
echo "</ul>\n";
}
else {
echo "Nelze se spojit z databází...\n";
}
?>



EDIT: dival jsem se do toho zdrojoveho kodu a je tam atribut tridy $items_limit... Ten tusim ovlivnuje pocet vypisovanych polozek.

EDIT2: v tom kodu byla chyba, chybel mi tam znak dolaru pred promennou i v podmince uvnitr foreach cyklu.

Nahlásit jako SPAM
IP: 80.188.253.–
mara6666
~ Anonymní uživatel
5 příspěvků
12. 1. 2008   #3
-
0
-

nickJartin napsal:
LastRSS jsem nikdy nepouzival, ale nestacilo by do toho foreach cyklu dat pomocnou promennou, ktera bude pocitat clanky:




EDIT: dival jsem se do toho zdrojoveho kodu a je tam atribut tridy $items_limit... Ten tusim ovlivnuje pocet vypisovanych polozek.


Když to dám stím počtem vůbec nic se mi neobevi :( (obevi se prazdna stranka)

Nahlásit jako SPAM
IP: 212.96.164.–
mara6666
~ Anonymní uživatel
5 příspěvků
12. 1. 2008   #4
-
0
-

To nickJartin :
Máš pravdu, viz:
items_limit
Umožňuje omezit počet vracených článků/položek. Přednastavená hodnota je 0 (nula) a znamená neomezovat počet položek.

Nahlásit jako SPAM
IP: 212.96.164.–
mara6666
~ Anonymní uživatel
5 příspěvků
12. 1. 2008   #5
-
0
-

To nickJartin :
Ale bohužel to nefunguje pokud dám items_limit=4 tak se stále vypisuji vsechny clanky

Nahlásit jako SPAM
IP: 212.96.164.–
mara6666
~ Anonymní uživatel
5 příspěvků
12. 1. 2008   #6
-
0
-

To mara6666 :
Omluva projevilo se to az po dlouhe dobe uz je na mne asi pozde :) diky za odpoved. Je zajive ze to neslo s tim pocitadlem

Nahlásit jako SPAM
IP: 212.96.164.–
hrach
~ Redaktor
+1
Boss
13. 1. 2008   #7
-
0
-

To mara6666 : no.. ono to totiz bylo asi v te "keši" :)

Nahlásit jako SPAM
IP: 193.179.169.–
http://jan.skrasek.com@hrachcz – webdeveloper
Smokie0
Expert
13. 1. 2008   #8
-
0
-

Viem, ze je uz problem vyrieseny, ale to pocitadlo mi neda...Co takto to urobit tymto sposobom:

<?php


include "./lastRSS.php";



$rss = new lastRSS;



$rss->cache_dir = './temp';

$rss->cache_time = 1200;



// Try to load and parse RSS file

if ($rs = $rss->get('http://servis.idnes.cz/rss-utf8.asp?c=fincentrum')) {

// Show website logo (if presented)

if ($rs[image_url] != '') {

echo "<a href=\"$rs[image_link]\"><img src=\"$rs[image_url]\" alt=\"$rs[image_title]\" vspace=\"1\" border=\"0\" /></a>
\n";

}



// Show last published articles (title, link, description)

echo "<ul>\n";
$i=0;
foreach($rs['items'] as $item) {
$i++;
if($i < 4)
{
echo "\t<li><a href=\"$item[link]\">".$item['title']."</a>
</li>\n";
}

}

echo "</ul>\n";

}

else {

echo "Nelze se spojit z databází...\n";

}

?>

Nahlásit jako SPAM
IP: 88.212.23.–
nickJartin0
Návštěvník
13. 1. 2008   #9
-
0
-

To Smokie : taky by to takhle slo, ale rekneme z "optimalizacniho hlediska" by se zbytecne iterovalo pres cele pole od zacatku az do konce :-)

Nahlásit jako SPAM
IP: 80.188.253.–
Vojtěch Semecký
~ Anonymní uživatel
2 příspěvky
14. 5. 2008   #10
-
0
-

Zdravím, jsem autorem LastRSS a náhodou jsem narazil na toto forum. Tady jsou moje poznámky:

1) ano atribut items_limit je určen právě k omezení počtu položek na výstupu.
2) ano, v cachy jsou data již ve finální podobě, takže pokud je RSS zdroj nakešovaný a změním hodnotu items_limit, změna se projeví až když data v keši vyprší.
3) Smokie: S tím for cyklem má nickJartin pravdu, ale zase nějak výrazné zpomalení to asi nebude. Jiné řešení by bylo to pole oříznout na potřebný počet položek (třeba funkcí array_shift($stack)) a pak použít foreach cyklus na průchod již oříznutým polem.

Vývoji LastRSS už jsem se nějaký čas nevěnoval. Teď se chystám pár vylepšení zase udělat. V souvislosti s tím počtem vrácených položek mě napadá, že by se v keši mohly ukládat všechny položky a LastRSS by jejich počet ořezávalo až po načtení dat z cache. Co myslíte, bylo by to takhle lepší?

Díky za nápady.

Nahlásit jako SPAM
IP: 62.84.145.–
Vojtěch Semecký
~ Anonymní uživatel
2 příspěvky
14. 5. 2008   #11
-
0
-

ad 3) Ještě k tomu ořezávání: Pomocí array_shift() by to taky nějak šlo, ale asi úplně nejlepší pro tento účel je array_slice().

Nahlásit jako SPAM
IP: 62.84.145.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 39 hostů

Podobná vlákna

Hodnocení článků — založil Jimosona

Diskusia k clanku — založil Marty_SVK

Obrázek v článku — založil ench

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý