Ich habe das Gefühl, als ob alles richtig gemacht wurde, aber beim Abschicken des Formulars kommt kein direkter Zugriff zustande. Dieses ist von einer Schablonenweb site, die nicht ein Kontaktformular hatte, also fand ich ein online, aber es scheint nicht damit zu arbeiten.Kontaktformular funktioniert nicht und kommt ohne direkten Zugriff
hier ist die html
<form action="mail.php" method="post" class="wow fadeInUp" data-wow-delay="0.6s">
<div class="col-md-6 col-sm-6">
<input type="text" name="name" class="form-control" placeholder="Your Name...">
</div>
<div class="col-md-6 col-sm-6">
<input type="email" name="email" class="form-control" placeholder="Your Email...">
</div>
<div class="col-md-12 col-sm-12">
<textarea rows="6" name="message" class="form-control" placeholder="Your Message" required="">
</textarea>
</div>
<div class="col-md-offset-4 col-md-8 col-sm-offset-4 col-sm-8">
<input type="submit" class="form-control" value="SEND">
</div>
</form>
Hier ist die PHP-
<?php
/**
* sends mail submitted from the contact form
*/
/*
EDIT BELOW
*/
$to_Email = "[email protected]"; //Replace with your email address
$subject = 'Appydeveloper Site'; //Subject line for emails
/*
EDIT ABOVE
*/
if(!isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest')
die("No direct access.");
if(!isset($_POST["name"]) || !isset($_POST["email"]) || !isset($_POST["message"])) {
$output = json_encode(array('type'=>'error', 'text' => 'Input fields are empty!'));
die($output);
}
//additional validation
$user_Name = filter_var($_POST["name"], FILTER_SANITIZE_STRING);
$user_Email = filter_var($_POST["email"], FILTER_SANITIZE_EMAIL);
$user_Message = filter_var($_POST["message"], FILTER_SANITIZE_STRING);
if(strlen($user_Name)<4) {
$output = json_encode(array('type'=>'error', 'text' => 'Name is too short or empty!'));
die($output);
}
if(!filter_var($user_Email, FILTER_VALIDATE_EMAIL)) {
$output = json_encode(array('type'=>'error', 'text' => 'Please enter a valid email!'));
die($output);
}
if(strlen($user_Message)<5) {
$output = json_encode(array('type'=>'error', 'text' => 'Too short message! Please enter something.'));
die($output);
}
$sentMail = @mail($to_Email, $subject, $user_Message .' -'.$user_Name, $headers);
if(!$sentMail) {
$output = json_encode(array('type'=>'error', 'text' => 'Server error, could not send email. Sorry for the inconvenience.'));
die($output);
} else {
$output = json_encode(array('type'=>'success', 'text' => 'Message successfully sent!'));
die($output);
}
?>
was meinst du mit „es keinen direkten Zugang kommt“? Gibt es eine Fehlermeldung? werden Sie auf eine Seite weitergeleitet? geben Sie mehr Details darüber, was passiert – Webeng
Was ist der Name der Seite mit dem Formular, und was ist der Name der Seite mit dem PHP-Code? – Webeng
yeah es ist eine Fehlermeldung, die auf einer anderen Seite erscheint – Smurfy