Pouze tento týden sleva až 80 % na e-learning týkající se C# .NET
Nauč se s námi víc. Využij 50% zdarma na e-learningové kurzy.
C# week

Diskuze: RSS čtečka na aktuality

Aktivity
Avatar
Snorlax
Redaktor
Avatar
Snorlax:14.8.2013 0:11

Ahoj měl bych otázku ohledně RSS a PHP. Mám stránku kam se mají psát různé akce (něco ve stylu:"Dnes Vám zapálíme dům se slevou 50%! Pokud chcete volejte hned!") a chtěl bych aby se tyto zprávy mohly zobrazovat i uživatelům přes nějakou RSS čtečku, jako má tady Devbook ty aktuality.

Ohledně těch akcí, tak jsou přes databázi a na stránku je vypisuji přes PHP... Pokud tedy víte jestli je něco zdarma co by vám ty akce četlo a vytvářelo RSS kód (nebo jak to funguje), napište mi prosím.
Dík moc

Odpovědět
14.8.2013 0:11
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 0:19

Zkus si vyhledat nějaký "PHP RSS generátor". Není to však nic složitého. Dá se na to použít DomDocument, XMLwriter apod.

Nahoru Odpovědět
14.8.2013 0:19
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 0:41

Málem bych zapomněl na svůj vlastní článek:
http://www.itnetwork.cz/…s-z-databaze

Nahoru Odpovědět
14.8.2013 0:41
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Snorlax
Redaktor
Avatar
Snorlax:14.8.2013 0:55

ok dík zejtra si to vklidu pročtu a snad to dám dohoromady. kdyžtak se ozvu ;)

Nahoru Odpovědět
14.8.2013 0:55
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 1:15

Nejvíc mě asi zmátlo, že z dotazu nebylo patrné, zda chceš RSS čtečku nebo generátor. Mám obojí.

Nahoru Odpovědět
14.8.2013 1:15
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Snorlax
Redaktor
Avatar
Snorlax:14.8.2013 9:44

tak vytvářet si vlastní čtečku je trochu nesmysl ne? :D

Nahoru Odpovědět
14.8.2013 9:44
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Odpovídá na Snorlax
Michal Žůrek - misaz:14.8.2013 9:49

proč je to jako nesmysl? Pokud bude umět něco navíc, tak proč ne.

 
Nahoru Odpovědět
14.8.2013 9:49
Avatar
Snorlax
Redaktor
Avatar
Odpovídá na Michal Žůrek - misaz
Snorlax:14.8.2013 10:02

tak proč vyvíjet něco, co už je na trhu nejmíň milionkrát a nedá se to nějak mega zlepšit... to je jak kdybych se rozhodl že budu vyvíjet svůj google. Lepší to prostě nebude. :D

Nahoru Odpovědět
14.8.2013 10:02
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Snorlax
David Čápka:14.8.2013 10:15

Ale ty budeš potom lepší ;-)

Nahoru Odpovědět
14.8.2013 10:15
Jsem moc rád, že jsi na síti, a přeji ti top IT kariéru, ať jako zaměstnanec nebo podnikatel. Máš na to! :)
Avatar
Odpovídá na Snorlax
Michal Žůrek - misaz:14.8.2013 10:20

jako cvičení

 
Nahoru Odpovědět
14.8.2013 10:20
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 10:26

Máš v nadpisu RSS čtečka na aktuality , tak jsem si myslel, že chceš čtečku. Teprve z kontextu příspěvku jsem pochopil, že chceš generátor.

Vlastní čtečku RSS používám denně na čtení místního RSS. Je pro mne výhodnější než běžně dostupné RSS čtečky.

Nahoru Odpovědět
14.8.2013 10:26
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Snorlax
Redaktor
Avatar
Odpovídá na David Čápka
Snorlax:14.8.2013 10:47

Podle mě ale se ty RSS čtečky nedaj nějak zlepšovat...

Nahoru Odpovědět
14.8.2013 10:47
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Snorlax
Redaktor
Avatar
Odpovídá na Kit
Snorlax:14.8.2013 10:51

Sorry mělo tam bejt generátor ale když člověk myslí na 100 věcí tak se splete...

A když tady pořád mluvíte o té vlastní čtečce tak mě možná i dokopete k tomu abych si taky nějakou zkusil, ikdyž mám minimum času :D. Stačí že jsem se rozhodl si zkusit Javu podle místních návodů a je to teda úplně něco jinýho než PHP ve kterým dělám teď.

Nahoru Odpovědět
14.8.2013 10:51
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 10:59

RSS čtečku jsem si napsal v PHP. Je to jednoduchá aplikace asi na 10 řádcích.

Nahoru Odpovědět
14.8.2013 10:59
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Snorlax
Redaktor
Avatar
Odpovídá na Kit
Snorlax:14.8.2013 11:04

To já věřím že to není nic těžkýho.
Jo a mimochodem koukám na ten tvůj článek a musim se vám přiznat že v životě jsem nedělal s objekty (kromě PDO připojení na db :D ) a tak trochu mi vrtá hlavou jak ten objekt zjistí co má dát do jaké "položky" (nebo jak se tomu řiká). Pro jistotu myslím tuto část

