htdocs/cgi-bin/send
changeset 11 bd470c2d0a0a
parent 10 0e2b0e64bc21
child 14 5a256b08fdc6
--- a/htdocs/cgi-bin/send	Wed Feb 06 13:22:28 2013 +0100
+++ b/htdocs/cgi-bin/send	Thu Feb 07 11:45:50 2013 +0100
@@ -10,16 +10,19 @@
 use Cwd;
 use FindBin qw($RealBin);
 use Data::UUID;
-
+my $requ;
 my $cgi = new CGI;
 my $tt = Template->new({INCLUDE_PATH => "$RealBin/../templates"})
    or die "Can't create template object: $Template::ERROR\n";
 
+my $reset='<input type="reset">';
 if (!$cgi->param("_submit")) {
 
    print CGI::header(-type => "text/html", -charset => "utf-8");
 
-   $tt->process("index.html");
+   $tt->process("index.html",{
+         reset => $reset,
+   });
    exit 0;
 }
 
@@ -27,49 +30,59 @@
 # anzeigen
 
 # CHECK
-
-   my (%error, $ffarbe, $ofarbe, $mfarbe, $rfarbe);
-   if ($cgi->param("firma") eq ''){
-      $error{firma} = "missing company";
-      $ffarbe='rot';
-   }
-   else{$ffarbe='black'}
-   if ($cgi->param("mail") eq ''){
-      $error{mail}= "missing mail";
-      $mfarbe='red';
-   }
-   elsif ($cgi->param("mail") !~ m/^[a-zA-Z0-9\.-_]*\@\w+\.\w{2,}/){
-      $error{mail}="no valid mail";
-      $mfarbe='red';
-   }
-   else{$mfarbe='black'}
-   if ($cgi->param("ort") eq ''){
-      $error{ort}= "missing city";
-      $ofarbe='red';
-   }
-   else{$ofarbe='black'}
-   if ($cgi->param("req") eq ''){
-      $error{req}="missing request";
-      $rfarbe='red';
-   }
-   else{$rfarbe='black'}
-   if (%error) {
-      print CGI::header(-type => "text/html", -charset => "utf-8");
-      $tt->process("index.html", {
-            dump => $cgi->Dump(),
-            now => time(),
-            error => \%error,
-            firma => $cgi->param("firma"),
-            ffarbe=>$ffarbe,
-            mail => $cgi->param("mail"),
-            mfarbe=>$mfarbe,
-            ort => $cgi->param("ort"),
-            ofarbe=>$ofarbe,
-            req => $cgi->param("req"),
-            rfarbe=>$rfarbe,
-      }) or die $tt->error();
-      exit 0;
-   }
+my @req =$cgi->param("req");
+foreach (@req){
+   s/\r\n/\<n\>/g;
+}
+$requ=join(" ",@req);
+open (OUT,">req");
+print OUT "@req";
+close OUT;
+open (IN,"<req");
+my @req2=<IN>;
+close IN;
+my (%error, $ffarbe, $ofarbe, $mfarbe, $rfarbe);
+if ($cgi->param("firma") eq ''){
+   $error{firma} = "missing company";
+   $ffarbe='red';
+}
+else{$ffarbe='black'}
+if ($cgi->param("mail") eq ''){
+   $error{mail}= "missing mail";
+   $mfarbe='red';
+}
+elsif ($cgi->param("mail") !~ m/^[a-zA-Z0-9\.-_]*\@\w+\.\w{2,}/){
+   $error{mail}="no valid mail";
+   $mfarbe='red';
+}
+else{$mfarbe='black'}
+if ($cgi->param("ort") eq ''){
+   $error{ort}= "missing city";
+   $ofarbe='red';
+}
+else{$ofarbe='black'}
+if ($cgi->param("req") eq ''){
+   $error{req}="missing request";
+   $rfarbe='red';
+}
+else{$rfarbe='black'}
+if (%error) {
+   print CGI::header(-type => "text/html", -charset => "utf-8");
+   $tt->process("index.html", {
+         dump => $cgi->Dump(),
+         now => time(),
+         error => \%error,
+         firma => $cgi->param("firma"),
+         ffarbe=>$ffarbe,
+         mail => $cgi->param("mail"),
+         mfarbe=>$mfarbe,
+         ort => $cgi->param("ort"),
+         ofarbe=>$ofarbe,
+         req => $cgi->param("req"),
+         rfarbe=>$rfarbe,
+   }) or die $tt->error();
+   exit 0;
+}
 
 # alles ist ok
 
@@ -78,20 +91,19 @@
 $ub=new Data::UUID;
 $uid=$ub->create_str;
 open (UUID, ">>UUID") or die "$!\n";
-print UUID $uid;
+print UUID "$uid\n";
 close UUID;
 #######################
 # Auswerten der Daten #
 # des Web-Formulars   #
 #######################
-
 my %field = (
       firma => $cgi->param('firma'),
       mail => $cgi->param('mail'),
       ort => $cgi->param('ort'),
-      req => $cgi->param('req'),
+#      req => $cgi->param('req'),
 );
-
+$"=" .:. ";
 foreach (values %field) {
    s/\&/\<26\>/g;
    s/\=/\<3D\>/g;
@@ -102,8 +114,10 @@
 my $test='test';
 open( TEST,"> $test" ) or die "Kann $test nicht öffnen: $!\n";
 foreach (sort keys %field) {
-   print "$_: $field{$_}\n";
+   print TEST "$_: $field{$_}\n";
 }
+print TEST "@req\n";
+print TEST " .:. @req2\n";
 close TEST;
 my @Feldnamen = $cgi->param();
 
@@ -120,13 +134,14 @@
 $req = HTTP::Request->new( "POST", $url );
 $req->header( 'Content-Type' => 'text/html' );
 $req->accept_decodable;
-$req->content("ID=$uid&Name=$field{firma}&Mail=$field{mail}&Test=$field{ort}&req=$field{req}");
+$req->content("id=$uid&firma=$field{firma}&mail=$field{mail}&ort=$field{ort}&req=$requ");
 $ua->request($req);
 
 print CGI::header(-type => "text/html", -charset => "utf-8");
 $tt->process("wait.html",{
       uid => $uid
    }) or die $tt->error;
+exit 0;
 
 unlink grep { -M > 3/(24*36) } glob("/var/www/tmp/*");