webForumDet fria alternativet

"quote" problem

8 svar · 406 visningar · startad av Webslave

WebslaveMedlem sedan maj 2002647 inlägg
#1

Hej hej
Jag får lite galet i huvvet när jag försöker fixa till en quote-funktion till mitt forum. Att bara göra en quote är inga problem men när någon gör en quote på en annan som redan gjort en quote så blir det helt kack och den avbryter quoten för tidigt... antagligen väldigt enkelt men jag är inte smart nog att komma på det.

Så här ser min kod ut:

$text = preg_replace( "'\[QUOTE=(.*?)\](.*?)\[/QUOTE\]'is","<div align=\"center\"><table class=\"forumQuote\"><tr><td>$1 skrev:\n$2</td></tr></table></div>",$text);

Hilfe?

pirroMedlem sedan aug. 2001226 inlägg
#2

En liten chansning, fungerar troligen inte

$text = preg_replace( "'[QUOTE=(.*?)](.*)[/QUOTE]'is","<div align=\"center\"><table class=\"forumQuote\"><tr><td>$1 skrev:\n$2</td></tr></table></div>",$text);
MatteMedlem sedan aug. 20002 975 inlägg
#3

För att kunna ha en quote i en quote tror jag du blir tvungen att byta ut start-tagg respektive sluttagg var för sig.

Annars tror jag du får göras någon rekursiv funktion som går utifrån in.

WebslaveMedlem sedan maj 2002647 inlägg
#4

Matte:
Några tips? Den som används på wF funkar ju bra.

Nexus86Medlem sedan okt. 20023 030 inlägg
#5

Matte skrev:

För att kunna ha en quote i en quote tror jag du blir tvungen att byta ut start-tagg respektive sluttagg var för sig.

Vet inte hur vBulletin jobbar men efter en titt på phpBB's källkod så ser jag att de gör så som Matte säger.

WebslaveMedlem sedan maj 2002647 inlägg
#6

Då kanske du kan komma med något trevligt tips?

WebslaveMedlem sedan maj 2002647 inlägg
#7

För jag e helt vilsen på det här med preg_replace... kanske någon kan ge mig en kick i rätt riktning i alla fall? Lite små surt att få tips som man inte kan genomföra p.g.a att man inte kan... :)

MatteMedlem sedan aug. 20002 975 inlägg
#8

För att bygga vidare på din egen kod, testa det här:

$text = " zxcvz [QUOTE=Matte]Hej hopp [QUOTE=Webslave]i lingonskogen [/QUOTE]zvzxv[/QUOTE]zdvzxv";

$text = preg_replace("/\[QUOTE=([^\]]+)]/is", "\n<table class=\"forumQuote\"><tr><td><b>$1 skrev:</b><br>\n", $text);
$text = preg_replace("/\[\/QUOTE]/is", "\n</td></tr></table></div>\n", $text);

echo $text;
WebslaveMedlem sedan maj 2002647 inlägg
#9

Göttmos Matte... funkar fin fint ;)

130 ms totalt · 3 externa anrop · v20260731065814-full.2b84b982
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)