Vypisuju z tabulky promennou "text" a je to v tabulkach jako novinky. Chci, aby se mi zobrazilo třeba prvních 500 znaků. (zbytek se zobrazí na další stránce při otevření odkazu celý článek. Jak to mám udělat? /to zobrazování 500 znaků myslim/
dik
$text = substr($text,0,50);
nebo trosicku vylepsena verze:
$text = substr($text, 0, DELKA_NAHLEDU); //nechat jen prvnich x znaku znaku
$konec = strrpos($text, ' '); //najdi posledni mezeru
$text = substr($text, 0, $konec); // a zkrat podle ni - nebude tam pul slova
já to ale dělávám většinou tak, že si při psaní článku určím, kde má skončit náhled tím, že vložím něco jako
[-pokracovani-]
a v tom místě náhled uříznu, v případě že zobrazuju celý článek, tak to z toho jen odfiltruju.
<HTML>U kvalitnich RS se clanek neorezava ale anotace se pise zvlast a vystizne..</HTML>
Richard, jo, kdysi jsem dělal taky takové RS, ale pak jsem si uvědomil, že do anotace v naprosté většině případů stejně napíšu začátek článku, tak jsem se na to vykašlal, dokonce tak (sice jen velice nepatrně) ušetřím místo v DB :)
a kam to mam vložit mě to nejede.. před while cyklus nebo za nebo kam?
<HTML>http://www.webzdarma.cz/pp.html?2#1</HTML>
Já to dělávám takto:
http://blahapet.wz.cz/index.php?file=520
Omlouvám se, ten můj odkaz s tím sice trochu souvisí, ale plně nevystihuje tvůj problém. Toto:
$b1 = substr($description, 0, 300);
$b2 = strrpos($b1, " ");
$description = substr($b1, 0, $b2);
vlož za:
$description = $s["hlavni_obsah"];
Samozřejmě, že to je velmi podobné tomu, o čem zde psali JR nebo Tonik. Systém toho spočívá v tom, že fce strrpos() hledá poslední mezeru, která je od začátku textu do 300. znaku v řetězci a až potud tento text vypíše.