Eredmény: 1 - 10 (10) összesen

Téma: Bevezető szöveg generálása

  1. #1
    Mentor hetes logója
    Csatlakozott
    09-04-17
    Hozzászólás
    452
    Begyűjtött 73 köszönetet
    60 hozzászólásával

    Alapbeállítás Bevezető szöveg generálása

    Nos, van nekem egy tartalomkezelőm, nevezzük sajátnak és van benne több ezer cikk. Szeretnék hozzá mondjuk 500 karakteres bevezetőket generálni. Na most erre kiválóan alkalmas a php substr beépített függvénye, de ha pont oda esik egy html tag, akkor azt is ketté vágja, ami ugye nem jó. Ezt sikerült megoldani egy preg-replace-szel.
    A gondom azzal van, hogy ha mondjuk van egy félkövér mondat és a mondat felénél vágja el a substr, akkor a <b> zárótagje is megy a fenébe, amitől az oldalam utána lévő része félkövér lesz. Ezt hogyan lehetne megoldani? Valami olyan megoldásra lenne szükségem, ami a folyamat végén ha kell, lezárja a nyitva maradt tageket.



  2. #2
    kow
    kow nem elérhető
    KowDerMei$ter kow logója
    Csatlakozott
    07-05-09
    Hely
    Budapest
    Hozzászólás
    1.447
    Begyűjtött 0 köszönetet
    0 hozzászólásával

    Alapbeállítás re: Bevezető szöveg generálása

    kis áldozat, de dobj ki minden HTML teget a szövegből, nem kell az a bevezetőbe.
    strip_tags();
    paraméterezhető, hogy img-t meghagyja pl.



  3. #3
    nembölcs nemvalid logója
    Csatlakozott
    09-06-25
    Hely
    Szeged
    Hozzászólás
    462
    Begyűjtött 0 köszönetet
    0 hozzászólásával

    Alapbeállítás re: Bevezető szöveg generálása

    Szavakat számolj, és ne karaktereket. Pontatlanabb, de megoldja elvileg a problémát...
    A legegyszerűbb tényleg a html-tagok eldobása a kivonatban.



  4. #4
    Új tag fivi logója
    Csatlakozott
    10-02-12
    Hozzászólás
    5
    Begyűjtött 0 köszönetet
    0 hozzászólásával

    Alapbeállítás re: Bevezető szöveg generálása

    Szedd ki előtte a tag-eket, egy bevezetőbe úgysem fog hiányozni.



  5. #5
    Mentor hetes logója
    Csatlakozott
    09-04-17
    Hozzászólás
    452
    Begyűjtött 73 köszönetet
    60 hozzászólásával

    Alapbeállítás re: Bevezető szöveg generálása

    Köszönöm az ötleteket, de jó volna megoldani úgy, hogy a kecske is jól lakjon és a káposzta is megmaradjon.



  6. #6
    Bölcs
    Csatlakozott
    09-12-31
    Hozzászólás
    620
    Begyűjtött 0 köszönetet
    0 hozzászólásával

    Alapbeállítás re: Bevezető szöveg generálása

    Idézet hetes eredeti hozzászólása Hozzászólás megtekintése
    Köszönöm az ötleteket, de jó volna megoldani úgy, hogy a kecske is jól lakjon és a káposzta is megmaradjon.
    Én valahogy úgy csinálnám, hogy megszámolnám, hogy hány <*b> , <*strong>, <*i>... (és a többi megengedett tag) kifejezést talál és ha páratlan valamelyik, akkor abból tesz a végére egy lezárást.

    vaaagy ez se rossz:

    1.) Végigmész karakterenként a bevezető szövegen
    2.) Ha talál mondjuk egy "<" karaktert és az ezt követő karakter pl.: "b", akkor a $lezaras['b']="</b>", de megy tovább és ha talál egy "<" amit egy "/" és egy "b" követ, akkor $lezaras['b']=""
    3.) Természetesen ezt minden megengedett tag-re figyelni kell, a végére pedig odateszed az összes $lezaras[i],$lezaras[b],$lezaras[strong], stb... Amelyik üres az üres, de ha valamelyik nem volt lezárva azt lezárja. Elvileg ez elkezeli azt is, ha egy <b>szöveg<i>szöveg</i></b> esetén hiányzik csak a </b>, vagy azt is ha mind a két lezáró.

    Elsőre ennyi jutott eszembe. Egyik sem a legelegánsabb megoldás, de nem egy egyszerű probléma...



  7. #7
    nembölcs nemvalid logója
    Csatlakozott
    09-06-25
    Hely
    Szeged
    Hozzászólás
    462
    Begyűjtött 0 köszönetet
    0 hozzászólásával

    Alapbeállítás re: Bevezető szöveg generálása

    Vagy írj egy html validator class-t, ami többek között a hiányzó lezárásokat is automatikusan javítja. Aztán tesztelés után felajánlhatod letöltésre a titokszobában

    Viccet félretéve: nézz utána egy ilyesmi megoldásnak, gyanítom, hogy létezik letölthető formában...



  8. #8
    Rubyist Geri logója
    Csatlakozott
    07-12-15
    Hely
    \x90
    Hozzászólás
    5.749
    Begyűjtött 1.432 köszönetet
    895 hozzászólásával

    Alapbeállítás re: Bevezető szöveg generálása

    Idézet nemvalid eredeti hozzászólása Hozzászólás megtekintése
    Vagy írj egy html validator class-t, ami többek között a hiányzó lezárásokat is automatikusan javítja. Aztán tesztelés után felajánlhatod letöltésre a titokszobában

    Viccet félretéve: nézz utána egy ilyesmi megoldásnak, gyanítom, hogy létezik letölthető formában...
    hxxp://www.bermi.org/projects/xhtml-validator

    nem próbáltam, de biztos jól működik, ha nem akkor ezen elindulva hetes már biztosan meg tudja írnia sajátját.


    If debugging is the process of removing software bugs, then programming must be the process of putting them in.
    Ruby blog
    Give a man a fish and you feed him for a day. Teach a man to fish and you feed him for a lifetime.
    Respect all, fear none

  9. #9
    Bölcs benedictus logója
    Csatlakozott
    10-04-23
    Hozzászólás
    1.574
    Begyűjtött 2 köszönetet
    2 hozzászólásával

    Alapbeállítás re: Bevezető szöveg generálása

    szűrd ki a lezáratlan tageket és dobd el a nyitó taget vagy zárd le.



  10. #10
    Mentor hetes logója
    Csatlakozott
    09-04-17
    Hozzászólás
    452
    Begyűjtött 73 köszönetet
    60 hozzászólásával

    Alapbeállítás re: Bevezető szöveg generálása

    Hű, tökre elfelejtettem ezt a topikot, most is csak azért lestem be, mert megtetszett a téma neve. Jéé mondom, ez érdekes lehet.

    Átnéztem a tippeket, ha van tuti megoldásom, majd megosztom itt. Köszönöm az ötleteket.



A téma címkéi:

Könyvjelzők

Hozzászólás szabályai

  • Új témákat nem hozhatsz létre
  • Válaszokat nem küldhetsz
  • Fájlokat nem csatolhatsz
  • A hozzászólásaidat nem módosíthatod
  •