Avatar billede avminarm Juniormester
28. marts 2006 - 22:00 Der er 1 kommentar og
1 løsning

klippe tekst efter 100 tegn - men ikke midt i HTML

Hej

jeg har fundet denne funktion her på E

function klip($tekst, $laengde = 100, $tolerance = 10) // $laengde og $tolerance kan udelades
{
    $punktum  = strpos(substr($tekst, $laengde-$tolerance, 2*$tolerance), "."); // position af punktum
    $mellemrum = strpos(substr($tekst, $laengde-$tolerance, 2*$tolerance), " "); // position af mellemrum
    $mere      = "..."; // punktummer hvis mere tekst

    if (strlen($tekst) <= $laengde + $tolerance) {
        $slut_pos = strlen($tekst); // slutposition = slut på tekst, da denne er kortere end $laengde og $tolerance
        $mere = ""; // ikke andet
    } elseif ($punktum !== false) {
        $slut_pos = $laengde-$tolerance+$punktum; // slutposition = punktum
    } elseif ($mellemrum !== false) {
        $slut_pos = $laengde-$tolerance+$mellemrum; // slutposition = mellemrum
    } else {
        $slut_pos = $laengde; // slutposition $laengde (ikke noget at gøre - skær ord over)
    }

    return substr($tekst, 0, $slut_pos) . $mere; // udskriv del + evt. punktummer
}

Jeg ved godt man kan klippe direkte i mysql osv osv.

Mit problem er at hvis en bruger har fundet på det geniale at indsætte en masse HTML koder ind i dokumentets start så får jeg et resultat der ser underligt ud - især hvis de sidste par tegn er midt i et billed tag f.eks

<img alt="" src="http://www.side.dk/billeder/ka

her mangler stien til billedet og tagget er ikke lukket ordentligt - hvad gør jeg?
Avatar billede jakobdo Ekspert
28. marts 2006 - 22:27 #1
Du skal jo faktisk til at lave en hel parser, for tagget <img src="billede.jpg" alt="billede" /> det starter ved < og slutter ved /> og nogle tags kan starte og stoppe med < og >.
Og andre tags startes med: <div> ..... </div>
Men en direkte løsning har jeg ikke på problemet.
Avatar billede avminarm Juniormester
12. april 2006 - 11:50 #2
løsningen må blive at lave et tekst felt særskilt til "appetitvækkeren"
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester