Я столкнулся с проблемой при загрузке контактной формы PHP.
Я использую фреймворк начальной загрузки темы, пользовательский интерфейс готов, но я не знаю, как сделать функцию контактной формы. Может кто-нибудь помочь и сделать исправление для меня.
здесь мой сайт. http://cloudsblack.info/
HTML PART.
<!-- Contact Section -->
<section id="contact" class="contacts-section">
<div class="container content-lg">
<div class="title-v1">
<h2>Contact Us</h2>
<p>I'm always happy to hear from you. Please contact or email me for appointment or service enquiry.</p>
</div>
<div class="row contacts-in">
<div class="col-md-6 md-margin-bottom-40">
<ul class="list-unstyled">
<li><i class="fa fa-home"></i> Kuala Lumpur</li>
<li><i class="fa fa-phone"></i> (6)016-7187764</li>
<li><i class="fa fa-envelope"></i> <a href="[email protected]">[email protected]</a></li>
</ul>
</div>
<div class="col-md-6">
<form method="post" action="index.php">
<label>Name</label>
<div class="row margin-bottom-20">
<div class="col-md-7 col-md-offset-0">
<input type="text" class="form-control">
</div>
</div>
<label>Email<span class="color-red">*</span></label>
<div class="row margin-bottom-20">
<div class="col-md-7 col-md-offset-0">
<input type="text" class="form-control">
</div>
</div>
<label>City</label>
<div class="row margin-bottom-20">
<div class="col-md-7 col-md-offset-0">
<input type="text" class="form-control">
</div>
</div>
<label>Telephone</label>
<div class="row margin-bottom-20">
<div class="col-md-7 col-md-offset-0">
<input type="text" class="form-control">
</div>
</div><label>Interested</label>
<div class="row margin-bottom-20">
<div class="col-md-7 col-md-offset-0">
<input type="text" class="form-control">
</div>
</div>
<label>Message</label>
<div class="row margin-bottom-20">
<div class="col-md-11 col-md-offset-0">
<textarea rows="8" class="form-control"></textarea>
</div>
</div>
<p><button type="submit" class="btn-u btn-brd btn-brd-hover btn-u-dark">Send Message</button></p>
</form>
</div>
</div>
</div>
И вот часть PHP.
<?php
$Name = $_POST['name'];
$Email = $_POST['email'];
$City = $_POST['city'];
$Telephone = $_POST['telephone'];
$Interested = $_POST['interested'];
$Message = $_POST['message'];
$from = 'From: Johnhophotography.com';
$to = '[email protected]';
$subject = 'Message from johnhophotography.com';
$body = "From: $name\n E-Mail: $email\n City: $city\n Telephone: $telephone\n Interested: $interested\n Message:\n $message";
if ($_POST['submit']) {
if (mail ($to, $subject, $body, $from)) {
echo '<p>Your message has been sent!</p>';
} else {
echo '<p>Something went wrong, go back and try again!</p>';
}
} else if ($_POST['submit']) {
echo '<p>You answered the anti-spam question incorrectly!</p>';
}
?>
Спасибо !!!
Вносит следующие изменения:
Первое изменение:
В тегах формы просто добавьте имена в соответствии с указанным именем на сервере.
<input type="text" name="name" class="form-control">
<input type="text" name="email" class="form-control">
<input type="text" name="city" class="form-control">
<input type="text" name="telephone" class="form-control">
<input type="text" name="interested" class="form-control">
<textarea rows="8" name="message" class="form-control"></textarea>
<button type="submit" name="submit" class="btn-u btn-brd btn-brd-hover btn-u-dark">Send Message</button></p>
Если вы хотите получить данные формы на сервере, вы должны дать ему то же имя, что и на вашем сервере.
Второе изменение:
Внесите следующие изменения в свой код:
<?php
//Add this two line in your code. It reports you exact problem you are facing in PHP Code.
error_reporting(E_ALL);
ini_set('error_reporting', E_ALL);
$Name = $_POST['name'];
$Email = $_POST['email'];
$City = $_POST['city'];
$Telephone = $_POST['telephone'];
$Interested = $_POST['interested'];
$Message = $_POST['message'];
$from = 'From: Johnhophotography.com';
$to = '[email protected]';
$subject = 'Message from johnhophotography.com';
$body = "From: $name\n E-Mail: $email\n City: $city\n Telephone: $telephone\n Interested: $interested\n Message:\n $message";
if ($_POST['submit']) {
if (mail ($to, $subject, $body, $from)) {
echo '<p>Your message has been sent!</p>';
} else {
echo '<p>Something went wrong, go back and try again!</p>';
}
}
else
{
echo '<p>You answered the anti-spam question incorrectly!</p>';
}
?>
Сначала добавьте атрибут «имя» во все поля ввода и кнопку отправки.
…а затем измените ваш PHP на следующее:
<?php
//get parameters
$name = $_POST['name'];
$email = $_POST['email'];
$city = $_POST['city'];
$telephone = $_POST['telephone'];
$interested = $_POST['interested'];
$message = $_POST['message'];
$submit = $_POST['submit'];if($submit){
//prepare email
$from = 'From: Johnhophotography.com'."\r\n";
$to = '[email protected]';
$subject = "Message from johnhophotography.com";
$body = "".
"From: ".$name."\n".
"E-mail: ".$email."\n".
"City: ".$city."\n".
"Telephone: ".$telephone."\n".
"Interested: ".$interested."\n".
"Message: ".$message."\n";
//Send email
if(mail($to, $subject, $body, $from)){
echo '<p>Your message has been sent!</p>';
}
else{
die('<p>Something went wrong, go back and try again!</p>');
}
}
?>