Как отобразить сообщение из контактной формы на главной странице

0

У меня есть контактная форма PHP, и я хочу, чтобы сообщение, отправленное или сбойное сообщение, отображалось на главной странице. У меня есть тег после кнопки отправки с id = "уведомление". Я хочу, чтобы сообщение из send.php отображалось внутри него,

Мой код:

<form method="post" action="send.php">

        <label>Name</label>
        <input name="name" placeholder="Type Here">

        <label>Email</label>
        <input name="email" type="email" placeholder="Type Here">

        <label>Subject</label>
        <input name="subject"  placeholder="Type Here">

        <label>Message</label>
        <textarea name="message" placeholder="Type Here"></textarea>

        <button id="submit" name="submit" type="submit">Dergo</button>

        <h3 id="notification" align="center" style="font-color:green;"></h3>
    </form>

Код Send.php:

<?php
    $name = $_POST['name'];
    $email = $_POST['email'];
    $subject = $_POST['subject'];
    $message = $_POST['message'];
    $from = 'From: KontaktFormular'; 
    $to = '[email protected]';
    $headers = "From:" . $email . "\r\n";
    $headers .= "Reply-To: ".$email."\r\n";
    $headers .= "Content-type: text/plain; charset=UTF-8" . "\r\n"; 

    $body = "From: $name\n E-Mail: $email\n Message:\n $message";

if(@mail($to,$subject,$body,$headers))
{
  echo "Mesazhi juaj u dërgua me sukses";

}else{
  echo "Gabim! Ju lutemi provoni përsëri.";
}
?>
Теги:

3 ответа

0
Лучший ответ

Поместите свой код в файл PHP. Ваш код:

<?php session_start(); ?>

 <form method="post" action="send.php">

    <label>Name</label>
    <input name="name" placeholder="Type Here">

    <label>Email</label>
    <input name="email" type="email" placeholder="Type Here">

    <label>Subject</label>
    <input name="subject"  placeholder="Type Here">

    <label>Message</label>
    <textarea name="message" placeholder="Type Here"></textarea>

    <button id="submit" name="submit" type="submit">Dergo</button>

    <h3 id="notification" align="center" style="font-color:green;">
     <?php
           if(!empty($_SESSION["notification"])){
                echo $_SESSION["notification"];
                unset($_SESSION["notification"];
            }
      ?>
    </h3>
</form>

Ваш файл send.php:

<?php

session_start();

$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$from = 'From: KontaktFormular'; 
$to = '[email protected]';
$headers = "From:" . $email . "\r\n";
$headers .= "Reply-To: ".$email."\r\n";
$headers .= "Content-type: text/plain; charset=UTF-8" . "\r\n"; 

$body = "From: $name\n E-Mail: $email\n Message:\n $message";

if(@mail($to,$subject,$body,$headers))
  {
   $_SESSION["notification"] =  "Mesazhi juaj u dërgua me sukses";

  }else{
   $_SESSION["notification"] = "Gabim! Ju lutemi provoni përsëri.";
   }
 header("location: YOUR_PHP_FILE_WITH_THE_FORM ");
 ?>
1

Измените эту часть кода:

}else{
  echo "Gabim! Ju lutemi provoni përsëri.";
}

чтобы:

}else{
      header('Location: mainpage.php?msg=1');
    }

Затем на главной странице вы можете:

<?php
if(isset($_GET['msg']) && $_GET['msg'] = 1)
    {
?>

<h3 id="notification" align="center" style="font-color:green;">
    Gabim! Ju lutemi provoni përsëri.
</h3>

<?php
    }
?>
  • 0
    это один из способов сделать это, но использование jquery для манипулирования сообщением лучше с точки зрения браузеров и наличие современного и современного кода, хотя этот пример вполне подойдет.
0

Сообщение

$notification = "put your message";

Javascript:

// Appeding notification to Body
$('#notification').html($notification);

Сделайте это, когда вы выполняете проверку php.

Поместите этот css сверху:

#notification{
    display: none;
}

Установите свой div

<div id="notification"> 

Ещё вопросы

Сообщество Overcoder
Наверх
Меню