Mám nepatrný prblém,
obcas se najde nekdo kdo mi do fora vlozi prispevek, kde je jedno slovo dlouhe treba 200 znaku (terba ahoooooooooo..j az do prdele) > takhle se to ulozi do databaze a pri zobrazovani mi to potom neprijemne roztahne sranku. Jak zajistit zalomeni po urcitem poctu znaku? Diky
http://cz.php.net/manual/cs/function.wordwrap.php
$prispevek = WordWrap($prispevek, 110, "\n", 1);
... nevim, co to je, ale funguje to... myslim... ;-)
U wordwrapu je ale blbý, že to zalomí kdykoliv, no a pak když mám pružnou stránku tak text na půlku obrazovky nebo naopak přes celou je na ptyel...
Pokud v příspěvku nemáš nějký dlouhý kódový výraz, tak používám tohle (delší slovo než 30 znaků už asi nebude omyl :o) ale dá se to i zvětšit)):
$vzkaz = explode(" ", $vzkaz);
for($i=0; $i<count($vzkaz); ++$i){
$vloz=$vzkaz[$i];
if(strlen($vloz)>30){$vloz="";}
if($vloz!=""):
$vzkaz_upraveny = $vzkaz_upraveny.$vloz." ";
else:
$vzkaz_upraveny = $vzkaz_upraveny;
endif;
}
$vzkaz = $vzkaz_upraveny;
<HTML>>>U wordwrapu je ale blbý, že to zalomí kdykoliv, no a pak když mám pružnou stránku tak text na půlku obrazovky nebo naopak přes celou je na ptyel...
RTFM, posledni parametr "cut":
If the cut is set to 1, the string is always wrapped at the specified width. So if you have a word that is larger than the given width, it is broken apart.
Ten tvuj priklad je sice hezky ale precijen bych radeji pouzil:
$newtext = wordwrap($text, 30, "\n", 1);
$newtext = nl2br($newtext);
sice to 30ti znakove slovo nevypusti ale proc taky.. co kdyz je to treba odkaz? Zalomeny je porad lepsi nez vymazany ne?</HTML>
Richard: Já vím, je to přeci jen nevymakaný, to máš pravdu :o) Ale kdyžtak by se to dalo pak ošetřit pomocí reg výrazů.
Takhle to já používám kvůli roztahování, ale to možná ani nepotřebuje :o)
<HTML>a stejne ten kousek kodu nejak nechapu...
nestacilo by:
$vzkaz_upraveny = '';
$vzkaz = explode(" ", $vzkaz);
for($i=0; $i<count($vzkaz); $i++){
if (strlen($vzkaz[$i]) >= 30) $vzkaz[$i] = '';
$vzkaz_upraveny .= $vzkaz[$i];
}</HTML>
chybí ti tam count( ... ) za tím ifem ;)
ovšem bacha, aby to třeba neořezalo nějakou webovou adresu! (bývají delší než 30 znaků a jsou "obvykle" bez mezer)
<HTML>uz nechybi ;)</HTML>
jo, tomu se říká "výhoda moderátora" ;) Ovšem pořád neřešíš problém webových adres, ty se taky občas do fór dávají. Mimochodem, nezblbl ti přenos dat? Že máš ten for jaksi přerušený... :-/
<HTML>uz preruseny neni :))) ted jsem prozmenu zapomel na preklad htmlentit..
Ty adresy uz neresim, na to se nikdo neptal, ale take jsem to zminoval</HTML>