Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]9972[/thread]

Eingabefelder Prüfen?



<< >> 8 Einträge, 1 Seite
GwenDragon
 2007-08-06 11:39
#97551 #97551
User since
2005-01-17
14565 Artikel
Admin1
[Homepage]
user image
Unbedingt \x00 aus CGI-Daten ausfiltern!
Und die gefährlichen Backticks ` auch!
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

BlackExe
 2007-08-06 00:16
#97585 #97585
User since
2007-03-25
49 Artikel
BenutzerIn
[default_avatar]
Hallo Leute ... :_))


Ich wollte mir ein Testformular erstellen, welches die Eingabefelder prüft?
Einen Filter habe ich schon hinbekommen.
Code (perl): (dl )
1
2
$eingabe =~ s/%(..)/pack("c", hex($1))/ge; 
$eingabe =~ s/[([;<>\*\|&\$!#\(\)\[\]\{\}:'"\\]//g;

Jetzt wollte ich noch erreichen das zum Beispiel in einem "Textarea Feld",
das "Feld" auf Eingaben - und auf ein bestimmte Anzahl an Zeichen geprüft wird?
Also, wenn nix im Feld eingegeben ist - und zuviele Zeichen eingetragen wurden, kommt eine Fehlermeldung?

Auchso wenn ich einen Filter in das Formular einbaue, sodass die User Eingaben gefiltert werden, sollte ich denn noch das "HTML-Escaping" benutzen?




Gruß Steve
Glaube denen, die die Wahrheit suchen, und zweifle an denen, die sie gefunden haben.
renee
 2007-08-06 00:31
#97592 #97592
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Zum Auslesen der Formulardaten bitte Vars aus dem Modul CPAN:CGI.pm verwenden...

HTML-Escaping sollte immer verwendet werden. Dann brauchst Du auch nicht unbedingt nach diesen Zeichen zu filtern...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
BlackExe
 2007-08-06 02:48
#97599 #97599
User since
2007-03-25
49 Artikel
BenutzerIn
[default_avatar]
Hallo renee ... :_))

Danke für Deine Hilfe.
Malsehen ob ich das mit dem Modul hinbekomme?

Mache ich das so richtig mit dem HTML-Escaping?
Code (perl): (dl )
1
2
3
4
my $template = HTML::Template->new(
                     filename => './temp/tempportal.tmpl',
                     default_escape => 'HTML', # or URL
                     die_on_bad_params => 0);





Gruß Steve
Glaube denen, die die Wahrheit suchen, und zweifle an denen, die sie gefunden haben.
GwenDragon
 2007-08-06 11:58
#97603 #97603
User since
2005-01-17
14565 Artikel
Admin1
[Homepage]
user image
Ansonsten gibt es für eine konfortablere Prüfung der Eingabedaten bei CGI:
CPAN:HTML::FormEngine
CPAN:Data::FormValidator
CPAN:CGI::Validate
CPAN:HTML::FormValidator

Einfach mal anschauen. ;)
die Drachin, Gwendolyn


Unterschiedliche Perl-Versionen auf Windows (fast wie perlbrew) • Meine Perl-Artikel

BlackExe
 2007-08-06 17:29
#97628 #97628
User since
2007-03-25
49 Artikel
BenutzerIn
[default_avatar]
Hallo GwenDragon ... :_))

Danke für Deine Hilfe.

Leider nochmal eine Frage zum Filter?
Man könnte es doch für die "Text Felder",
so machen das nur Zahlen und Buchstaben eingegeben dürfen?
So würde das Problem mit den "Sonderzeichen", doch nicht mehr relevant sein, oder?

So zum Beispiel?
Code (perl): (dl )
1
2
3
unless ($name =~ m/^\w/) {
print "Falsche Eingaben!";
}



Gruß Steve
Glaube denen, die die Wahrheit suchen, und zweifle an denen, die sie gefunden haben.
renee
 2007-08-06 17:39
#97629 #97629
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Was machst Du dann mit Nachnamen wie "Müller", "Bäcker", "Gaßmann",...

Und unless ($name =~ m/^\w/) { macht nicht das was Du willst, denn hier sagst Du, dass alle Eingaben, die mit A-Z, a-z, 0-9 oder _ anfangen, falsch sind...

Du wolltest sicherlich eher unless ($name =~ m/[^\w]/) { oder unless ($name =~ m/\W/) {... Das erkennt alle Eingaben als falsch, das ein Zeichen enthält, das *nicht* zu A-Z, a-z, 0-9 oder _ gehört...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
BlackExe
 2007-08-06 17:57
#97633 #97633
User since
2007-03-25
49 Artikel
BenutzerIn
[default_avatar]
Hallo renee ... :_))

Danke für die Berichtigung, so meinte ich das.

Code: (dl )
Was machst Du dann mit Nachnamen wie "Müller", "Bäcker", "Gaßmann",...

Stimmt auch wieder ... Gut, verstehe das so langsam ... :_))

Danke nochmal an alle!




Gruß Steve
Glaube denen, die die Wahrheit suchen, und zweifle an denen, die sie gefunden haben.
<< >> 8 Einträge, 1 Seite



View all threads created 2007-08-06 00:16.