Stránka: 1 z 1
| [ Príspevkov: 9 ] | |
| Autor | Správa |
|---|
Registrovaný: 09.09.07 Prihlásený: 07.11.16 Príspevky: 3114 Témy: 233 | 233 Bydlisko: Nové Zámky |
Zdravim,
co pouzivate na spravne parsovanie BB tagu
Kód: [quote] [/quote]
?
Potreboval by som to tak, ako je na phpBB fore, pretoze mojich milion vymyslancov nefunguje tak spravne, ako tu na fore
Pozeral som zdrojaky, ale neviem sa z toho vysomarit, kedze sa to tam pletie aj so sablonami, mam v tom trochu chaos.
Nemate to niekto funkcne ?
Dakujem
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď |
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
PhpBB nepoužíva str_replace($ihly, $nahrady, #seno)?
|
|
Registrovaný: 26.11.06 Prihlásený: 09.10.24 Príspevky: 4118 Témy: 319 | 319 Bydlisko: HE/BA | |
Registrovaný: 09.09.07 Prihlásený: 07.11.16 Príspevky: 3114 Témy: 233 | 233 Bydlisko: Nové Zámky |
Vidis tam niekde QUOTE ?
Ono to nie je take jednoduche, ako sa zda.. Pretoze QUOTE struktura moze byt dost roznoroda..
napr:
Kód: [quote] [quote][/quote] ... [quote] [quote][/quote] [/quote] [/quote]
Ale uz som nieco vycucal z phpBB fora, zatial som si na fore nevsimol, ze by mi to nejak blblo, ale praxov sa ukaze 
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď |
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
A čo si vycucal, ak sa môžem spýtať? A v čom je vlastne ten problém? Quote je predsa normálny tag ako ostatné, len má nejaké špecifické formátovanie....nie?? 
|
|
Registrovaný: 09.09.07 Prihlásený: 07.11.16 Príspevky: 3114 Témy: 233 | 233 Bydlisko: Nové Zámky |
trosku som to este prerabal, nie je to bohvieco ale  ale ide mi to zatial
V hlaven funkcii:
Kód: $input = preg_replace_callback("#\[quote=(.*?)?\](.+?)\[\/quote\]#i", unQuote, $input); for($i=1;$i<10;$i++) { $input = preg_replace( "/\[quote\](.+?)\[\/quote\]/si", "<div class=\"quote\"><div class=\"padding5\">\\1</div></div>", $input); $input = preg_replace_callback("#\[quote=(.*?)?\](.+)\[\/quote\]#i", unQuote, $input); } a funkcia unQuote: Kód: function unQuote($matches){ return "<div class=\"quote\"><div class=\"padding5\"><strong class=\"cierny\">{$matches[1]} napísal:</strong><br>$matches[2]</div></div>"; }
ten for cyklus je to pekne na prd, ale tak, co uz no,.. zatial lepsie nemam.. 
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď |
|
Registrovaný: 27.07.07 Príspevky: 3948 Témy: 51 | 51 Bydlisko: Bratislava |
rekurziu si skusal? pozri si treti priklad v dokumentacii k preg_replace_callback()
_________________ NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE |
|
Registrovaný: 09.09.07 Prihlásený: 07.11.16 Príspevky: 3114 Témy: 233 | 233 Bydlisko: Nové Zámky |
Kód: <?php $input = "plain [indent] deep [indent] deeper [/indent] deep [/indent] plain";
function parseTagsRecursive($input) {
$regex = '#\[indent]((?:[^[]|\[(?!/?indent])|(?R))+)\[/indent]#';
if (is_array($input)) { $input = '<div style="margin-left: 10px">'.$input[1].'</div>'; }
return preg_replace_callback($regex, 'parseTagsRecursive', $input); }
$output = parseTagsRecursive($input);
echo $output; ?>
Toto, ze ? Skusim, dik !
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď |
|
Registrovaný: 15.03.07 Prihlásený: 16.07.12 Príspevky: 25 Témy: 7 | 7 Bydlisko: Košice |
Mne pomohlo toto:
Kód: $pocet_quote = substr_count($Text, "[/quote]");
while ($pocet_quote > 0) {
// Check for quote $Text = preg_replace("(\[quote\](.+?)\[\/quote])is",'<div class="quote">$1</div>',$Text); $Text = preg_replace("(\[quote\=\"(.+?)\"\](.+?)\[/quote\])", '$1 napísal: <div class="quote">$2</div>', $Text); $pocet_quote--;
}
Akurat som to pisal uz hrozne davno nepametam si presne ako to funguje 
_________________ aaa bbb |
|
Stránka: 1 z 1
| [ Príspevkov: 9 ] | |
|