Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]214[/thread]

Formular wird per Mail verschickt, aber ohne Inhal



<< |< 1 2 >| >> 18 Einträge, 2 Seiten
piero
 2004-03-30 12:56
#1734 #1734
User since
2004-03-03
98 Artikel
BenutzerIn
[default_avatar]
Hallo,
habe eine Sendmail-Funktion eingebaut. Das Formular wird auch verschickt, aber ohne Inhalt. Habe mir dabei die Dokumentation aus dem Wiki durchgelesen, aber leider ohne Erfolg.
Könnte mir jemand vielleicht bitte sagen, wo der Fehler liegt?

Vielen Dank im Voraus.

--
Gruß
Piero

Hier kommt der Code:
Code: (dl )
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
#!/usr/bin/perl -w                                               
                                                               
use MIME::Base64;                                                
use strict;                                                      
use warnings;                                                    
use CGI;                                                        
use CGI::Carp qw(fatalsToBrowser);                              
                                                               
open(M, "|/usr/sbin/sendmail -t");                              
                                                               
print M "To: Piero <gior\@imap>\n";                              
                                                               
print M "Subject: Test\n";                                      
                                                               
my ($Feld, $Name, $Wert);                                        
my %Formular;                                                    
                                                               
my $cgi=CGI->new();                                              
print $cgi->header(-type=>'text/html');                          
%Formular=$cgi->Vars();                                          
                                                               
#print "Nicht formatierte Ausgabe:\n\n";                        
print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">', "\n";
print "<html><head><title>CGI-Feedback</title></head>\n";    
print "<body><h1>Kundenerfassung</h1>\n";                    
print "<p><b>Art:</b> $Formular{ART}";                        
print "<b>                                                    
mular{NUMMER}\n";                                            
print "<p><b>Kurzname:</b> $Formular{KURZNAME}</p>\n";        
print "<p><b>Name1:</b> $Formular{NAME1}</p>\n";              
print "<p><b>Name2:</b> $Formular{NAME2}</p>\n";              
print "<p><b>Name3:</b> $Formular{NAME3}</p>\n";              
print "<p><b>Straße:</b> $Formular{STRASSE}</p>\n";          
print "<p><b>Land:</b> $Formular{LAND}</p>\n";                
print "<p><b>PLZ:</b> $Formular{PLZ}</p>\n";                  
print "<p><b>Ort:</b> $Formular{ORT}</p>\n";                  
print "<p><b>Postfach:</b> $Formular{POSTFACH}</p>\n";        
print "<p><b>Postfach-Plz:</b> $Formular{POSTFACH_PLZ}</p>\n";
print "<p><b>Telefon:</b> $Formular{TELEFON}</p>\n";          
print "<p><b>Fax:</b> $Formular{FAX}</p>\n";                  
print "<p><b>Mobil:</b> $Formular{MOBIL}</p>\n";              
print "<p><b>Klassifizierung:</b> $Formular{Klasse}</p>\n";  
print "<p><b>MwSt:</b> $Formular{MWST}</p>\n";                
print "<p><b>UST_IDENT_NR:</b> $Formular{UST_IDENT_NR}</p>\n";
print "<p><b>Abteilung1:</b> $Formular{Abteilung1}</p>\n";    
print "<p><b>Abteilung2:</b> $Formular{Abteilung2}</p>\n";    
print "<p><b>Abteilung3:</b> $Formular{Abteilung3}</p>\n";                  
print "<p><b>VK:</b> $Formular{VK}</p>\n";                                  
print "<p><b>Lieferbedingung:</b> $Formular{LIEFERBEDINGUNG}</p>\n";        
print "<p><b>Zahlungsbedingungen:</b> $Formular{ZAHLUNGSBEDINGUNGEN}</p>\n";
print "<p><b>Kreditlimit:</b> $Formular{KREDITLIMIT}</p>\n";                
print "<p><b>Ansprech_Name:</b> $Formular{ANSPRECH_NAME}</p>\n";            
print "<p><b>Ansprech_Vorname:</b> $Formular{ANSPRECH_VORNAME}</p>\n";      
print "<p><b>Ansprch_Abt:</b> $Formular{ANSPRECH_ABT}</p>\n";              
print "<p><b>Ansprech_Funktion:</b> $Formular{ANSPRECH_FUNKT}</p>\n";      
print "<p><b>Vertriebsgebiet:</b> $Formular{VERTRIEBSGEBIET}</p>\n";        
print "<p><b>Produktzielgruppe:</b> $Formular{PRODUKTZIELGRUPPE}</p>\n";    
print "<p><b>Verfasser:</b> $Formular{VERFASSER}</p>\n";                    
print "<p><b>Bemerkung:</b> $Formular{BEMERKUNGEN}</p>\n";                  
print "---------------------------------------------------------------------
----------------------------------------------------------------------------
---\n\n";                                                                  
                                                                           
