[ Take @ 10.02.2010. 16:18 ] @
| Pozdrav, potrebna mi je mala pomoc oko lomljenja texta na vise stranica zavisnosti od duzine, recimo imam text od 3 strane u wordu, kako ga poderliti na 3 stranice prilikom iscitavanja iz baze?
Googlao sam ali nista nisam nasao, jedino wordwrap() pa da odredim neki broj chactera, ali ako neko ima bolje resenje ... Unapred Hvala. |
[ Man-Wolf @ 10.02.2010. 20:21 ] @
Iskoristi MySQL-ovu
SUBSTRING() funkciju:
Code (php):
$sql = "SELECT SUBSTR(kolona_koja_sadrzi_text, 0, 100)" // Prikaz prvih 100 karaktera
Mozes da iskombinujes sa ovim nesto ;)
P.S. Mozes i sa PHP-om ovo da budzis, ali, cenim da je nepotrebno izvlaciti ceo text, pa ga obradjivati u PHP-u ;)
Pozz!
[ Nikola Poša @ 10.02.2010. 21:12 ] @
A meni najpre nije jasno kako to misliš da "prelomiš tekst na više stranica"? Kakvih stranica? Misliš na paginaciju, ili šta?
[ Take @ 11.02.2010. 00:35 ] @
Hmm, ne verujem da ce to da mi pomogne, tako mogu jedino da izvucem odredjen broj charactera po stranici, meni bi trebalo da podeli text neke duzine na recimo 2 ili 3 stranice zavisno od duzine texta, kao paginacija, ali da duzina texta na jednoj stranici bude recimo 20 redova ili duzina diva. Ako koristim SUBSTRING() i stavim 0-200 chara na prvu stranicu, 200-400 na drugu ... ukoliko bude duzi text moracu da dodajem stranice.
[ Goran Rakić @ 11.02.2010. 01:06 ] @
Najlakše je da tekst zaista razbiješ pri unosu i upišeš u tabelu oblika stranice(tekst_id, stranica, tekst) pk(tekst_id, stranica) ind(tekst_id).
Broj stranica i-tog teksta onda dobijaš pomoću SELECT MAX(stranica) FROM stranice WHERE tekst_id=i, a tekst njegove n-te stranice pomoću SELECT tekst FROM stranice WHERE tekst_id=i AND stranica=n
Pogodnost ovog rešenja je što su ti stranice indeksirane tako da je zahvat iz baze optimizovan i ne dovlačiš višak podataka. Druga prednost je što ovako možeš da podržiš i ručne prelome teksta čitajući pagebreak oznaku iz Word dokumenta, da posebno obradiš prelom naslova i izbegavanje siročića, sve to pri uvozu dokumenta.
[ Take @ 12.02.2010. 09:20 ] @
Hvala na odgovoru, probao sam ovaj nacin i mislim da ce posluziti (s obzirom da nema drugog).
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.