wugelsons Posted June 13, 2009 Report Posted June 13, 2009 Lieta tāda ir lapa ar CMS, kur ziņas tiek no MySQL DB. Lapā ziņas parādās pilnā tekstā. Kā dabūt lai parādītos tikai daļa no teksta un pārējo dabū ar piespiežot "Read more..."? Quote
kechums Posted June 13, 2009 Report Posted June 13, 2009 Uztaisi db vēlvienu lauku pilns_teksts, pie jaunumu pievienošanas to lauku aizpildi tikai tad, ja jaunuma teksts, pēc tavām domām, ir pārāk garš un tad ar vienu IF'u. Ja lauks pilns_teksts ir aizpildīts, tad izvadīt linku read more. Quote
wugelsons Posted June 13, 2009 Author Report Posted June 13, 2009 Bet es nezinu kā strādā read more. Kāds varētu iedot kodu? Quote
werd Posted June 13, 2009 Report Posted June 13, 2009 (edited) Ja teksts ir garāks, par tevis noteikto limitu, tad izvadi tieši tik daudz sombolus no šī teksta un pieliec saiti "Read more" Teksta garumu nosaki ar strlen funkciju, izvadi noteiktu simbolu skaitu ar substr funkciju, bet to, vai teksts ir garāks - ar parastu vaicājumu. if (strlen($text)>$limit) { echo substr($text,0,$limit); echo '<a href="#">Read more</a>'; } else echo $text; Uz zem "Read more" var dažādi likt, piemēram, kad atver jaunā lapā un pēc ID izvadam visu tekstu, vai ar JavaScript atveram/paslēpjam pārējo tekstu vai kā savādāk. Edited June 13, 2009 by phpjanis Quote
Snaip3Rs Posted June 14, 2009 Report Posted June 14, 2009 Ja teksts ir garāks, par tevis noteikto limitu, tad izvadi tieši tik daudz sombolus no šī teksta un pieliec saiti "Read more"Teksta garumu nosaki ar strlen funkciju, izvadi noteiktu simbolu skaitu ar substr funkciju, bet to, vai teksts ir garāks - ar parastu vaicājumu. if (strlen($text)>$limit) { echo substr($text,0,$limit); echo '<a href="#">Read more</a>'; } else echo $text; Uz zem "Read more" var dažādi likt, piemēram, kad atver jaunā lapā un pēc ID izvadam visu tekstu, vai ar JavaScript atveram/paslēpjam pārējo tekstu vai kā savādāk. Vari iedot to javascript un kur jalie klai atvēras haiden box un parāda visu textu! Plzz. :) Quote
werd Posted June 14, 2009 Report Posted June 14, 2009 function showHideBlock (blockid) { if (document.getElementById(blockid).style.display=='block') { document.getElementById(blockid).style.display = 'none'; } else { document.getElementById(blockid).style.display = 'block'; } } Quote
Snaip3Rs Posted June 14, 2009 Report Posted June 14, 2009 A no kurienes viņš ņems textu un kas jaraksta lasit vairak linka? ko lai ver vala! Quote
werd Posted June 14, 2009 Report Posted June 14, 2009 Laukā, kas ir paslēpts, izvadi atlikušo tekstu, ja tāds ir, un izvadi saiti. <script> function showHideBlock (blockid) { if (document.getElementById(blockid).style.display=='block') { document.getElementById(blockid).style.display = 'none'; } else { document.getElementById(blockid).style.display = 'block'; } } </script> <? if (strlen($text)>$limit) { echo substr($text,0,$limit); echo '<div id="block_'.$block_id.'">'.substr($text,$limit,strlen($text));.'</div>'; echo '<a href="java script:void(0)" onclick="showHideBlock("block_'.$block_id.'")">Read more</a>'; } else echo $text; ?> Quote
endrju Posted June 15, 2009 Report Posted June 15, 2009 if (strlen($text)>$limit) { echo substr($text,0,$limit); echo '<a href="#">Read more</a>'; } else echo $text; Es neteiktu, ka baigi gudrs kods. Ko Tu darīsi, ja virkne būs UTF-8 un apcirpsi nevietā? Ļoti skaits outputs ar ķeburiem pirms "Read more" būs. Ja gribi piemēru, tad atver savu editoru, saglabā zemāk esošo kodu UTF-8 un paskaties, kas notiek. <?php $s = 'ā'; echo strlen($a); echo substr($a, 0, 1); ?> Quote
Kavacky Posted June 15, 2009 Report Posted June 15, 2009 mb_internal_encoding('UTF-8'); mb_substr($text, 0, $limit); Quote
Snaip3Rs Posted June 15, 2009 Report Posted June 15, 2009 Es nemāku programēt a ka vis kopā jasaliek? Quote
werd Posted June 15, 2009 Report Posted June 15, 2009 Es nemāku programēt a ka vis kopā jasaliek? Tad rodas jautājums "Kāpēc tu mēģini izdarīt to, ko nevari? Sāc ar vienkāršākām lietām!" Quote
wugelsons Posted June 16, 2009 Author Report Posted June 16, 2009 Laukā, kas ir paslēpts, izvadi atlikušo tekstu, ja tāds ir, un izvadi saiti. <script> function showHideBlock (blockid) { if (document.getElementById(blockid).style.display=='block') { document.getElementById(blockid).style.display = 'none'; } else { document.getElementById(blockid).style.display = 'block'; } } </script> <? if (strlen($text)>$limit) { echo substr($text,0,$limit); echo '<div id="block_'.$block_id.'">'.substr($text,$limit,strlen($text));.'</div>'; echo '<a href="java script:void(0)" onclick="showHideBlock("block_'.$block_id.'")">Read more</a>'; } else echo $text; ?> Tur ir jābūt kādam .js failam arī? Quote
endrju Posted June 16, 2009 Report Posted June 16, 2009 Tur ir jābūt kādam .js failam arī? Nē, ar script tagu pietiek. Tikai type atribūtu pieliec. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.