Nixwisser: problem mit htmlspecialchars

Beitrag lesen

Doch leider setzt er vor die veränderten werte " und ' also vor " und ' ein ''. Meine Frage also, warum wird dieses \ vor die geänderten Zeichen gesetzt?

while(list($key,$val) = each($_POST))

Das hat nichts mit htmlspecialchars() zu tun, dafür ist die Formularverarbeitung von PHP verantwortlich, d.h. Du bekommst die Rückstriche schon in $_POST geliefert.
Ursache dafür ist eine eingeschaltete Option namens magic_quotes_gpc. Entweder diese ausschalten oder die Funktion stripslashes() auf die Formulardaten anwenden.