Menu

 

Feedback dynamisch ausdrücken

Nehmen wir an, möchten wir folgendes mit dem Skript ausdrücken; Die Email Adresse von Franz Muster lautet franz@muster.ch Der Skript sollte Franz Muster und franz@muster.ch aus dem Formular herauslesen.

#!/usr/bin/perl
print "Content-type: text/html\n\n";

&get_values();
#Zuweisung von $form an lokale Variablen
$vname=$form{vname};
$fname=$form{fname};
$email=$form{email};
print qq~
<html><h1>
Die email Adresse von $vname $fname lautet $email
</h1></html>
~;

Die Daten werden in der Variable $form, durch die Routine get_values, gespeichert. Mit $form{feld} können Sie den Wert eines Formularfeldes herauslesen. Feld hängt vom Formular ab (Feldname). Die Daten werden dekodiert und werden an $vname, $fname und $email zugewiesen. Mit dem Symbol # kann man Kommentare in das CGI-Skript einfügen, um die Lesbarkeit zu erhöhen.

Wenn alles richtig programmiert wurde, dann sollte das Programm folgendes ausgeben: den Vornamen, den Familiennamen und die Email Adresse.

(Die Email Adresse von Franz Muster lautet franz@muster.ch)

Das Programm finden Sie hier:

#!/usr/bin/perl
print "Content-type: text/html\n\n";

&get_values();
# Die Routine speichert die Werte in $form{Feldname}
# Wir speichern die Daten in Variablen, die für die Ausgabe
# benutzt werden.
$vname=$form{vname};
$fname=$form{fname};
$email=$form{email};
print qq~
<html><h1>
Die email Adresse von $vname $fname lautet $email
</h1></html>
~;
# Routine, um die gesendete Daten zu dekodieren

sub get_values {
if ($ENV{ 'REQUEST_METHOD' } eq 'POST' ) {
read(STDIN, $buffer, $ENV{ 'CONTENT_LENGTH' });
} else {
$buffer = $ENV{ 'QUERY_STRING' };
}
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$name =~ tr/+/ /;
$name =~ s/%([a-fA-F0- 9 ][a-fA-F0- 9 ])/pack( "C" , hex($ 1 ))/eg;
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0- 9 ][a-fA-F0- 9 ])/pack( "C" , hex($ 1 ))/eg;
$form{$name} = $value;
}
}

 

 

 

 
   Anzeigen

Navigation:    Webdesign - Programmierung - Web Grafiken - Software Guides - Tools - Templates - Schriftarten - Seminare - IT News
Partner:   Template OK - PCopen - SITEopen - PCopen Schweiz - HTMLopen Schweiz - VirtualUniversity.ch - WEB-SET.com - YesMMS - Job und Karriere