Formular per Mail versenden

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
porfavor
Mitglied
Beiträge: 834
Registriert: 23.08.2006 00:35
Wohnort: Tuttlingen
Kontaktdaten:

Formular per Mail versenden

Beitrag von porfavor »

Hallo,

ich habe ein paar Probleme mit einem normalen Kontaktformular.

Wenn ich das Formular absende wird es zwar verschickt, also ich bekomme eine Mail, diese ist jedoch ohne Inhalt, obwohl im Feld Nachricht etwas stand.
Zur erklärung html und php:

Code: Alles auswählen

<?php
$name = $_POST['name'];
$message = $_POST['message'];
$email = $_POST['email'];

$empfaenger = "admin@xxxblabla.de";
$absender = $name;
$betreff = "Kontaktformular Hug";
$text = $message;
mail($empfaenger, $betreff, $text,"from:$absender");
echo "Email versendet!";
?>

Code: Alles auswählen

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

<html>
<head>
<title>Hug The World - Kontakt</title>
<link rel="stylesheet" type="text/css" href="hug.css">
<script type="text/javascript">
function chkmessage () 
{
if (document.Contact.email.value == "") {
    alert("Bitte gib eine Email-Adresse ein!");
    document.Contact.email.focus();
    return false;
  }
  if (document.Contact.email.value.indexOf("@") == -1) {
    alert("Keine gültige Email-Adresse!");
    document.Contact.email.focus();
    return false;
  }
  if (document.Contact.message.value == "") {
    alert("Bitte gib eine Nachricht ein!");
    document.Contact.message.focus();
    return false;
  }
    if (document.Contact.name.value == "") {
    alert("Bitte gib einen Namen ein!");
    document.Contact.name.focus();
    return false;
  }

  
  
 }
  </script>
</head>
<body background="images/bg.jpg">
<br><br>
<table align="center" width="600" height="300" border="5" style="background-image:url(images/tbg.jpg); border-style:double;">
<tr align="center">
<td>
<h1>Kontakt</h1>
<h2>Willst du uns etwas mitteilen? - Mach es hier!</h2><br>
<form name="Contact" action="contact_ok.php" onSubmit="return chkmessage()">
 <p><b>Name:&nbsp;</b><input type="text" value="" name="name" size="40" maxlength="25"></p>
 <p><b>Nachricht:</b><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<textarea value="message" name="message" cols="35" rows="5" maxlength="150"></textarea></p>
 <p><b>E-Mail:&nbsp;</b><input type="text" value="" name="email" size="40" maxlength="25"></p>
 <p><input type="submit" value="Submit" name="submit"></p>
 </form>
</td>
</tr>
</table>
</body>
</html>
Lebe dein Leben solange du kannst.

Jugendgemeinderat-Tuttlingen
Benutzeravatar
Sanchez17
Mitglied
Beiträge: 913
Registriert: 10.12.2005 22:21
Wohnort: Moers / Sevilla
Kontaktdaten:

Beitrag von Sanchez17 »

Hola,

füge mal ein method=post in dein Formular ein...

Also statt:

Code: Alles auswählen

<form name="Contact" action="contact_ok.php" onSubmit="return chkmessage()"> 
das hier:

Code: Alles auswählen

<form name="Contact" action="contact_ok.php" method="post" onSubmit="return chkmessage()"> 
Sonst hängt er die Daten (zumindenst bei mir) an die URL an (GET Methode). Du willst sie ja aber per POST.

'ta luego
Viva el betís, mi amor :-)
Wir gehn voran, als euer zwölfter Mann, scheiß egal wie weit, ob Sturm oder Schnee, MSV Duisburg oé
Benutzeravatar
larsneo
Mitglied
Beiträge: 2622
Registriert: 07.03.2002 15:23
Wohnort: schwäbisch gmünd
Kontaktdaten:

Beitrag von larsneo »

dir ist aber schon klar, dass das die contact_ok.php eine einladung zum spammen ist, oder?
gruesse aus dem wilden sueden
larsneo
..::[krapohl.net]::..
Benutzeravatar
Mahony
Ehemaliges Teammitglied
Beiträge: 12207
Registriert: 17.11.2005 22:33
Wohnort: Ostfildern Kemnat
Kontaktdaten:

Beitrag von Mahony »

Hallo
Schau dir mal das Mail-Formular von heise.de an Mail-Formulare auf Webseiten absichern


Das kannst du dir dann entsprechend anpassen.




Grüße: Mahony
Wer fragt, ist ein Narr für fünf Minuten, wer nicht fragt, ist ein Narr für immer.
Xwitz
Mitglied
Beiträge: 1104
Registriert: 21.06.2005 21:41

Re: Formular per Mail versenden

Beitrag von Xwitz »

Am Rande:
porfavor hat geschrieben:

Code: Alles auswählen

<?php
$name = $_POST['name'];
$message = $_POST['message'];
$email = $_POST['email'];
?>
Den Murks kann man sich sparen.
porfavor hat geschrieben:

Code: Alles auswählen

<?php
$text = $message;
?>
Den erst recht.

Das sollte dich aber keinesfalls von larsneos Beitrag ablenken.
Antworten

Zurück zu „Coding & Technik“