webForumDet fria alternativet

"quote" problem

PHPur PHP

8 svar · 406 visningar · startad av Webslave

Medlem sedan maj 2002647 inlägg
Frågan#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?

Medlem 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);
Medlem 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.

Medlem sedan maj 2002647 inlägg
#4

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

Medlem 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.

Medlem sedan maj 2002647 inlägg
#6

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

Medlem 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... :)

Medlem 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;
Medlem sedan maj 2002647 inlägg
#9

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

128 ms totalt · 3 externa anrop · v20260731065814-full.25f56b17
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)