hilfdirselbst.ch
Facebook Twitter gamper-media

"Geht nicht" ist keine gültige Fehlermeldung!

« « 1 2 » »  
pat87
Beiträge: 581
26. Apr 2004, 18:01
Beitrag #1 von 17
Bewertung:
(5428 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


hallo zusammen,

ich verwenda dieses script zum versenden von formulardaten. meine frage: kann ich es so einstellen, dass der absender aus dem formular-feld 'e-mail' verwendet wird?


#!/usr/bin/perl

# -------> SMTP-Programm zum Versenden der Mail:
$Sendmail_Prog = "/usr/lib/sendmail";

# -------> Modul f¸r CGI-Scripts einbinden:
use CGI;

# -------> Modul f¸r CGI-Scripts zum Einlesen der Formulardaten anwenden:
$query = new CGI;
@names = $query->param;

# -------> interne Daten aus den erwarteten hidden-Feldern auslesen:
$delimiter = $query->param('delimiter'); # ---> Begrenzerzeichen zwischen name und value
$mailto = $query->param('mailto'); # ---> Empf‰ngeradresse
$returnhtml = $query->param('return'); # ---> URL f¸r Dankeseite
$subject = $query->param('subject'); # ---> E-Mail-Subject


# -------> Text der E-Mail aus den Formulardaten ermitteln:
$mailtext = "";
foreach(@names) {
$name = $_;
@values = "";
@values = $query->param($name);
if($name ne "mailto" && $name ne "return" && $name ne "subject" && $name ne "delimiter") {
foreach $value (@values) {
$mailtext = $mailtext.$name;
$mailtext = $mailtext.$delimiter;
$mailtext = $mailtext.$value."\n";
}
}
}

# -------> E-Mail versenden:
open(MAIL,"|$Sendmail_Prog -t") || print STDERR "Mailprogramm konnte nicht gestartet werden\n";
print MAIL "To: admin\@pat87.ch\n";
print MAIL "From: formular\@pat87.ch\n";
print MAIL "Subject: $subject\n\n";
print MAIL "$mailtext\n";
close(MAIL);

# -------> Dankeseite an Browser senden:
print "Location: $returnhtml\n\n";

ich wäre für jede antwort froh...

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/ Top
 
X
SabineP  M 
Beiträge: 7586
26. Apr 2004, 18:43
Beitrag #2 von 17
Beitrag ID: #81989
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


Hallo pat,

1. nenne das Formularfeld vorsichtshalber "email"

In der Variable $absender steht dann der Inhalt des Formularfeldes mit dem Namen "email"

2. In diesem Teil des Scriptes $absender noch hinzufügen:

# -------> interne Daten aus den erwarteten hidden-Feldern auslesen:
$delimiter = $query->param('delimiter'); # ---> Begrenzerzeichen zwischen name und value
$returnhtml = $query->param('return'); # ---> URL für Dankeseite
$subject = $query->param('subject'); # ---> E-Mail-Subject
$absender = $query->param('email'); # ---> Absender


3. In diesem Teil des Scriptes in die From-Zeile die Variable $absender einfügen:

# -------> E-Mail versenden:
open(MAIL,"|$Sendmail_Prog -t") || print STDERR "Mailprogramm konnte nicht gestartet werden\n";
print MAIL "To: admin\@pat87.ch\n";
print MAIL "From: $absender\n";
print MAIL "Subject: $subject\n\n";
print MAIL "$mailtext\n";
close(MAIL);

Gruß Sabine
als Antwort auf: [#81984] Top
 
pat87
Beiträge: 581
26. Apr 2004, 21:10
Beitrag #3 von 17
Beitrag ID: #82033
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


funktioniert tip top.

noch was: wie und wo kann ich eine feldeingabe erzwingen?
im formular?
im cgi-script?


mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/
als Antwort auf: [#81984] Top
 
SabineP  M 
Beiträge: 7586
26. Apr 2004, 22:51
Beitrag #4 von 17
Beitrag ID: #82057
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


Am einfachsten geht´s mit Javascript im Formular.
Hier ein Beispiel für das Formularfeld mit dem Namen "email":

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Formular</title>

<script language="javascript" type="text/javascript">

function pruef()
{
if(document.anfrageformular.email.value == ""){
alert("Geben Sie bitte Ihre E-Mail-Adresse ein!");
document.anfrageformular.email.focus();
return false;
}
}

</script>
</head>
<body>
<form method="POST" action="mail.pl" name="anfrageformular" onSubmit="return pruef()">
<input type="text" name="email" size="30" value="">
<input type="submit">
</form>
</body>
</html>

Gruß Sabine
als Antwort auf: [#81984] Top
 
pat87
Beiträge: 581
1. Mai 2004, 16:01
Beitrag #5 von 17
Beitrag ID: #83062
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


kann ich denn mit diesem script auch 2 oder 3 feld-eingaben erzwingen?


mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/
als Antwort auf: [#81984] Top
 
SabineP  M 
Beiträge: 7586
1. Mai 2004, 16:18
Beitrag #6 von 17
Beitrag ID: #83065
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


Ja natürlich lassen sich auch mehrere Felder prüfen.
Hier noch ein Feld mit dem Namen "name"

function pruef()
{

if(document.anfrageformular.email.value == ""){
alert("Geben Sie bitte Ihre E-Mail-Adresse ein!");
document.anfrageformular.email.focus();
return false;
}

if(document.anfrageformular.name.value == ""){
alert("Geben Sie bitte Ihren Namen ein!");
document.anfrageformular.name.focus();
return false;
}

}

Gruß Sabine
als Antwort auf: [#81984] Top
 
pat87
Beiträge: 581
8. Mai 2004, 14:02
Beitrag #7 von 17
Beitrag ID: #84389
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


das hat jetzt nicht direkt mit dem absender zu tun, aber wie kann ich es einstellen, dass es bei jedem mail, das das formular schreibt so heisst:

<name> mit der mail-adresse <email> hat ihnen folgende nachricht gesendet:
<nachricht>

wobei die in den klammern vorhandenen werte aus dem formular gelesen werden...

z.b.

patrick buff mit der mailadresse admin@pat87.ch hat ihnen folgende nachricht gesendet:
hallo patrick, tolle homepage...

natürlich wäre es auch praktisch, dass ich trotzdem als absender die mail-adresse habe (einfachere rückantwort...)

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/
als Antwort auf: [#81984] Top
 
SabineP  M 
Beiträge: 7586
9. Mai 2004, 01:05
Beitrag #8 von 17
Beitrag ID: #84459
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


Hi Pat

folgende Abschnitte im Script ändern:

# -------> interne Daten aus den erwarteten hidden-Feldern auslesen:
$delimiter = $query->param('delimiter'); # ---> Begrenzerzeichen zwischen name und value
$returnhtml = $query->param('return'); # ---> URL für Dankeseite
$subject = $query->param('subject'); # ---> E-Mail-Subject
$absender = $query->param('email'); # ---> E-Mail des Absenders
$name = $query->param('name'); # ---> Name des Absenders

# -------> Text der E-Mail aus den Formulardaten ermitteln:
$mailtext = "$name mit der mail-adresse $absender hat ihnen folgende nachricht gesendet:\n\n";


Gruß Sabine
als Antwort auf: [#81984]
(Dieser Beitrag wurde von SabineP am 9. Mai 2004, 01:08 geändert)
Top
 
pat87
Beiträge: 581
25. Mai 2004, 19:07
Beitrag #9 von 17
Beitrag ID: #87204
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


und wie kann ich es ändern, dass der absender mit dem namen schickt ( pat &lt;admin@pat87.ch&gt; ) wobei: name <e-mail> ist...

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/
als Antwort auf: [#81984] Top
 
oesi50  A  S
Beiträge: 2315
25. Mai 2004, 20:26
Beitrag #10 von 17
Beitrag ID: #87216
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


hi pat,

vielleicht so?

print MAIL "From: $name <$absender>\n";


Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)
als Antwort auf: [#81984] Top
 
pat87
Beiträge: 581
25. Mai 2004, 21:14
Beitrag #11 von 17
Beitrag ID: #87224
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


> vielleicht so?
wenn ich die antwort gewusst hätte, hätte ich nicht gefragt...

: )) nei, vielen dank

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/
als Antwort auf: [#81984] Top
 
pat87
Beiträge: 581
25. Mai 2004, 22:00
Beitrag #12 von 17
Beitrag ID: #87229
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


wo liegt hier der fehler???

unter http://www.pat87.ch/dvd_formular.html ist das formular aber es geht nicht richtig, das ich die auswahl auch angezeigt gekriege:

#!/usr/bin/perl

# -------> SMTP-Programm zum Versenden der Mail:
$Sendmail_Prog = "/usr/lib/sendmail";

# -------> Modul f¸r CGI-Scripts einbinden:
use CGI;

# -------> Modul f¸r CGI-Scripts zum Einlesen der Formulardaten anwenden:
$query = new CGI;
@names = $query->param;

# -------> interne Daten aus den erwarteten hidden-Feldern auslesen:
$delimiter = $query->param('delimiter');
$returnhtml = $query->param('return');
$subject = $query->param('subject');
$absender = $query->param('email');
$name = $query->param('name');
$dvd = $query->param('dvd');
$dvd2 = $query->param('dvd2');
$dvd3 = $query->param('dvd3');

# -------> Text der E-Mail aus den Formulardaten ermitteln:
$mailtext = "$name will folgende dvd's:\n $dvd\n $dvd2\n $dvd3";


# -------> E-Mail versenden:
open(MAIL,"|$Sendmail_Prog -t") || print STDERR "mailprogramm konnte nicht gestartet werden\n";
print MAIL "To: admin\@pat87.ch\n";
print MAIL "From: $name <$absender>\n";
print MAIL "Subject: $subject\n\n";
print MAIL "$mailtext\n";
close(MAIL);

# -------> Dankeseite an Browser senden:
print "Location: $returnhtml\n\n";


vielen dank schon im voraus

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/
als Antwort auf: [#81984] Top
 
oesi50  A  S
Beiträge: 2315
25. Mai 2004, 22:32
Beitrag #13 von 17
Beitrag ID: #87232
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


was geht denn nicht?
beschreibe doch mal Dein Problem etwas genauer.

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)
als Antwort auf: [#81984] Top
 
pat87
Beiträge: 581
26. Mai 2004, 09:00
Beitrag #14 von 17
Beitrag ID: #87261
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


wenn du welche dvd's ausgewählt hat, so zeigt es mir diese in dem mail nicht an... ändere doch mal kurz das script für deine mail-adresse und versuche es mal...

bitte schreibe mir dann, an was es liegt, wenn du es findest...

mfg p@
---
mailto:admin@pat87.ch
http://www.pat87.ch/
als Antwort auf: [#81984] Top
 
oesi50  A  S
Beiträge: 2315
26. Mai 2004, 11:59
Beitrag #15 von 17
Beitrag ID: #87316
Bewertung:
(5426 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

absender in einem form-mailer


hi Pat,

lade Dir doch mal dieses Script

http://vsrv.de/download/info.cgi

und rufe es statt Deines Mailscriptes auf. Damit kannst Du die übergebenen Parameter feststellen.

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)
als Antwort auf: [#81984] Top
 
« « 1 2 » »  
X