HTML disablen in PHP

Pagina: 1
Acties:

  • PluueeR
  • Registratie: December 2000
  • Laatst online: 17-08 21:56
Heb de search gebruikt, maar ik komt er niet uit. Wanneer ik data wegschrijf naar een SQL database, kan er HTML code worden gebruikt. Dit wil ik graag uitschakelen.

Zodat de posters niet enorme plaatjes kunnen invoegen e.d. en met de text opmaak kunnen kutten.

  • Dennis
  • Registratie: Februari 2001
  • Nu online
Je hebt de search gebruikt?
Yeah sure

$message = strip_tags($message);

  • PluueeR
  • Registratie: December 2000
  • Laatst online: 17-08 21:56
en ja ik heb de search gebruikt, me criteria zal wel niet goed zijn geweest :(

  • RRX
  • Registratie: Mei 2000
  • Laatst online: 25-08 23:43

RRX

@life-

PHP:
1
2
3
<?
$de_zonder_html_text = htmlentities($de_html_text);
?>

mijn T.net systeemspecspagina


  • pjonk
  • Registratie: November 2000
  • Laatst online: 29-12-2025
Op maandag 14 januari 2002 14:13 schreef PluueeR het volgende:
Heb de search gebruikt, maar ik komt er niet uit. Wanneer ik data wegschrijf naar een SQL database, kan er HTML code worden gebruikt. Dit wil ik graag uitschakelen.

Zodat de posters niet enorme plaatjes kunnen invoegen e.d. en met de text opmaak kunnen kutten.
Ja als je de search had gebruikt had je er wel achter kunnen komen >:)
Maar goed je kan het beste de tags gewoon puur opslaan in de database.
Wanneer je vervolgens de data opvraagt moet je eerst de functie htmlspecialchars aanroepen en vervolgens worden je < en > tekens omgezet naar < en &;gt; enzo.

Dus je tags worden niet meer uitgevoerd.

It’s nice to be important but it’s more important to be nice


  • PluueeR
  • Registratie: December 2000
  • Laatst online: 17-08 21:56
en dat doe ik uiteraard voordat ik nl2br ga gebruiken :)

  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Op maandag 14 januari 2002 14:22 schreef PluueeR het volgende:
en dat doe ik uiteraard voordat ik nl2br ga gebruiken :)
ligt eraan wat je wilt natuurlijk :)

verder is dit vrij makkelijk te vinden in de php manual onder "string functions"

  • PluueeR
  • Registratie: December 2000
  • Laatst online: 17-08 21:56
th4x0r voor de tip :)

Verwijderd

Op maandag 14 januari 2002 14:18 schreef RRX het volgende:
PHP:
1
2
3
<?
$de_zonder_html_text = htmlentities($de_html_text);
?>
Zo haal je de html er niet uit, maar quote je hem alleen maar. Een < wordt dan een < etc.. maar strip_tags() haalt echt alles eruit :)

Maar htmlentities lijkt me toch wel wat hij zoekt, anders verdwijnen sommige tekens uit je tekst.

  • T-h-i-j-s
  • Registratie: April 2000
  • Laatst online: 27-08 10:53

T-h-i-j-s

koffie? ja lekker :)

Op maandag 14 januari 2002 14:22 schreef PluueeR het volgende:
en dat doe ik uiteraard voordat ik nl2br ga gebruiken :)
Ik zou nl2br pas gebruiken als je het weer uit de database haalt :)

  • Olaf van der Spek
  • Registratie: September 2000
  • Niet online
Dat ligt eraan of performance belangrijk is en of het nog (makkelijk of vaak) ge-edit moet kunnen worden.

  • PluueeR
  • Registratie: December 2000
  • Laatst online: 17-08 21:56
Op dit moment is het zo dat in de database gewoon twee enters achter elkaar staan. Deze worden met het ophalen omgetoverd tot 2 br tags.

Nadeel imho als je htmlspecialchars gaat gebruiken, is wanneer je nl2br gaat gebruiken bij het opslaan van het formulier, die
br tags niet meer worden uitgevoerd om dat htmlspecialchars die code niet uitvoerd maar weergeeft als de daadwerkelijke html code.

  • pjonk
  • Registratie: November 2000
  • Laatst online: 29-12-2025
