dusti: Formmailer sendet keinen inhalt

Beitrag lesen

Hallo zusammen,

da ich hier schon einiges hilfreiches gefunden habe und nun doch nicht mehr weiter komme wende ich mich mal direkt an euch =)

also ich hab folgendes problem:

ich hab mir eine HP in HTML und auch ein Kommentar/Kontakt Formular geschrieben. Die felder werden mit javascript auf korrektheit geprüft, also das im namesfeld nur bustaben und im emailfeld ein @(AT-Zeichen) und ein "."(punkt) vorhanden sind. beim klick auf den senden button wird es halt geprüft und habe als " action="Senden.php" verwiesen. darin ist dann halt der formmailer. die nachricht wird auch versendet, nur leider ohne inhalt und der teil mit der AR funzt auch nicht wirklich.

ausserdem würd ich gerne das, dass fenster sich nach 5 sek oder so schließt. ist aber imom eher optional.

ich hoffe ihr könnt mir vll. sagen wo ich den fehler drin habe.

die codes sind hier:

Formular.html:

				  
<form name="mailer" action="Senden.php" target="_new" method="POST" enctype="text/plain">  
	<table border="0" cellpadding="5" cellspacing="0">  
	<tr>  
	<td align="right">Name*</td>  
	<td>  
	<input type="text" name="d_name" value="" size="36" maxlength="30"></td>  
	</tr>  
  
	<tr>  
	<td align="right">eMail*</td>  
	<td>  
	<input type="text" name="d_email" value="" size="36" maxlength="30"></td>  
	</tr>  
	<tr>  
	<td align="right">Betreff</td>  
				<td>  
  
	<input type="text" name="d_betreff" size="36" maxlength="80"></td>  
	</tr>  
	<tr>  
	<td align="right">Nachricht*</td>  
	<td>  
	<textarea rows="4" name="nachricht" value="" cols="27"></textarea></td>  
	</tr>  
	<tr>  
	<td align="right"></td>  
	<td>  
	<small>* erforderliche Angaben</small>  
<br>  
	<input type="Submit" value="Abschicken" onclick="return checkForm()">  
	<input type="reset" value="Abbrechen" onclick="return confirm ('Willst Du wirklich alle Eingaben löschen?')">  
	</td>  
	</tr>  
	</table>  
</form>  

Hier der JavaScript teil im <head> teil vom formular.html:

				  
<SCRIPT LANGUAGE="JavaScript">  
  
	function checkForm()  
{  
  
  
	if(document.mailer.d_name.value=="")  
{  
	alert ("Bitte Deinen Namen eingeben");  
	document.mailer.d_name.focus();  
	return false;  
}  
  
	if( document.mailer.d_name.value.length <2  )  
{  
	alert ("Dein Name sollte doch schon aus zwei Zeichen bestehen, sonst wäre es ja  kein Name sondern ein Buchstabe oder eine Ziffer");  
	document.mailer.d_name.focus();  
	return false;  
}  
  
  
	if(!isNaN (document.mailer.d_name.value))  
{  
	alert ("Nur Buchstaben bitte");  
	document.mailer.d_name.focus();  
	return false;  
}  
  
  
	if (document.mailer.d_email.value=="")  
{	  
	alert ("Bitte eine Email eingeben");  
	document.mailer.d_email.focus();  
        return false  
}  
  
	if(document.mailer.d_email.value.indexOf('@')==-1 ||document.mailer.d_email.value.indexOf('.')==-1)  
{  
	alert ("Eine gültige Emailadresse muss ein \n '@' (At-Zeichen)und einen '.' (Punkt)\n enthalten.");  
	document.mailer.d_email.focus();  
	return false  
}  
  
  
		var zeichen="/ ;:,äüö";  
		eingabe=document.mailer.d_email.value;  
		laenge=eingabe.length;  
  
		for( i=0;i<laenge;i++ )  
{  
		badchar=eingabe.charAt(i);  
		if (zeichen.indexOf(badchar)>-1)  
{  
	alert("Die Zeichen \n Slash(/),\n  Doppelpunkt (:),\n  Semikolon (;),\n  Komma (,)\n  und Leerzeichen ( )\n sowie deutsche Umlaute (ä,ü,ö) \n sind in einer Email nicht erlaubt." );  
	document.mailer.d_email.focus();  
	return false;  
  
}  
  
}  
  
	atPosition=document.mailer.d_email.value.indexOf('@');  
  
	if(document.mailer.d_email.value.indexOf('@',atPosition+1)>-1)  
{	  
	alert ("Du hast mehr als ein '@-Zeichen' eingegeben.");  
	document.mailer.d_email.focus();  
	return false  
}  
  
  
	if(document.mailer.d_email.value.indexOf('.',atPosition)==-1)  
{	  
	alert ("An irgendeiner Stelle NACH dem '@-Zeichen' sollte ein Punkt folgen.");  
	document.mailer.d_email.focus();  
	return false  
}  
  
	punktPosition=document.mailer.d_email.value.lastIndexOf('.');  
  
	if(punktPosition+3>document.mailer.d_email.value.length){alert("Nach dem Punkt müssen noch mindestens 2 Zeichen folgen.")  
	return false};  
  
	if(punktPosition+5<document.mailer.d_email.value.length){alert("Bitte mindestens 2, aber NICHT mehr als 4 Zeichen nach dem Punkt.\n Zum Beispiel: \ meinemail@.de \n meinemail@.com \n meinemail@.info\n")  
	return false};  
  
					  
	if(document.mailer.nachricht.value.length<15)  
{  
	alert ("Mehr als 15 Zeichen sollten es schon sein ;-) ");  
	document.mailer.nachricht.focus();  
	return false;  
}  
				  
}  
				  
</script>  

und hier ist die Senden.php:

  
<?php  
  
$betreff = "Betreff";  
  
$an = "meineemail@adresse.com";  
  
$von = "$d_email";  
  
$date = date("d.m.Y");  
  
$inhalt = "Name: $d_name\nMail: $d_email\nBetreff: $d_betreff\nNachricht: $nachricht\n";  
  
mail ($an,$betreff,$inhalt,$von);  
echo "erfolgreich Versendet!!! Du kannst diese Seite jetzt schließen.";  
  
############################  
#jetzt kommt der Teil der Auto-Response#  
###########################  
  
$von="meineemail@adresse.com";  
$vtext="Vielen dank für dein Kommentar!  
  
Mfg, Dusti  
http://www.meineseite.de.vu  
 Du hast folgendes eingegeben:  
 Name: $d_name  
 Mail: $d_email  
 Nachricht: $nachricht";  
$bestaetigung="Deine Mail ist angekommen!";  
$betreff = "Danke für dein Kommentar!!";  
mail ($email,$bestaetigung,$vtext,"From: Dusti <meineemail@adresse.com>\n");  
  
?>  

Vielen dank für eure hilfe schonmal.

Gruß
Dusti