webForumDet fria alternativet

Kontrollera och formatera indata

3 svar · 410 visningar · startad av Smultron

SmultronMedlem sedan juli 2002423 inlägg
#1

Jag har sökt lite i forumet men inte hitta något bra än och därför skrivier jag en ny tråd.

Jag undrar hur man ska göra för att på bästa sätt kontrollera indata och formatera den så att den ska bli rätt

ungefär som man kan göra här på forumet med bold, italic osv...

Det ska spras i en databas

Jag vill inte att man ska kunna skriva html kod osv!

PeddaMedlem sedan juni 20006 032 inlägg
#2

Du ska inte ändra datan när du sparar, det är bättre att göra det efter att du har hämtat det från databasen.

$text = str_replace("[B]", "<b>", $text);
$text = str_replace("[/B]", "</b>", $text);
PeeerMedlem sedan mars 20025 907 inlägg
#3

Precis som Pedda säger så ska du spara datan oformaterad (du kanske vill göra något annat med den i ett annat skede, då är det skönt att slippa ha massa grötig html inblandat överallt).

Dock är inte den metoden som används i kodexemplet ovan optimal. Vad händer t.ex. om någon skriver en -tagg men inte en [./b]? Då kommer resten av texten på sidan att bli fet, och det är väl kanske inte meningen. Följande metod är nog att föredra

$text = preg_replace( "'\[B\](.*?)\[/B\]'is","<b>$1</b>",$text);
aasahMedlem sedan mars 20034 471 inlägg
#4

... glöm det

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