1) Ich bin kein Komiker, das ist die inoffizielle standartantwort hier 
2) Liegt es daran, das ihr die index falsch gesetzt hab ( groß und kleinschreibung)
<html>
<head>
<title>Kontaktformular</title>
<body background="hintergrund.jpg" link="#997F63" alink="#997F63" vlink="#997F63">
<div align="center">
<table width="500" border="1" cellpadding="0" cellspacing="0" class="div" >
<tr>
<td height="18" colspan="0" bgcolor="#DFD6C7" > <div align="center">
<font color="#000000" size="2" face="Verdana, Arial">[b]
Mit dem folgenden Formular haben Sie die Möglichkeit, schnell und einfach mit mir
in Kontakt zu treten.
Jede E-Mail wird so schnell es geht beantwortet.
</td>
</tr>
<tr>
<td colspan="0" bgcolor="#DFD6C7"> <table border="0" align="center" cellpadding="0" cellspacing="0">
<form action="ak2.php" method="post">
<tr bordercolor="000000">
<td bgcolor="#DFD6C7">Name:</td>
<td width="5">* </td>
<td width="185" bordercolor="#DFD6C7" bgcolor="#DFD6C7"> <input name="name" size="40" type="text">
</tr>
<tr>
<td>Wohnort:</td>
<td>*</td>
<td> <input name="wohnort" size="40" type="text"> </td>
</tr>
<tr>
<td bgcolor="#DFD6C7">e-mail:</td>
<td bgcolor="#DFD6C7">* </td>
<td bgcolor="#DFD6C7"> <input name="mail" size="40" type="text">
</td>
</tr>
<tr bordercolor="#DFD6C7">
<td valign="top" bgcolor="#DFD6C7"><u>Ihre Nachricht</u>
</td>
<td bgcolor="#DFD6C7"></td>
<td bgcolor="#DFD6C7"> <textarea cols="40" name="nachricht" rows="3"></textarea>
</td>
</tr>
<tr>
<td colspan="0" bgcolor="#DFD6C7"><div align="center">
<input name="Send" type="submit" value="Abschicken">
</div></td>
</tr>
</form>
</table>
</td>
</tr>
</table>
</body>
</html>
Alles anzeigen
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>SEITENTITEL</title>
</head>
<body>
<?php
$name = ($_POST['name']);
$wohnort = ($_POST['wohnort']);
$email = ($_POST['mail']);
$nachricht = ($_POST['nachricht']);
if ( ($name == "") OR ($wohnort == "") OR ($email == "") OR ($nachricht == "") )
{
echo "Du hast nicht alle Angaben gemacht! Gehe zurück und korrigiere dies!";
}
// Das heißt: wenn (if) eine der Angaben nicht gemacht werden, erscheint der Text vom echo()-Befehl. Ansonsten (else) wird die e-Mail verschickt:
else
{
mail("????@web.de", "Kontaktformular",$nachricht,"From: $name <$email>");
echo "Deine E-Mail wurde erfolgreich verschickt.";
}
?>
</body>
</html>
Alles anzeigen
3) Woher da ein 405 kommen kann ist mir schleierhaft, ich denk du meinst 404.
4) Bei einem 404 liegt es an den dateinendung -> dir unter action angegeben ist nicht die, die das script verarbeiten soll.