|
| Første 500 tegn fra database - Hvad med ik~ Fra : Henning Birch |
Dato : 22-05-02 12:08 |
|
Hej
Jeg er ved at lave et udtræk fra en længere tekst fra database (MySQL) og
vil kun have skrevet et resume ud fra hver artikel (første 500 tegn).
Det har jeg ingen problemmer med.
Men hvis nu det er tags i min databasen hvad så? Eksempel
...... dette er et areal på 5000 m <sup>2</sup>
hvis så jeg skærer efter 2 tallet men før </sup> tag'en slutter bliver
resten af teksten også i <sup>.
Er der nogen de har en generel løsning på det problem eller skal der laves
en særløsnig (læs parsing af strengen så den ikke bliver skåret efter 500
tegn, men efter alle tags er afsluttet)?
--
Henning
| |
Jonas Koch Bentzen (22-05-2002)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 22-05-02 12:48 |
|
Henning Birch skrev:
>
> Jeg er ved at lave et udtræk fra en længere tekst fra database (MySQL)
> og vil kun have skrevet et resume ud fra hver artikel (første 500
> tegn).
>
> Det har jeg ingen problemmer med.
>
> Men hvis nu det er tags i min databasen hvad så? Eksempel
>
> ..... dette er et areal på 5000 m <sup>2</sup>
>
> hvis så jeg skærer efter 2 tallet men før </sup> tag'en slutter bliver
> resten af teksten også i <sup>.
>
> Er der nogen de har en generel løsning på det problem eller skal der
> laves en særløsnig (læs parsing af strengen så den ikke bliver skåret
> efter 500 tegn, men efter alle tags er afsluttet)?
Brug strrpos() til at finde det sidst forekommende mindre-end-tegn og
det sidst forekommende større-end-tegn i den tekst, du har skåret i.
Hvis det sidst forekommende mindre-end-tegn ligger længere fremme i
teksten end det sidste forekommende større-end-tegn, så er det et tegn
på, at du har skåret midt inde i en HTML-kode, og så må du skære endnu
længere tilbage til det sidst forekommende mindre-end-tegn.
Du kan selvfølgelig også bare bruge strip_tags() på teksten og dernæst
skære i den.
--
Jonas Koch Bentzen
| |
Henning Birch (23-05-2002)
| Kommentar Fra : Henning Birch |
Dato : 23-05-02 09:21 |
|
Jonas Koch Bentzen <ingen.emailadresse@eksempel.dk> skrev i
news:acg0h0$slb$1@sunsite.dk:
> Brug strrpos() til at finde det sidst forekommende mindre-end-tegn og
> det sidst forekommende større-end-tegn i den tekst, du har skåret i.
> Hvis det sidst forekommende mindre-end-tegn ligger længere fremme i
> teksten end det sidste forekommende større-end-tegn, så er det et tegn
> på, at du har skåret midt inde i en HTML-kode, og så må du skære endnu
> længere tilbage til det sidst forekommende mindre-end-tegn.
Hmmm, ville det ikke være nemmere at søge på </ med strpos for at sikre at
det er en tag-slut kode. Hvis jeg vælger den løsning bliver det at parse
teksten totalt.
Dit forslag afslutter ikke begyndte koder. Jeg bruger f.eks. <b>, hvis den
ikke bliver af sluttet af med </b> kommer resten af siden til at se
forfærdelig ud.
> Du kan selvfølgelig også bare bruge strip_tags() på teksten og dernæst
> skære i den.
Se det var nok en nemmere løsning. Den tror jeg at jeg starter ud med.
Så kigger jeg lidt mere på parsingen senere.
--
Henning
| |
|
|