#print "Formatierte Ausgabe:\n\n";                                          
print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">', "\n";          
print "<html><head><title>CGI-Feedback</title></head>\n";                  
print "<body><h1>Kundenerfassung</h1>\n";                                  
print "$Formular{KURZNAME}<br />";                                          
print "$Formular{NAME1}<br />";                                            
print "$Formular{NAME2}<br />";      
print "$Formular{NAME3}<br />";      
print "$Formular{STRASSE}<br />";    
print "$Formular{LAND}<br />";        
print "$Formular{PLZ}<br />";        
print "$Formular{ORT}<br />";        
print "$Formular{POSTFACH}<br />";    
print "$Formular{POSTFACH_PLZ}<br />";
                                     
close(M);


edit renee: schließendes [code]-Tag eingefügt...\n\n

<!--EDIT|renee|1080638931-->
jan
 2004-03-30 13:05
#1735 #1735
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
um in die mail zu schreiben, müsstest du print M "irgendwas" benutzen, nicht einfach nur print (es sei denn, du würdest vorher ein select(M); ausführen).
piero
 2004-03-30 13:23
#1736 #1736
User since
2004-03-03
98 Artikel
BenutzerIn
[default_avatar]
Hallo,
ich möchte gerne, dass er mir die ausgefüllten Formularfelder zurückgibt.

Wäre es dann so richtig?

print M "<p><b>Kurzname:</b> $Formular{KURZNAME}</p>\n";

Weil so passiert gar nix.

--
Gruß
Piero
renee
 2004-03-30 13:26
#1737 #1737
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Sollen die Daten im Browser angezeigt werden, oder per Mail verschickt werden??
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
piero
 2004-03-30 13:33
#1738 #1738
User since
2004-03-03
98 Artikel
BenutzerIn
[default_avatar]
Hallo,
die Daten sollen per Mail geschickt werden.
Am besten wäre, wenn man auf dem Button "Senden" klickt, dass das Mail mit den ausgefüllten Feldern versendet wird, im Browser, dann steht "E-Mail erfolgreich gesendet" und es dann wieder im Formular zurücksprint, für eine neue Eingabe.
format_c
 2004-03-30 13:33
#1739 #1739
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
So schreibt er die Ausgabe in das FileHandle M was auf die Pipe an sendmail zeigt.
Die Ausgabe geht somit nicht an den Browser (FileHandle STDOUT).

Du musst die Ausgabe doppelt machen wenn du es einmal als Mail schicken willst und einmalan den VBrowser
Code: (dl )
1
2
3
4
# an den Browser
print "<ichbineinhtmlcode>lalala</ichbineinhtmlcode>";
# an sendmail
print M "<ichbineinhtmlcode>lalala</ichbineinhtmlcode>";


Gruß Alex
piero
 2004-03-30 13:37
#1740 #1740
User since
2004-03-03
98 Artikel
BenutzerIn
[default_avatar]
Hallo,
ja wie gesagt, das Mail wird wird versendet, aber ohne Inhalt kommt es an.
renee
 2004-03-30 13:43
#1741 #1741
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Dann muss es überall print M ... heißen und dort wo print M "Subject: Betreff\n"; steht, muss es print M "Subject: Betreff\n\n"; heißen...

und ganz zum Schluss noch ein print $cgi->h2('Email wurde versendet' );\n\n

<!--EDIT|renee|1080639968-->
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
jan
 2004-03-30 13:45
#1742 #1742
User since
2003-08-04
2536 Artikel
ModeratorIn
[Homepage] [default_avatar]
ja, du musst die ausgabe einfach mit print M "meine ausgabe\n"; ausgeben. das wird dann entsprechend in die mail geschrieben (vergiss nicht, einen html-content-type im header mit anzugeben, sonst siehst du nur html-code, nicht mit html-formatierte ausgabe in der email). dann gibst du dem browser noch ein
print "Danke, email wurde versandt.";
und deinen sonstigen html-code zurück und der ist auch zufrieden.
format_c
 2004-03-30 13:54
#1743 #1743
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Richtig. Das hatte ich ja ganz vergessen. Eine Leerzeile (vie renee schreibt) trennt den Mail-Header vom Body.

Gruß Alex
<< |< 1 2 >| >> 18 Einträge, 2 Seiten



View all threads created 2004-03-30 12:56.