[GastForen Archiv Perl und CGI ordnen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Archiv - Archivierte Foren
Themen
Beiträge
Moderatoren
Letzter Beitrag

ordnen

otto
Beiträge gesamt: 69

19. Feb 2007, 09:34
Beitrag # 1 von 6
Bewertung:
(3375 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo liebes Forum,
ich habe ein Formular erstellt und über cgi eingebunden. Alles klappt gut aber leider kommen die Daten nicht in der Reihenfolge wie es in der Webtabelle ist als Mail an. Es ist ein Durcheinander hat einer ein Tipp wie man es ordnen könnte??


Für Hilfe wäre ich sehr Dankbar
otto
X

ordnen

SabineP
Beiträge gesamt: 7586

19. Feb 2007, 10:16
Beitrag # 2 von 6
Beitrag ID: #277135
Bewertung:
(3363 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Otto,

wie sieht denn das Perl-Script und das Formular aus?

Gruß Sabine


als Antwort auf: [#277126]

ordnen

otto
Beiträge gesamt: 69

19. Feb 2007, 10:35
Beitrag # 3 von 6
Beitrag ID: #277138
Bewertung:
(3358 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo SabineP,
vielen Dank

hier das cgi
___________________________________________________


#!/usr/bin/perl

&ReadParse(*FORM);

# delete for hacks alls \n \r
$FORM{'subject'} =~ s/\n|\r//g;
#patched1

my $sendmail = "/usr/sbin/sendmail -i -t";

# check all fields
my @list = split(/, /, $FORM{'required'});
for(@list) {
if ($FORM{$_} eq "") {&error;}
}

# send Mail

open(MAIL, "| $sendmail");
print MAIL "Return-Path: ".'[email protected]'."\n";
print MAIL "To: ".'[email protected]'."\n";

if ($FORM{email} =~ /^[a-z0-9\_\.\-]*\@[a-z\-\.]*\.\w+$/i) {
print MAIL "From: $FORM{email}\n";
} else {
print MAIL "From: ".'[email protected]'."\n";
}

print MAIL "Subject: $FORM{'subject'}\n\n";

foreach (keys %FORM) {
print MAIL "$_: $FORM{$_}\n";
}

close(MAIL);

# zweite Mail an den Kunden
if (("1" eq "1") && ($FORM{email} =~ /^[a-z0-9\_\.\-]+\@[a-z\-\.]+\.\w+$/i)) {

open(MAIL, "| $sendmail");
print MAIL "Return-Path: ".'[email protected]'."\n";
print MAIL "To: ".$FORM{email}."\n";
print MAIL "From: $FORM{email}\n";

print MAIL "Subject: Bestätigung $FORM{'subject'}\n\n";

foreach (keys %FORM) {
print MAIL "$_: $FORM{$_}\n";
}
close(MAIL);

}


&ok;
exit;

## SUBS

sub ok {
print "Location: $FORM{'redirect'}\n\n";
exit;
}

sub error {
print "Location: $FORM{'missing_fields_redirect'}\n\n";
exit;
}

sub ReadParse {
local (*in) = @_ if @_;
local ($i, $key, $val);

# Read in text
if (&MethGet) {
$in = $ENV{'QUERY_STRING'};
} elsif (&MethPost) {
read(STDIN,$in,$ENV{'CONTENT_LENGTH'});
}

@in = split(/[&;]/,$in);

foreach $i (0 .. $#in) {
# Convert plus's to spaces
$in[$i] =~ s/\+/ /g;

# Split into key and value.
($key, $val) = split(/=/,$in[$i],2); # splits on the first =.

# Convert %XX from hex numbers to alphanumeric
$key =~ s/%(..)/pack("c",hex($1))/ge;
$val =~ s/%(..)/pack("c",hex($1))/ge;

# Associate key and value
$in{$key} .= "\0" if (defined($in{$key})); # \0 is the multiple separator
$in{$key} .= $val;

}

return scalar(@in);
}

# MethGet
# Return true if this cgi call was using the GET request, false otherwise

sub MethGet {
return ($ENV{'REQUEST_METHOD'} eq "GET");
}

# MethPost
# Return true if this cgi call was using the POST request, false otherwise

sub MethPost {
return ($ENV{'REQUEST_METHOD'} eq "POST");
}
________________________________________________________________


und hier das Formular

http://www.bucheinband-exquisit.de/pages/testperson.html


Grüße Torsten


als Antwort auf: [#277135]

ordnen

SabineP
Beiträge gesamt: 7586

19. Feb 2007, 11:25
Beitrag # 4 von 6
Beitrag ID: #277150
Bewertung:
(3346 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Torsten,

wenn Du die Formularinhalte dieses Formulars fein sortiert in einer E-Mail erhalten möchtest,
dann klappt das nur zuverlässig, wenn Du ein Template für den Mailinhalt verwendest.

Im Template fügst Du Platzhalter für die einzelnen Formularfelder ein.

Das Perl-Script nimmt dann nach Absenden des Formulars die einzelnen Formulardaten entgegen und füllt die Platzhalter im Template mit den Formulardaten aus, anschließend wird die Mail versendet.

Das kannst Du so als Aufgabenstellung Deinem Perl-Programmierer übergeben.

Gruß Sabine


als Antwort auf: [#277138]

ordnen

otto
Beiträge gesamt: 69

19. Feb 2007, 11:37
Beitrag # 5 von 6
Beitrag ID: #277158
Bewertung:
(3342 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Sabine,
erst mal recht vielen Dank.
Ich glaube das ist mir zu kompliziert.
Dann muss es wohl so gehen.

Vielen Dank Torsten


als Antwort auf: [#277150]

ordnen

SabineP
Beiträge gesamt: 7586

19. Feb 2007, 11:53
Beitrag # 6 von 6
Beitrag ID: #277161
Bewertung:
(3337 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Torsten,

>> Ich glaube das ist mir zu kompliziert. Dann muss es wohl so gehen.

Mir ist das nicht zu kompliziert :-)
Aber ein paar Stunden brauche ich schon für so ein Script.
Schicke mir eine PM, wenn Du Hilfe brauchst.

http://www.hilfdirselbst.ch/...te+Mitteilung+senden

Gruß Sabine


als Antwort auf: [#277158]
(Dieser Beitrag wurde von SabineP am 19. Feb 2007, 11:55 geändert)
X

Aktuell

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
08.11.2022

Frankfurt, Fraport Conference Center
Dienstag, 08. Nov. 2022, 13.30 - 18.00 Uhr

Seminar

Auf der Enfocus World Tour stellen wir Ihnen gemeinsam mit Enfocus die aktuellen Highlights von Enfocus Switch und dem Impressed Workflow Server (IWS) vor. Wir präsentieren Ihnen anhand typischer Aufgabenstellungen in einem modernen Produktionsbetrieb die Möglichkeiten, die Enfocus Switch für die Automatisierung und Standardisierung von Abläufen bietet. Wir haben sowohl für Produktionsverantwortliche als auch technisch Interessierte ein spannendes Programm vorbereitet, bei dem Sie sicherlich viel Neues erfahren werden, welches Sie in Ihrem eigenen Betrieb umsetzen können. Die Veranstaltung bietet darüber hinaus eine hervorragende Möglichkeit, sich mit anderen Anwendern und Workflow-Spezialisten auszutauschen und Antworten auf konkrete Aufgabenstellungen zu erhalten, welche Sie mit Hilfe von Enfocus Switch/IWS umsetzen möchten.

Wir sind jeweils an 2 Tagen in Frankfurt, Hamburg und München vor Ort. Der erste (halbe) Tag richtet sich in erster Linie an Betriebsleiter und Produktionsverantwortliche in Druckereien - ist also weniger technisch orientiert - sondern gibt einen Überblick zu den heutigen Möglichkeiten einer automatisierten Produktion.

Der zweite Tag (Switch Anwender-Treffen) richtet sich an bestehende Switch-Anwender und Administratoren.

Anmeldung und weitere Infos: https://www.impressed.de/schulung.php?c=sDetail&sid=310

Ja

Organisator: Enfocus/Impressed

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=310

Enfocus World Tour 2022
Veranstaltungen
08.11.2022

Frankfurt, Fraport Conference Center
Dienstag, 08. Nov. 2022, 13.30 - 18.00 Uhr

Seminar

Auf der Enfocus World Tour stellen wir Ihnen gemeinsam mit Enfocus die aktuellen Highlights von Enfocus Switch und dem Impressed Workflow Server (IWS) vor. Wir präsentieren Ihnen anhand typischer Aufgabenstellungen in einem modernen Produktionsbetrieb die Möglichkeiten, die Enfocus Switch für die Automatisierung und Standardisierung von Abläufen bietet. Wir haben sowohl für Produktionsverantwortliche als auch technisch Interessierte ein spannendes Programm vorbereitet, bei dem Sie sicherlich viel Neues erfahren werden, welches Sie in Ihrem eigenen Betrieb umsetzen können. Die Veranstaltung bietet darüber hinaus eine hervorragende Möglichkeit, sich mit anderen Anwendern und Workflow-Spezialisten auszutauschen und Antworten auf konkrete Aufgabenstellungen zu erhalten, welche Sie mit Hilfe von Enfocus Switch/IWS umsetzen möchten.

Wir sind jeweils an 2 Tagen in Frankfurt, Hamburg und München vor Ort. Der erste (halbe) Tag richtet sich in erster Linie an Betriebsleiter und Produktionsverantwortliche in Druckereien - ist also weniger technisch orientiert - sondern gibt einen Überblick zu den heutigen Möglichkeiten einer automatisierten Produktion.

Der zweite Tag (Switch Anwender-Treffen) richtet sich an bestehende Switch-Anwender und Administratoren.

Anmeldung und weitere Infos: https://www.impressed.de/schulung.php?c=sDetail&sid=310

Ja

Organisator: Enfocus/Impressed

Kontaktinformation: Silvia Noack, E-Mailsnoack AT impressed DOT de

https://www.impressed.de/schulung.php?c=sDetail&sid=310

Enfocus World Tour 2022