Naja, die Parameter werden ja nicht rausgefiltert, bzw. solange du nicht darauf zugreifst sind im CGI Modul zwar im Speicher, aber stören sie dort?
Man könnte ja auf den Gedanken kommen (Achtung: Neurosenpflege!), dass ein Missbrauchsversuch dadurch geschieht, dass Name/Wert-Paare an das Script übermittelt werden, die es eigentlich gar nicht geben darf. So gesehen halte ich die Hash-Variante für gar nicht so schlecht.
Naja, das einzige was du damit tust ist quasi die nicht gewünschten Parameter ignorieren, aber das tust du doch auch, wenn du sie einfach ignorierst?
Umgekehrt wird schon eher ein Schuh draus, in dem man überprüft ob ungewünschte Parameter dabei sind.
Aus dem zweiten Grund hatte ich sowas ähnliches auch mal eingesetzt, aber wieder verworfen, da es praktischer war an Ort und Stelle entsprechend zu reagieren (z.b. mit my $value = CGI::param('name') || '') um z.b. auch Defaultwerte wenn nötig zuweisen zu können.
Was aber tust du mit Eingabefeldern, die keine Successful controls sind und somit nicht übermittelt werden? Ich könnte mir durchaus vorstellen, dass hier in dem ein oder anderen Fall trotzdem eine Scriptvariable gebraucht wird.
Das versteh ich nicht. Ich benutze doch oben ein Variabel?
Struppi.
Javascript ist toll (Perl auch!)