Připojen obrázek.
Ahoj, potřebuju poradit. Určitě všichni znáte z nejrůznějších stránek různé náhledy článků (např. tn.cz). Chtěla bych se zeptat, jakým způsobem se tyhle náhledy dělají? Jsou tyhle článku uloženy v databázi a pak se nějak vyvolávají? Jaká je na to funkce? Nebo prostě jak na to? Děkuji za rady :)
Fórum › PHP
Náhled článků - jak udělat?
Tusim se to oznacuje jako Prerex.
Redakcni systemy pouzivaji 2 verze.
- perex + foto + nadpis + text clanku
- nadpis + text clanku; z toho generuji perex + foto
Ano, clanky jsou v databazi. Ano, obvykle i perex.
Zkus upresnit, jakym zpusobem to chce pouzit, co mas hotove.
http://www.slu.cz/fpf/cz/
Tady mam specialni policko pro obrazek. Text vybiram z clanku jako prvni odstavec P. Puvodne tam bylo omezeni 500 znaku nebo slov, ale tusim mi rekl nekdo, ze to mam zrusit. Resim to tak proto, ze tento cms nema sablonu pro vkladani clanku, policka pro perex.
To jen jako priklad, ze nekdy to neni jednoduche resit u zavedeneho cms.
Pokud chces ziskavat informace z ciziho webu, bylo by dobre se domluvit se spravci, adminy, majiteli webu. Bez domluvy je to oznacovane za kradez a v pokud bude pro majitele tvuj web hrozbou, pouzije soudni moc k zakazu a odskodneni. Jedna se o to, ze bud plati licencni poplatky autorum nebo praci vlastnim redaktorum. A ty by ses prizivoval/a na jeho praci.
Z cicich webu se daji perexy ziskat ve forme xml, rss. Rss umi cist nekteru mail klienti. Kdyz mas rss pro sebe, je to legalni. Kdybys to publikoval/a na webu, je to nelegalni.
V pripada toho tn.cz je takove rss zde
http://tn.nova.cz/rss
Firefox - prave tlacitko na strance - zobraz zdrojovy kod stranky/
XML je vlastne html, takovy strukturovany format, vypis z db. Neni problem to z neho vytahnout jako tabulku a preformatovat do html sablony.
Spousta chytrejsich lidi ma prave v mailu nebo specialnim rss klientovi pridane rss adresy a nemusi chodit na web. Az kdyz je neco zaujme, tuknou si a rozklikne se clanek.
To publikovani z RSS je nelegalni samozrejme jen bez domluvy. Kdyz se domluvis, tak te spravce webu odkaze nejspis prave na verejne rss. A ze si mas s tim poradit.
Verejne dostupne jsou napriklad penezni kurzy CNB. To je zase csv format, ktery si muzes v pripade CNB legalne dat na web. A samozrejme zformatovat do nejake rozumne html tabulky
https://www.cnb.cz/…nni_kurz.txt
Nebylo myšlené že data chci stahovat z TN.cz chci si udělat vlastní databázi a vytvořit něco podobného svého :)
Pokud jsou články vkládány do databáze, jak na ně mám odkazovat (jak napsat odkaz na článek z databáze) a jak formátovat tyto články? Vkládá se přímo text do databáze, nebo se vkládá soubor, typu txt a ten se zobrazuje?
Díky za rady :)
Tve posledni otazky nedavaji smysl.
Sql je program, ktery pracuje se soubory a uklada do nich data. Databaze je jen neco jako slozka. Tabulka zase neco jako excelova tabulka. Mas zahlavi sloupcu a pak data. A jeste urcujes typ sloupce. cislo, text, binarni data, ...
Clanky muzes davat do tabulky jako text. Cili klidne html. Ale u html by sis mel pohlidat, aby neobsahovalo parazitni php kod, js kod, html a pod a podobne nez to zobrazis pres echo v php souboru. Je snadne do clanku podstrcit </div></div></div></div> a tim ti nabourat celou strukturu stranky.
#7 peter
HTML se do databáze pokud možno neukládá, i když se vstup dá ošetřit poměrně snadno. Prednost se dnes dává spíš formátu Markdown, se kterým se pracuje jednodušeji a je použitelný pro více výstupních formátů.
Poslední dobou se pro ukládání hodně používá JSON. Hlavně proto, že s ním umí pracovat Javascript na klientovi. Některé databáze používají JSON místo SQL.
Upřesním dotaz. Některé weby (např. http://action.nova.cz/ - POUZE PŘÍKLAD), mají články uložené v databázi (tedy pokud to dobře chápu). U náhledu článku mají uvedený odkaz: Celý článek (viz obrázek). Po kliknutí na tento odkaz, se načte článek z databáze (viz. další obrázek). Otázka tedy zní: Jak se tvoří tento druh odkazu = odkaz na článek z databáze?
Opet tva otazka nedava moc smysl :) Teda, jako pro nas, se znalosti, jak to funguje.
V databazi je tabulka se sloupci:
id, autor, perex-html, clanek-nadpis, clanek-html, datum vlozeni, (datum vystaveni) od, do
SQL prikazem ziskas seznam clanku (neco takoveho, pise se to trochu jinak):
SELECT id, autor, clanek-nadpis, clanek-perex FROM tabulka WHERE od<NOW()-tyden AND do<NOW()
Vyber z tabulky 'tabulka' radky, kde je cas od-do, sloupce id, autor, clanek-nadpis, clanek-perex. Jeste by tam mohlo byt LIMIT 10, jako 10 radku, a ORDER BY datum od, seradit podle datumu. SQL dotaz ti z te tabulky v SQL udeja jinou tabulku a posle to jako data, ktera pak prebiras php funkci a formatujes dal.
V php programu, zobraz_clanky.php mas pak, ze ma tabulku preformatovat na html, clanek-perex + odkaz
<a rel="nofollow" href=zobraz_clanek.php?id=123>cely clanek</a>
Slo by hned vytahnout vsechny sloupce, ale ty chces na stranku nahledy clanku. A nepotrebujes stahovat i cele clanky. Coz je treba dalsich 20k textu navic a k tomu by tahal ze slozky z obrazky treba 2MB obrazku.
Ten clanek neresi vse, ale mozna by ti to priblizilo problem.
https://www.itnetwork.cz/…php-tutorial
Nadpis 'Výpis seznamu článků' (nadpis + popisek) - kousek php kodu, ktery vytvori vypis clanku, pokud je v $clanky pole (tabulka s clanky, daty). A hned pod tim je i php/sql prikaz, ktery vybere z databaze tabulku clanku. Dobre je, php kod davat nad html, cili to meli dat do jednoho souboru s tim predchozim. Ostatne, je tam poznamka 'Nad HTML dodejme náš poslední PHP blok'.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Jak to udělat — založil Dave
Jak udělat Textcolor? — založil Mircosoft
Jak udělat materiál — založil Danny
Jak udělat podmenu — založil PoklickaPan
Jak udělat šachy. — založil Montezo
Moderátoři diskuze