Avatar billede fixxxer Nybegynder
04. september 2004 - 11:33 Der er 3 kommentarer og
1 løsning

quote i quoute

Jeg forsøger at lave et quote-script til et forum, med følgende reg-exp:

preg_replace("/\[quote=(.*)\](.*)\[\/quote\]/U","<div style=\"margin-left: 80px; margin-right: 80px; width: 100%; font: bold 11px Verdana;\"><div style=\"padding: 2px;\">$1 skrev:</div><div style=\"width: 100%; padding: 2px; color: #444444; background-color: #FAFAFA; border: 1px solid #D1D7DC; font: 11px Verdana;\">$2</div></div>" , $in_text);

Men har en bruger quoted en quote, fx

[quote=Jonas][quote=gæst]nå, nå skal man også skrive noget :-)[/quote]
ja man skal så![/quote]
hihi :glad:

Går det galt og den "quoter" kun det første quote. Kan dette løses og hvordan?
Avatar billede fixxxer Nybegynder
04. september 2004 - 12:02 #1
er det umuligt ligefrem?
Avatar billede eagleeye Praktikant
04. september 2004 - 13:22 #2
du kan ligge det ind i en funktion og lade den kalde sig selv hvis der er flere quotes:


function lavquote($str) {
  $tmp = preg_replace("/\[quote=(.*)\](.*)\[\/quote\]/U","<div style=\"margin-left: 80px; margin-right: 80px; width: 100%; font: bold 11px Verdana;\"><div style=\"padding: 2px;\">$1 skrev:</div><div style=\"width: 100%; padding: 2px; color: #444444; background-color: #FAFAFA; border: 1px solid #D1D7DC; font: 11px Verdana;\">$2</div></div>" , $str);
    if (preg_match("/\[quote=(.*)\](.*)\[\/quote\]/U",$tmp)) {
      $tmp=lavquote($tmp);
    }
  return $tmp;
}



og så kalde den i stil med:

$tekst = "[quote=Jonas][quote=gæst]nå, nå skal man også skrive noget :-)[/quote] ja man skal så![/quote] hihi :glad:";

echo lavquote($tekst);
Avatar billede fixxxer Nybegynder
04. september 2004 - 13:35 #3
jamen det var jo bare det.

Jeg havde faktisk lavet det som en funktion, men jeg havde ikke tænkt den tanke at gøre den rekursiv.

Tak for hjælpen!
Avatar billede Slettet bruger
04. september 2004 - 16:53 #4
eagleeye kan alt :P
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester