Toon posts:

[PERL] Bestand als autoreply met formscript ?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallowie,

Ik zit met een "probleempje" waar ik niet uit kom.

Ik heb een mailscriptje gemaakt maar wil dat er een bestand (word document) naar de afzender als autoreply verstuurd wordt. Die moet n.l. uitgeprint en ondertekend worden.

(men vult uiteraard op de site gegevens in dmv een form)

ik krijg het dus maar niet voor elkaar om iets als attachement mee te sturen. :(

kan iemand mij helpen ?

Hieronder staat het script

--------------------------------------------------
code:
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#!/usr/bin/perl

# Dit is het bestand wat de layout bevat (header en de footer)
require "contact.setup";

# het mail  programma wat gebruikt wordt
$mailprogram = "/usr/sbin/sendmail -t";

# de verplichte velden
@required = ("naam","email");

# email adres van de ontvanger
$youremail = "naam\@domein.nl";

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


# checked de niet ingevulde velden
foreach $check(@required) {
      unless ($FORM{$check}) {

print "Content-type: text/html\n\n";
print "$Header\n";
print "\n";
print "U bent vergeten om uw $check in te vullen.<BR>Ga terug en probeer opnieuw.\n";
print "\n";
print "$Footer\n";
exit;
      }
}


# checked voor een niet goed ingevuld email adres
if ($FORM{'email'}) {
      unless ($FORM{'email'} =~ /\w+@\w+.\w+/) {
print "Content-type: text/html\n\n";
print "$Header\n";
print "\n";
print "Het email adres, $FORM{'email'}, dat u heeft ingevuld is niet juist.\n";
print "\n";
print "$Footer\n";
exit;
      }
}






# verstuurd de mail naar het email adres wat bovin is aangegeven
open (MAIL,"|$mailprogram");
print MAIL "To: $youremail\n";
print MAIL "From: $FORM{'email'}\n";
print MAIL "Subject: $FORM{'subject'} Informatie Aanvraag\n";
print MAIL "Content-type: text/html\n\n";
print MAIL "Hier komt het mailtje met de ingevulde velden\n\n";
close MAIL;


# verstuurd de mail naar diegene die het formulier heeft ingevuld
if ($FORM{'response'} && $FORM{'email'}) {
      open (RESPONSE, $FORM{'response'});
      @response = <RESPONSE>;
      close(RESPONSE);
      open (MAIL,"|$mailprogram");
      print MAIL "To: $FORM{'email'}\n";
      print MAIL "From: $youremail\n";
      print MAIL "Subject: $FORM{'subject'} RE: Informatie Aanvraag\n";
      foreach $line (@response) {
            print MAIL "$line";
      }
print MAIL "Content-type: text/html\n\n";
print MAIL "Vanaf hier gaat er autyomatisch een mail naar de verstuurder van het formulier\n";
close MAIL;
}


# dit is de content die weergegeven wordt na het versturen op de site
print "Content-type: text/html\n\n";
print "$Header\n";
print "Dit is de pagina die na het versturen tevoorschijn komt\n";
print "wij nemen zo spoedig mogelijk contact met u op.</font>\n";
print "\n";
print "$Footer\n";

exit;

Verwijderd

Ik zou even naar deze module kijken misschien dat dit je verder helpt.

succes

http://www.perl.com/pub/r/505