hallo allerseits,
ich arbeite gerade am login/register für mein website und stoße nun zum ersten mal auf das problem wie ich usereingaben nun richtig verarbeite.
ich bin durch googlen schon auf die funktionen real_escape_string und htmlspecialchars gekommen. nun hab ich dazu noch zwei fragen, bei denen ich durch google mehr verwirrt wurde als entwirrt.
1) ich sehe immer mal wieder code wo gar nicht mit htmlspecialchars gearbeitet wurde sondern stattdessen irgendwelche string-replace oder string-lösch funktionen selbst erstellt wurden. was ist von solchen lösungen zu halten? soweit ich das eigentlich verstanden habe sollte mich htmlspecialchars doch ausreichend vor schadcode schützen, oder?
2) ich hatte mir gedacht, es wäre doch sinnvoll einfach generell gleich als erstes meine variable im postarray mit diesen beiden funktionen oder zumindest nur mit htmlspecialchars zu bearbeiten und dann nur noch die veränderte variable zu nutzen. also so:
oder so:
jetzt weiß ich nicht, wie sinnvoll das ist sowas zu machen. kann es irgendwo zu problemen kommen? soll man z.b. real_escape_string nur bei variablen anwenden die in die DB geschrieben werden und diese variable dann auch nur dafür verwenden?
grüße
dingsda
ich arbeite gerade am login/register für mein website und stoße nun zum ersten mal auf das problem wie ich usereingaben nun richtig verarbeite.
ich bin durch googlen schon auf die funktionen real_escape_string und htmlspecialchars gekommen. nun hab ich dazu noch zwei fragen, bei denen ich durch google mehr verwirrt wurde als entwirrt.
1) ich sehe immer mal wieder code wo gar nicht mit htmlspecialchars gearbeitet wurde sondern stattdessen irgendwelche string-replace oder string-lösch funktionen selbst erstellt wurden. was ist von solchen lösungen zu halten? soweit ich das eigentlich verstanden habe sollte mich htmlspecialchars doch ausreichend vor schadcode schützen, oder?
2) ich hatte mir gedacht, es wäre doch sinnvoll einfach generell gleich als erstes meine variable im postarray mit diesen beiden funktionen oder zumindest nur mit htmlspecialchars zu bearbeiten und dann nur noch die veränderte variable zu nutzen. also so:
PHP-Code:
$variable = htmlspecialchars($_POST ['usereingabe']);
// code der $variable nutzt oder mit echo ausgibt.
PHP-Code:
$variable = $db -> real_escape_string(htmlspecialchars($_POST ['usereingabe']));
// code der $viariable nutzt, mit echo ausgibt oder für eine Datenbankquery nutzt.
grüße
dingsda
Kommentar