1 (edited by Savas 2007-01-19 12:51:10)

Topic: Teksto formavimas

Sveiki,

Tarkim turime tokią duomenų lentelę, kur "textas" yra labai ilgas tekstas (tarkim 200 žodžių):
------------------------------------------------------
# PRANESIMO_ID # PRANESIMAS # LAIKAS  #
------------------------------------------------------
#         1             #     textas1      # 2007-01 #
#         2             #     textas2      # 2007-02 #
#         3             #     textas3      # 2007-03 #
#         4             #     textas4      # 2007-04 #
#         5             #     textas5      # 2007-05 #
#         ...            #     ...             # ...          #
------------------------------------------------------

Taigi, kaip reikia išvesti duomenis iš duomenų lentelės, kad "tekstas1" ar "textas2" būtų tik keli pirmieji žodžiai iš ilgo teksto?

Kad gautūsi panašus rezultatas (iš skilties "PRANESIMAS" išvedami 6 žodžiai, po to daugtaškis):

----------------------------
2007-01, Internet Strategy and Technology Solutions to...
2007-02, Wear the white band and...
2007-03, Look up a word or...
ir t.t.
---------------------------

Gal tai padaroma su PHP?

Ko verti tavo žodžiai, jei silpni kumščiai?
Ką pakeis tavo kumščiai, jeigu makaulė tuščia?

Warning: count(): Parameter must be an array or an object that implements Countable in /home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line 820

2

Re: Teksto formavimas

Pirma galima išskaidyti kiekvieną textas į atskirus žodžius (funkcija "Explode", žr. http://lt.php.net/manual/en/function.explode.php ), o tada išrašyti tiek naujai sudaryto masyvo elementų, kiek reikia žodžių (jei jų reikia daugiau, tada patogiau ciklą daryt) ir pridėti gale daugtaškį.

Mintys - blogas apie gyvenimą, politiką, ekonomiką, kultūrą, mokslą ir kitką.
Adventure Lietuva - kompiuteriniai žaidimai, kurie yra meno forma.
Pasaulio šalių himnai - įrašai, žodžiai ir jų vertimai, informacija.

Re: Teksto formavimas

Geriausia jau tuos kelis žodžius įsirašyti į atskirą stulpelį duomenų įdėjimo/redagavimo metu vieną kartą ir tada nereikes atlikinėti karpymo operaciju kas kartą juos atvaizduojant.


Warning: count(): Parameter must be an array or an object that implements Countable in /home/pasokime/domains/mysql.lt/public_html/forumas/include/parser.php on line 820

4 (edited by FDisk 2007-03-02 23:35:16)

Re: Teksto formavimas

LPAD(str,len,padstr)
tavo atveju

INSERT(LEFT(`msg`,80),80,3,'...') AS `žinutė`

Pritrumpina teksta imama is duomenu lenteles. Jei tekstas ilgesnis nei 80 simboliu pritrumpina ji ir priraso gale "..." tritaski.

SELECT * FROM users WHERE gender = 'female' AND size > 'enough' AND leftsize = rightsize AND age >= 18 AND age < 30 LIMIT 1