Op maandag 14 januari 2002 15:48 schreef PluueeR het volgende:
br tags niet meer worden uitgevoerd om dat htmlspecialchars die code niet uitvoerd maar weergeeft als de daadwerkelijke html code.
Is een kwestie van volgorde van uitvoeren.
Eerst htmlspecialchars aanroepen en pas daar nl2br anders geeft ie je <br> tags inderdaad ook als plain text weer.

It’s nice to be important but it’s more important to be nice


  • KlaasB
  • Registratie: Juli 2000
  • Laatst online: 01-07-2024
Ik heb dit al eens eerder aangekaart, maar als je strip_tags gebruikt, dan ben je ook je < en > kwijt die je wel had willen gebruiken. Gebruik je htmlspecialchars of entities, dan ben je de <B>, die gebruikers van mij best mogen gebruiken, ook kwijt.

It's not a bug, it's a feature


  • RRX
  • Registratie: Mei 2000
  • Laatst online: 25-08 23:43

RRX

@life-

Op maandag 14 januari 2002 14:35 schreef c9melvin het volgende:

[..]

Zo haal je de html er niet uit, maar quote je hem alleen maar. Een < wordt dan een < etc.. maar strip_tags() haalt echt alles eruit :)

Maar htmlentities lijkt me toch wel wat hij zoekt, anders verdwijnen sommige tekens uit je tekst.
cool, da wissik nie :)

mijn T.net systeemspecspagina


  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 02-06 23:18
of je gooit
code:
1
2
< naar &lt;
> naar &gt;

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


Verwijderd

Op maandag 14 januari 2002 19:10 schreef KlaasB het volgende:
Ik heb dit al eens eerder aangekaart, maar als je strip_tags gebruikt, dan ben je ook je < en > kwijt die je wel had willen gebruiken. Gebruik je htmlspecialchars of entities, dan ben je de <B>, die gebruikers van mij best mogen gebruiken, ook kwijt.
Dan maak je bv. een parseText() functie die [TAG][/TAG] omzet naar bold enzo. Die tekens is iedereen toch wel gewoon in comments/forums te gebruiken. Dat kun je makkelijk zo doen:
code:
1
2
3
4
5
6
7
8
9
10
11
      // Make PRE
      $text = preg_replace("/\\[\s*pre\s*\](.+?)\\[\s*\/\s*pre\s*\]/si", "<pre>$1</pre>", $text);

      // Make bold
      $text = preg_replace("/\\[\s*b\s*\](.+?)\\[\s*\/\s*b\s*\]/si", "<b>$1</b>", $text);

      // Italic
      $text = preg_replace("/\\[\s*i\s*\](.+?)\\[\s*\/\s*i\s*\]/si", "<i>$1</i>", $text);

      // Make underline
      $text = preg_replace("/\\[\s*u\s*\](.+?)\\[\s*\/\s*u\s*\]/si", "<u>$1</u>", $text);

(dit is redelijk newbie-proof, waar dus zowat overal extra spaties mogen staan tussen de tags >:)

  • chris
  • Registratie: September 2001
  • Laatst online: 11-03-2022
Hmz dat is ubb wat je nou geeft, dat wil 'ie volgens mij niet hoor...

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

c9melvin:
Dan maak je bv. een parseText() functie
(...)
(dit is redelijk newbie-proof, waar dus zowat overal extra spaties mogen staan tussen de tags >:)
ach, ik weet niet of newbie's en/of non-newbie's daar nou vrolijker van worden...

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Verwijderd

Op dinsdag 15 januari 2002 11:19 schreef dev-null het volgende:
Hmz dat is ubb wat je nou geeft, dat wil 'ie volgens mij niet hoor...
Het begint idd een beetje off-topic te gaan...
ach, ik weet niet of newbie's en/of non-newbie's daar nou vrolijker van worden...
Wel als je geen edit functie hebt in je comments en je zet per ongeluk een spatie teveel, dan ziet je code er toch nog uit zoals je het wil.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

c9melvin:
Wel als je geen edit functie hebt in je comments en je zet per ongeluk een spatie teveel, dan ziet je code er toch nog uit zoals je het wil.
Tja, een edit-functie is sowieso beter >:)
</flauw>

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1