Einzelnen Beitrag anzeigen

Benutzerbild von yankee
yankee

Registriert seit: 10. Mär 2004
1.134 Beiträge
 
Lazarus
 
#6

Re: [php] BBCode Parser

  Alt 11. Mär 2007, 20:54
Zitat von martinschroeder:
Wozu in aller Welt ist $randid gut? Könnte man die nicht auch weglassen?
Neine, das würde zu Problemen einem Text wie diesem führen:
Code:
Hallo [b]bla
Wie du siehst wird der [b]-tag nie geschlossen. Dadurch, dass ich im str_replace beim generieren des html-codes nichtmehr nachgucken kann, ob jeder öffnende Tag auch einen schliessenden hat, kann man sich durch einen sich nicht schliessenden Tag die ganze Seite kaputt machen, nur weil irgendwer zu doof war, oder wirklich böswillig war.
Wenn also in einem Forum wirklich jemand versucht auf diese Weise die Seite kaputt zu machen (ok, mehr als das Design kann man damit nicht kaputt machen, aber das ist ärgerlich genug, besonders, wenn es auch noch ausversehen passieren kann), müsste er die randomid erraten (in meine Beispiel eine Trefferchance von 1:2^16.m )Wobei mich das auf die Idee bringt, dass man mit strpos auch noch prüfen könnte, ob die randid überhaupt im text ist und wenn nicht solange eine neue generieren, bis sie es nichtmehr ist. So könnte man die Möglichkeit das Design zu zerstören vollkommen ausschliessen).

Ich hoffe das war jetzt verständlich . phpBB macht es übrigens genauso und nimmt eine randid, obwohl die, soweit ich es gesehen habe trotzdem noch an ein paar Stellen unnötigerweise reguläre Ausdrücke einsetzen .

Wenn du dir sicher bist, dass deine benutzer keinen Scheiss bauen, kannst du die randid natürlich auch weglassen .
Letzter Tipp: Drogen. Machen zwar nicht glücklich, geben einem aber wenigstens das Gefühl glücklich zu sein.

Have a lot of fun!
  Mit Zitat antworten Zitat