!!! Listing 1
URL mit vielen und kryptischen Parametern
http://www.vielzulang.de/pfad/start/cgi/gast.sh?p_a.txt=gt&doc=IP/00/442|9|wohin&lg=EN&x=y&a=z
!!! Listing 2
1
2
3 Der direkte Draht zu iX
4
5
6
7 Durchwahl | Redakteur/in
8 |
-387 | post | Redaktion allgemein
9
10
11
12 |
-386 | js | Jürgen Seeger
13 |
14
15
!!! Listing 3
1 #!/usr/local/bin/tclsh
2
3 # Script, das aus einer Telefonliste Zeilen herausfischt
4
5 # Suchstring beginnt nach /durchwahl/ (11 Zeichen)
6
7 set Suchstring [string range $env(REQUEST_URI) 11 end]
8
9 # Umwandlung der relevanten Sonderzeichen.
10 # Browser liefern unterschiedliche Daten
11 # (Mac nicht vergessen - das sinf die \xxx-Zeilen).
12
13 regsub -all "ü" $Suchstring "ü" Suchstring
14 regsub -all "%FC" $Suchstring "ü" Suchstring
15 regsub -all "\237" $Suchstring "ü" Suchstring
16 regsub -all "é" $Suchstring "é" Suchstring
17 regsub -all "%E9" $Suchstring "é" Suchstring
18 regsub -all "\216" $Suchstring "é" Suchstring
19 regsub -all "Andre" $Suchstring "André" Suchstring
20 regsub -all "Juergen" $Suchstring "Jürgen" Suchstring
21 regsub -all "\232" $Suchstring {\ö} Suchstring
22
23 # Die Ausgabe erfolgt wie bei einem CGI-Script
24
25 puts "Content-type: text/html"
26 puts ""
27 puts ""
28 puts "Suche nach: $Suchstring"
29 puts ""
30
31 # mit grep wird die Tabelle durchsucht
32
33 if { [catch {exec /bin/grep $Suchstring ../pub/egi/index.html} Zeilen] == 0} {
34 # liefert grep ein Ergebnis, wird dieses angezeigt
35
36 puts "Suche nach $Suchstring
"
37 puts ""
38 puts "Durchwahl | user"
39 puts $Zeilen
40 puts " |
"
41 } else {
42
43 # Pech, kein Ergebnis
44 puts ""
45
46 # enthaelt der Suchstring eine Nummer?
47 if {[regexp {^[0-9]+$} $Suchstring]} {
48 puts "Durchwahl $Suchstring nicht benutzt!"
49 } else {
50 puts "Hmm, wen meinen Sie mit '$Suchstring' ?"
51 }
52 puts "Unsere aktuellen Durchwahlnummern:
"
53
54 # die ix-Liste ist kurz, deshalb zeigen wir sie ganz...
55 puts "
"
56 puts [exec /bin/grep {\} ../egi/index.html]
57 puts "
"
58 }
59
60 puts ""
61 puts ""