Is deze functie goed genoeg om input / output veilig te maken?
Leon Kunst
27/10/2008 00:24:00Heren een simpele vraag;
Is deze functie goed genoeg om de input / output van en naar de database veilig te stellen?
Is deze functie goed genoeg om de input / output van en naar de database veilig te stellen?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?
function save_handle($input, $type)
{
$strip_tags = 'javascript:|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup';
$allowedTags = '';
$input = strip_tags($input, $allowedTags);
$input = preg_replace("/$strip_tags/i", '', $input);
$input = htmlspecialchars($input);
// Als type gelijk is aan 0, dan is het mysql query veilig maken
if ($type == 0)
$input = mysql_real_escape_string($input);
// Als type gelijk is aan 1, dan is het uitlezen veilig maken
if ($type == 1)
{
$input = stripslashes($input);
$input = nl2br($input);
}
return $input;
}
?>
function save_handle($input, $type)
{
$strip_tags = 'javascript:|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup';
$allowedTags = '';
$input = strip_tags($input, $allowedTags);
$input = preg_replace("/$strip_tags/i", '', $input);
$input = htmlspecialchars($input);
// Als type gelijk is aan 0, dan is het mysql query veilig maken
if ($type == 0)
$input = mysql_real_escape_string($input);
// Als type gelijk is aan 1, dan is het uitlezen veilig maken
if ($type == 1)
{
$input = stripslashes($input);
$input = nl2br($input);
}
return $input;
}
?>
PHP hulp
22/12/2024 04:45:12Joren de Wit
27/10/2008 00:39:00Zo'n functie is overbodig en bovendien erg onhandig. Jij past nu bijvoorbeeld al htmlspecialchars() toe voordat je data naar de database schrijft met als gevolg dat je die data niet meer in plain text toepassingen kunt gebruiken...
De enige functie die je nodig hebt voordat je data naar de database schrijft is mysql_real_escape_string(). Bij het uitlezen uit de database gebruik je de nodige functies afhankelijk van de toepassing ervan.
HTML tonen in HTML omgeving: htmlentities(), nl2br()
HTML uitvoeren: striptags()
enz...
De enige functie die je nodig hebt voordat je data naar de database schrijft is mysql_real_escape_string(). Bij het uitlezen uit de database gebruik je de nodige functies afhankelijk van de toepassing ervan.
HTML tonen in HTML omgeving: htmlentities(), nl2br()
HTML uitvoeren: striptags()
enz...
Tikkes C
27/10/2008 08:48:00ik gebruik ook een functie om mijn inputs te checken maar doe het zo:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?PHP
function checkentry($sql) {
If(mysql_real_escape_string($sql) == TRUE) {
return $sql
} else {
return FALSE;
}
}
?>
function checkentry($sql) {
If(mysql_real_escape_string($sql) == TRUE) {
return $sql
} else {
return FALSE;
}
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Tikkes C