bevat een string javascript of html?
Ik heb dit al geprobeerd te voorkomen dmv htmlencode() alleen worden er dan soms ook tekens vertaald die je graag niet vertaald hebt denk aan bv de é en een pijl <--
Dus mijn vraag was of iemand hier misschien een oplossing of een beter idee heeft.
Alvast bedankt
Gewijzigd op 02/11/2010 15:21:55 door Pim -
strip_tags ?
Pim - op 02/11/2010 15:18:38:
Het mag rustig in je DB staan, je mag het alleen niet weergeven. htmlentities($str, ENT_QUOTES) de weergave.
oke maar ENT_QUOTES convert alleen de quotes? daarvoor gebruik ik mysql_real_escape_string() dan toch al?
Jacco Engel op 02/11/2010 15:18:38:
strip_tags ?
Ja, daar kan ik misschien wel wat mee, en wat betreft javascript? iemand een idee?
Gewijzigd op 02/11/2010 15:28:42 door stefan Renne
Stefan Renne op 02/11/2010 15:24:44:
oke maar ENT_QUOTES convert alleen de quotes? daarvoor gebruik ik mysql_real_escape_string() dan toch al?
Ja, daar kan ik misschien wel wat mee, en wat betreft javascript? iemand een idee?
Pim - op 02/11/2010 15:18:38:
Het mag rustig in je DB staan, je mag het alleen niet weergeven. htmlentities($str, ENT_QUOTES) de weergave.
oke maar ENT_QUOTES convert alleen de quotes? daarvoor gebruik ik mysql_real_escape_string() dan toch al?
Jacco Engel op 02/11/2010 15:18:38:
strip_tags ?
Ja, daar kan ik misschien wel wat mee, en wat betreft javascript? iemand een idee?
Als je niet weet wat de functie doet kijk je op php:
htmlentities - Convert all applicable characters to HTML entities.
Verder moet je geen strip tags gebruiken, misschien wilt iemand wel een voorbeeld geven...
ik denk dat niemand een striptags voorbeeld wil geven, jammer
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
// Voorbeeld 1
$string = '<div><p>Hallo <b>gebruikersnaam</b>! Welkom op PHPhulp.nl!</p></div>';
// Geeft 'Hallo gebruikersnaam! Welkom op PHPhulp.nl!'
$output = strip_tags($string);
// Voorbeeld 2
$string2 = '<div><p>Hallo <b>gebruikersnaam</b>! Welkom op PHPhulp.nl!</p></div>';
// Geeft '<p>Hallo <b>gebruikersnaam</b>! Welkom op PHPhulp.nl!</p>'
$output2 = strip_tags($string, '<b><p>');
?>
// Voorbeeld 1
$string = '<div><p>Hallo <b>gebruikersnaam</b>! Welkom op PHPhulp.nl!</p></div>';
// Geeft 'Hallo gebruikersnaam! Welkom op PHPhulp.nl!'
$output = strip_tags($string);
// Voorbeeld 2
$string2 = '<div><p>Hallo <b>gebruikersnaam</b>! Welkom op PHPhulp.nl!</p></div>';
// Geeft '<p>Hallo <b>gebruikersnaam</b>! Welkom op PHPhulp.nl!</p>'
$output2 = strip_tags($string, '<b><p>');
?>
Je ziet dat in het eerste voorbeeld ALLE HTML wordt verwijderd, en in het tweede voorbeeld uitzonderingen zijn toegevoegd... Alle html wordt verwijderd, behalve de <b> en <p> tags :)
Veel succes verder!
Stefan Renne op 03/11/2010 21:02:58:
maar het nadeel van htmlentities is dat sommige dingen ook geconvert worden waarvan ik niet wil dat ze geconverteerd worden.
htmlspecialchars beter? Die zet alleen dingen als <, > en & en eventueel quotes om (als je niet ENT_COMPAT maar ENT_QUOTES als 2e argument meegeeft)
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
function clean($tekst){
$tekst=htmlspecialchars(strip_tags(trim($tekst)));
return $tekst;
}
//website code
$cleanup=clean($tekst);
echo $cleanup;
?>
function clean($tekst){
$tekst=htmlspecialchars(strip_tags(trim($tekst)));
return $tekst;
}
//website code
$cleanup=clean($tekst);
echo $cleanup;
?>
Zoiets.
Gewijzigd op 04/11/2010 09:15:37 door Jordy nvt
mmm oke bedankt jongens
Waarom zou je dat zo willen? Doe gewoon mysql_real_escape_string en verander het pas als je het uit je db haalt...?