|
You last visited: Today at 18:44
Advertisement
Problem bei "mailto"
Discussion on Problem bei "mailto" within the General Coding forum part of the Coders Den category.
03/12/2011, 21:25
|
#1
|
elite*gold: 0
Join Date: Dec 2009
Posts: 554
Received Thanks: 180
|
Problem bei "mailto"
Hallo,
ich bin grade an ner Homepage dran & nunja.. ich hab ein Problem mit "mailto".
Mein Code sieht so aus:
HTML Code:
<form action="mailto:?subject=Beispielbetreff" method="get">
<label>Geb deine Frage ein, damit Sie beantwortet wird</label>
<input type="text" value="Geb hier deine Frage ein.." name="frage" size="10" id="input_field" title="frage" />
<input type="submit" name="submit" value="Abschicken" alt="submit" id="submit_btn" title="submit" />
</form>
Da wird auch das Mail-Programm geöffnet & als Empfänger auch die genommen, jedoch wird kein Betreff übernommen. Egal ob ich da einen festgelegten nehme oder den aus dem text-Feld nehm.
Könnte mir da jemand helfen?
Danke!
|
|
|
03/12/2011, 23:36
|
#2
|
elite*gold: 0
Join Date: May 2010
Posts: 159
Received Thanks: 33
|
Hi,
mit html kenne ich mich leider nicht aus.
Ich könnte dir aber eine PHP lösung anbieten, sofern dein Webspaceanbieter dieses unterstützt.
Der Code funktioniert soweit unter meinem Webspace.
Es könnte jedoch sein, dass dein Mailprogramm die Mails als Junk / Spammails sieht.
Achso:
Es öffnet sich dann kein Mail Programm sondern die mail wird vom Webserver aus verschickt mit dem Inhalt des Formulars als Text.
PHP Code:
<html> <head> <title> Dein Titel </title> </head> <body> <form action="index.php" method="post"> <label>Geb deine Frage ein, damit Sie beantwortet wird</label> <input type="text" name="frage"> <input type="submit" value="Post"> </form> </body> <?php $empfänger = "hier deine mail eintragen"; $betreff = "hier den betreff eintragen"; if (!empty($_POST['frage'])) { mail($empfänger, $betreff, $_POST['frage']); } ?>
Du musst dann nur noch bei den Variablen $empfänger und $betreff in die "" deine Mail eintragen bzw. den Betreff.
Die Datei muss mit .php enden sonst funktioniert es nicht, sie sollte index.php heißen - wenn nicht musst du es im <form ...> tag anpassen.
Ich hoffe ich konnte helfen,
LinkinPark96
PS: Thanks erwünscht
|
|
|
03/17/2011, 14:40
|
#3
|
elite*gold: 4
Join Date: Mar 2011
Posts: 135
Received Thanks: 10
|
Danke..hat geholfen.
(Neuer Account..alter gehackt^^)
Wobei..gäb es da noch die Möglichkeit als Absender die eMail-Adresse des jenigen zu benutzen.
Weil sonst kann man ja schlecht antworten.
|
|
|
03/17/2011, 16:03
|
#4
|
elite*gold: 0
Join Date: May 2010
Posts: 159
Received Thanks: 33
|
Ja das geht natürlich auch.
Code:
<html>
<head>
<title>
Dein Titel
</title>
</head>
<body>
<form action="index.php" method="post">
<label>Geb deine Frage ein, damit Sie beantwortet wird</label>
<input type="text" name="frage">
<input type="submit" value="Post">
</form>
</body>
<?php
$empfänger = "hier deine mail eintragen";
$betreff = "hier den betreff eintragen";
$absendername = "Name des Absenders";
$absendermail = "";
if (!empty($_POST['frage']))
{
mail($empfänger, $betreff, $_POST['frage'], "From: $absendername <$absendermail>");
}
?>
Musst halt nur die Variablen $absendername und $absendermail anpassen.
Liebe Grüße,
R2-D2
[früher: LinkinPark96]
|
|
|
03/17/2011, 17:53
|
#5
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,407
Received Thanks: 2,024
|
ich würde aber erst nach betätigung des sendne buttons überpüfen lassen
PHP Code:
<html> <head> <title> Dein Titel </title> </head>
<body> <form action="index.php" method="post"> <label>Geb deine Frage ein, damit Sie beantwortet wird</label> <input type="text" name="frage"> <input type="submit" value="Post" name="senden"> </form> </body>
<?php if(isset($_POST['senden'])){ $empfänger = "hier deine mail eintragen"; $betreff = "hier den betreff eintragen"; $absendername = "Name des Absenders"; $absendermail = "";
if (!empty($_POST['frage'])) { mail($empfänger, $betreff, $_POST['frage'], "From: $absendername <$absendermail>"); } } ?>
|
|
|
03/17/2011, 18:03
|
#6
|
elite*gold: 4
Join Date: Mar 2011
Posts: 135
Received Thanks: 10
|
Problem..als Absenderemail soll aber die eMail des Fragenstellers genommen werden.
Daher bräuchte man eventuell nen 2. Feld^^
Momentaner Code:
HTML Code:
<form action="index.php" method="post">
<label>Hier eingeben & auf eine Antwort warten</label>
<input type="text" value="Gib hier deine Frage ein.." size="10" id="input_field" name="frage">
<input type="submit" name="Fragen" value="Absenden" id="submit_btn" />
</form>
<?php
$empfänger = "";
$betreff = "Frage über die Webseite";
if (!empty($_POST['frage']))
{
mail($empfänger, $betreff, $_POST['frage']);
}
?>
|
|
|
03/17/2011, 18:06
|
#7
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,407
Received Thanks: 2,024
|
dann mach doch einfach
PHP Code:
<html> <head> <title> Dein Titel </title> </head>
<body> <form action="index.php" method="post"> <label>Geb deine Frage ein, damit Sie beantwortet wird</label> <input type="text" name="frage"> Deine Email : <input type="text" name="absender" /> <input type="submit" value="Post" name="senden"> </form> </body>
<?php if(isset($_POST['senden'])){ $empfänger = "hier deine mail eintragen"; $betreff = "hier den betreff eintragen"; $absender = $_POST['absender'];
if (!empty($_POST['frage']) AND ($absender)) { mail($empfänger, $betreff, $_POST['frage'], $absender); } } ?>
hierbei kann man seine email angeben und diese wird dann mit verschickt
|
|
|
03/17/2011, 19:17
|
#8
|
elite*gold: 4
Join Date: Mar 2011
Posts: 135
Received Thanks: 10
|
danke.
nur kommt irgendwie keine email an :/
|
|
|
03/17/2011, 19:47
|
#9
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,407
Received Thanks: 2,024
|
musst bisschen warten ... hast du es local (xampp) oder auf nem webspace?
|
|
|
03/17/2011, 20:07
|
#10
|
elite*gold: 4
Join Date: Mar 2011
Posts: 135
Received Thanks: 10
|
Paid Webspace..
bloß ist die Mail immernoch nicht da.
Wenn etwas vom Forum versendet wird ist es auch sofort da >.<
|
|
|
03/17/2011, 20:48
|
#11
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,407
Received Thanks: 2,024
|
sag mal was du genau willst ( also eingabe felder etc) dann mach ich es dir und teste es auch kurz
|
|
|
03/17/2011, 20:56
|
#12
|
elite*gold: 4
Join Date: Mar 2011
Posts: 135
Received Thanks: 10
|
Also Felder:
Frage
eMail
joa..das war es eig auch schon.
|
|
|
03/17/2011, 20:59
|
#13
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,407
Received Thanks: 2,024
|
die Datei muss index.php heißen ansonsten die action angabe ändern... Hab noch einen kleinen Spammschutz in Art einer Rechenaufgabe reingemacht und eine Betreff Zeile
PHP Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head> <body> <form action="index.php" method="post"> <fieldset> <legend>Kontakformular</legend> <label>Geb deine Frage ein, damit Sie beantwortet wird</label> Email: <input type="text" name="mail" /><br /> <br /> Betreff: <input type="text" name="betreff" /><br /> <br /> Frage: <input type="text" name="frage"> <br /> <br /> Spamschutz: 5+10 = <input type="text" name="antwort" /> <input type="submit" value="Abschicken" name="senden"> </fieldset> </form> </body> <?php if(isset($_POST['senden'])){ $empfänger = "Deine Email"; $betreff = $_POST['betreff']; $Frage = $_POST['frage']; $antwort = $_POST['antwort']; $email = $_POST['mail']; if (empty ($email)) { echo' Bitte Email Addresse ausfülleln '; } if (empty ($Frage)) { echo 'Bitte Nachricht-Feld ausfüllen' ; } if (($antwort != 15)) { echo'Bitte Antwort richtig ausfüllen'; } if (empty ($betreff)) { echo 'Bitte Betreff ausfüllen' ; } if (!empty ($Frage ) AND ($betreff) AND ($email) AND ($antwort == 15 )) { mail($empfänger, $Frage, $betreff); echo' Email erfolgreich gesendet' ; } } ?> </html>
|
|
|
03/17/2011, 21:01
|
#14
|
elite*gold: 4
Join Date: Mar 2011
Posts: 135
Received Thanks: 10
|
Danke.
Hat geklappt
|
|
|
03/17/2011, 21:02
|
#15
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,407
Received Thanks: 2,024
|
np
|
|
|
All times are GMT +2. The time now is 18:44.
|
|