7 Einträge, 1 Seite |
1
2
3
4
5
6
7
8
9
10
11
12
13
# ...
use strict;
use warnings;
use CGI::Carp qw(fatalsToBrowser);
#...
(my $name, my $value) = split(/=/, $pair);
# ...
my $FORM{my $name} = $value;
1
2
3
4
5
6
7
8
my %FORM = ();
foreach my $pair (@pairs) {
my ($name, $value) = split(/=/, $pair, 2);
$FORM{$name} = $value;
# ... es folgen diverse Kodierungen ...
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/usr/bin/perl -w
# Perl-Script zur Filterung des Formularfeldes $FORM{'comments'} nach Begriffen (aus Array)
# Problem: Die Zeile:
#
# my $WZaehler = ($FORM{'comments'} =~ tr/$key_word//i);
#
# ... ergibt immer true, auch wenn keine Uebereinstimmungen im Feldwert vorhanden sind!
# Aufgabe:
# Suche nach Begriffen, welche 1x enthalten sind (Platzhalter: wort.*)
# 'au' soll gefunden werden in Haus, aus, miau, miAU, blauschwarz
# i = ignoring case
# filtering of not allowed words (1 = ON/ 0 = OFF)
$use_keyfilter = 0;
@key_filterlist = ('.20six.co.uk','.netfirms.com');
# init
$keyword_found = 0;
#
# Key word filter
if($use_keyfilter) {
foreach $key_word (@key_filterlist) {
#
my $WZaehler = ($FORM{'comments'} =~ tr/$key_word//i);
#
if( $WZaehler > 0) {
$keyword_found = 1;
}
}
}
&no_permission unless !$keyword_found;
sub no_permission {
print "No permission to write this content!\n";
}
1
2
3
4
5
my $WZaehler = ($FORM{'comments'} =~ tr/$key_word//i);
#
if( $WZaehler > 0) {
$keyword_found = 1;
}
m/$key_word/i
$key_word = "(abc";
m/\Q$key_word\E/
my ($name, $value) = split(/=/, $pair);
my ($name, $value) = split(/=/, $pair, 2); # teile nur in 2 teile auf
my $FORM{my $name} = $value;
$FORM{my $name} = $value;
$FORM{undef} = $value;
7 Einträge, 1 Seite |