Werte übergeben
Luis
- cgi
0 Gero Takke0 pit0 Danke
Luis
Hallo,
nachdem meine Forum.pl fertig ist, übergebe ich die Daten mit "exec" einer forummail.pl, damit die E Mails versendet werden.
Ich lese die Daten mit "@ARGV" ein:
#!/usr/bin/perl
####################################
$basedir = $ARGV[0];
$eingetragen = $ARGV[1];
$mailprog = $ARGV[2];
$host = $ARGV[3];
$subject = $ARGV[4];
$email = $ARGV[5];
$num = $ARGV[6];
$origsubject = $ARGV[7];
$name = $ARGV[8];
$title = $ARGV[9];
$long_date = $ARGV[10];
$body = $ARGV[11];
$werbung = $ARGV[12];
$mesgdir = $ARGV[13];
$ext = $ARGV[14];
$mesgfile = $ARGV[15];
###E MAILS FUER Forum ABSENDEN
open(EMAIL,"$basedir/$eingetragen") die $!;
@recipient = <EMAIL>;
close(EMAIL);
# Now send mail to $recipient
foreach $recipient (@recipient) {
open (MAIL, "$mailprog $recipient") die "Can't open $mailprog!\n";
print MAIL "From:$host\n";
print MAIL "To: Mitglieder\n";
print MAIL "Subject:$subject (Nr. $num) \n";
print MAIL "Reply-To:(Bitte direkt im Forum antworten)$email\n\n";
und so weiter...
###########################################
das funktioniert aber nur so lange, wie kein Leerzeichen in den übergebenen Werten ist, dann "verzählt" sich @ARGV
Wie kann ich das ändern?
Vielen Dank für ev. Antworten
Luis
Hi Luis
das hatten wir hier schon mal:
<../../sfarchiv/1999_3/t06227.htm>
bis dann
gero
Hallo,
nachdem meine Forum.pl fertig ist, übergebe ich die Daten mit "exec" einer forummail.pl, damit die E Mails versendet werden.
Ich lese die Daten mit "@ARGV" ein:
das funktioniert aber nur so lange, wie kein Leerzeichen in den übergebenen Werten ist, dann "verzählt" sich @ARGV
Klar, denn jedes Leerzeichen bedeutet einen neuen Eintrag in @ARGV
Wie kann ich das ändern?
Auf der Seite, die die Werte übergibt folgende Sonderzeichen umwandeln (mit Javascript).
Leerzeichen irgendein umständliches Zeichen z.B. § und dann mit split wieder entfernen.
= %3D
% %25
" %22
' %27
usw.
Einfach die Zeichen in eine Suchmaschine Eingeben, und den angezeigten Querystring analysieren.
Chiau
Danke, ich habs gefunden. Wenn ich die zu übergebenden Variablen in Hochkommas stelle, machen die Leerzeichen in den Variablen keine Probleme mehr.
fork "/usr/bin/perl neuesforum_mail.pl '$basedir'";