Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: automatycznie dzielenie tekstu (z html) na strony
Forum PHP.pl > Forum > PHP
cisrudlow
Mam system publikacji artykulow napisanych przez uzytkownikow. Uzytkownik
wpisuje sobie go (tekst jest formatowany html-em) w panelu, jednak moze byc
on bardzo dlugi. Ramy mojej strony sa bardzo sztywne (w polu na tekst
miescie sie 12 linijek lub powiedzmy ok. 500 znakow), a wiec chcialbym ten
artykul podzielic na strony. Wszytko byloby pieknie, gdyby nie bylo tagow
html-a w tym tekscie (a musza byc). Ktos ma pomysl, jak to zrobic (moze w
samym procesie wpisywania) lub czy zna ktos, jakas klase, ktora wykonuje
taki zabieg?
strife
Witam,Efektem będzie to że taka funkcja liczyła by znaki bez tagów, więc należało być się ostrożnie z tym obchodzić. Przykład:
  1. <?php
  2.  
  3. $string = '<td><td><html><head><font>Lipsum</td></html><body>';
  4. $ile = licz_znaki( $string ); // dostaniemy wartość 6
  5. if ( $ile >= 500 )
  6. {
  7.  // .. dzielisz starego stringa na kolejna strone etc.
  8. }
  9.  
  10. ?>


Pozdrawiam!
ActivePlayer
ale tutaj chyba problemem są tagi htmla winksmiley.jpg mysle ze tak:

  1. <?php
  2.  
  3. $stary_text = 'asdasda ... ad asd <b>...</b>';
  4. $text_do_podzialu = explode(' ', trim(strip_tags($stary_text)));
  5. if(count($text_do_podzialu)>500){// jesli ma > 500 slow
  6. $podzielony_text = explode($text_do_podzialu[500], $stary_text);// 
  7. $podzielony_text[0] .= $text_do_podzialu[500].'...';
  8. print_r($podzielony_text);
  9. }
  10. else{
  11. echo $stary_text;
  12. }
  13.  
  14. ?>


ten kod pomoze sprawi ze strona nie zostanie 'pocięta' w miejscu taga htmla... nie wpadlem na pomysl jak zrobic, zeby zachowac poprawnosc tagów htmla.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.