Ik heb deze php code samengesteld nadat veel zoeken:
<?php
// define variables and set to empty values
$nameErr = $emailErr = $phoneErr = $contentErr = "";
$name_sender = $email_sender= $phone = $content =$succes= "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// post
$name_sender = strip_tags($_POST['name_sender']);
$email_sender = strip_tags($_POST['email_sender']);
$phone = strip_tags($_POST['phone']);
$content = strip_tags($_POST['content']);
// validate name
if (empty($name_sender)) {
$nameErr = "Name is required";
} else {
// check if name only contains letters and whitespace
if (!preg_match("/^[a-zA-Z-' ]*$/", $name_sender)) {
$nameErr = "Only letters and white space allowed";
}
}
// validate email
if (empty($email_sender)) {
$emailErr = "Email is required";
} else {
// check if email address is well-formed
if (!filter_var($email_sender, FILTER_VALIDATE_EMAIL)) {
$emailErr = "Invalid email format";
}
}
// validate phone
if (empty($phone)) {
$phoneErr = "Phone is required";
} else {
// check if phone is well-formed
if(!preg_match("/^[0-9\s\-]+$/", $phone)) {
$phoneErr = "Invalid phone number";
}
}
// validate content
if (empty($content)) {
$contentErr = "Content is required";
}
// send
if ( empty($nameErr) && empty($emailErr) && empty($phoneErr) && empty($contentErr) ) {
// Variables
$to = '[email protected]';
$subject = 'Contact form';
$success = 'Thank you! You will receive a response as soon as possible.';
// Message content
// Message content
$content = "Contact form\n";
$content .= "Name: " .$name_sender. "\n";
$content .= "Email: " .$email_sender. "\n";
$content .= "Phone: " .$phone. "\n";
// Headers
$headers = 'From: ' .$name_sender. ' <' .$email_sender. '>' . PHP_EOL;
$headers .= 'Reply-To: <' .$email_sender. '>' . PHP_EOL;
$headers .= 'Content-Transfer-Encoding: 8bit' . PHP_EOL;
$headers .= 'Content-Type: text/plain; charset=UTF-8' . PHP_EOL;
// Send email
mail($to, $subject,$content, $headers);
echo $success;
}
}
// form
?>
de html code is :
<html>
<div class="container">
<form id="contact" method="post">
<h3>Quick Contact</h3>
<h4>Contact us today, and get reply with in 24 hours!</h4>
<fieldset>
<input placeholder="Your name" type="text" name="name_sender" value="<?php echo $name_sender;?>">
<span class="error">* <?php echo $nameErr; ?></span>
</fieldset>
<fieldset>
<input placeholder="Your Email Address" type="text" name="email_sender" value="<?php echo $email_sender;?>">
<span class="error">* <?php echo $emailErr; ?></span>
</fieldset>
<fieldset>
<input placeholder="Your phone number" type="text" name="phone" value="<?php echo $phone;?>">
<span class="error">* <?php echo $phoneErr; ?></span>
</fieldset>
<fieldset>
<textarea placeholder="Type your message here.." type="text" name="content"><?php echo $content;?></textarea>
<span class="error">* <?php echo $contentErr; ?></span>
</fieldset>
<fieldset>
<button name="submit" type="submit" id="contact-submit">Submit</button></fieldset>
</form></div>
</html>
nu mij probleem is :
1- wanneer ik gegevens vullen in contact-form en klikt op submit button ik krijg dezelfde gegevens in het velden van de contact-form .
voor duidelijkheid u kunt zelf zien in url : https://webdesignleren.com/contact/
deze code lijn wordt op zelfde wijze gegeven in de tekst veld van contact-form nadat submit button geklikt:
<?php
// Message content
$content = "Contact form\n";
$content .= "Name: " .$name_sender. "\n";
$content .= "Email: " .$email_sender. "\n";
$content .= "Phone: " .$phone. "\n";
$content .= "". "\n\n";
?>
2- de text inhoud of de body van de message wordt niet gegeven in mij email box , alleen de naam van sender, email adres en telefoon nummer .
maar wanneer ik deze codes lijn weghalt :
</php
$content = "Contact form\n";
$content .= "Name: " .$name_sender. "\n";
$content .= "Email: " .$email_sender. "\n";
$content .= "Phone: " .$phone. "\n";
?>
en allen deze lijn houdt ( $content .= "". "\n\n";) dan wordt wel de ingevulde tekst of body weergegeven in de email box van mij provider.
ik heb heleboel gezocht in google maar ik kunde niet de juiste antwoord vinden.
hoe ik kan deze 2 problemen oplossen?
dank u wel