<?php
// nyní vyberu články. Dotaz je nutné přizpůsobik konkrétní struktuře databáze
$result=$db->query("SELECT * FROM clanek");
foreach($result->fetchAll(PDO::FETCH_CLASS) as $row) {
  $item=$dom->createElement('item');
  $item->appendChild($dom->createElement('title',htmlspecialchars($row->title)));
  $item->appendChild($dom->createElement('link',htmlspecialchars($row->link)));
  $item->appendChild($dom->createElement('pubDate',$row->pubDate));
  $item->appendChild($dom->createElement('description',htmlspecialchars($row->description)));
  $item->appendChild($dom->createElement('dc:creator',htmlspecialchars($row->creator)));
  $channel->appendChild($item);

?>

To bere array $row a protě jednotlivým položkám přizazuje hodnoty jak jdou v tý array?

Nahoru Odpovědět
14.8.2013 11:04
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 11:15

PDO udělá ze získaných záznamů z DB seznam objektů, který projdeš přes foreach. Proměnná $row reprezentuje jeden řádek z DB, který se skládá ze sloupců. $row->pubDate je odkaz na sloupec pubDate z DB.

Teď koukám, že místo PDO::FETCH_CLASS tam má být PDO::FETCH_OBJ, ale PHP je to zřejmě jedno.

Nahoru Odpovědět
14.8.2013 11:15
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Snorlax
Redaktor
Avatar
Odpovídá na Kit
Snorlax:14.8.2013 11:19

takže je to

$item->appendChild($dom->createElement('NÁZEV_SLOUPCE',htmlspecialchars($row->title)));

?

Nahoru Odpovědět
14.8.2013 11:19
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 11:25

Ne. Je to trošku jinak:

$item->appendChild($dom->createElement('značka_HTML',htmlspecialchars($row->nazev_sloupce)));
Nahoru Odpovědět
14.8.2013 11:25
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Snorlax
Redaktor
Avatar
Odpovídá na Kit
Snorlax:14.8.2013 11:27

ok super snad to už chápu. jde se zprovozňovat :D

Nahoru Odpovědět
14.8.2013 11:27
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Snorlax
Redaktor
Avatar
Snorlax:14.8.2013 11:31

ok snad poslední otázka. jsou povinný všechny položky? bode hodně vadit když vynechám dc:creator? :D

Nahoru Odpovědět
14.8.2013 11:31
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 11:33

Podívej se do dokumentace. Povinných je jich jen několik.

Nahoru Odpovědět
14.8.2013 11:33
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Snorlax
Redaktor
Avatar
Odpovídá na Kit
Snorlax:14.8.2013 11:39

upřímě to jsem nechtěl bže tam občas najít nějakou informaci je občas problém. naštestí tady to tak nebylo :O povinný jsou title, link a description ;) ok tak to mám a snad i funkční! dík moc hned ti jdu ohodnotit ten článek...

Nahoru Odpovědět
14.8.2013 11:39
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 11:42

Včera jsem si ještě zkusil totéž s použitím třídy XMLwriter. Můžeš ještě zkusit tuto alternativu, třeba se ti bude líbit víc.

Nahoru Odpovědět
14.8.2013 11:42
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Snorlax
Redaktor
Avatar
Odpovídá na Kit
Snorlax:14.8.2013 11:52

hele já jsem naprosto spokojen s touto verzí, protože to funguje a nevidím důvod to nějak to zlepšovat nebo zkrášlovat a ani to neni dlouhý (39 řádků)... jsem naprosto spokojen, zbejvá mi jen do webu udělat ty odkazy ;)

Nahoru Odpovědět
14.8.2013 11:52
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 12:03

Jsem zvyklý vyzkoušet si několik variant a pak z nich vybrat. XMLwriter generuje XML trochu jinak než DomDocument. Obchází tvorbu DOM, který je v jiných případech velmi užitečný, ale tady ho ani tak moc nepotřebujeme a spíš trochu zdržuje.

Pokud jsi však spokojený, je to OK.

Nahoru Odpovědět
14.8.2013 12:03
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Snorlax
Redaktor
Avatar
Odpovídá na Kit
Snorlax:14.8.2013 12:10

tak samozřejmě je vždy lepší si vybrat z více variant, ale tohle jsem si chtěl udělt jako nějakou třešničku na dortu, ne se tím tejden zabývat ;)

Nahoru Odpovědět
14.8.2013 12:10
Kdo chce pochopit, pochopí. Kdo dělá že chce pochopit, může pouze dělat, že pochopil...
Avatar
Kit
Redaktor
Avatar
Odpovídá na Snorlax
Kit:14.8.2013 12:16

DomDocument používám na generování kompletního webu u náročnějších aplikací, protože je to elegantní, velmi rychlé, objektové a na celý web vystačím s jedinou šablonou, která ani není moc velká.

XMLwriter se hodí spíš pro generování XML nebo jednoduššího HTML.

Nahoru Odpovědět
14.8.2013 12:16
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 27 zpráv z 27.