Powiadomienie modal po wysłaniu maila.

0

Witam, mam taki problem, że chce aby po wysłaniu maila wyskoczył komunikat modal. Nie wychodzi mi to kompletnie i obecnie działa to tak, że jak nie ma żadnych danych wpisanych w pola formularza, albo są źle uzupełnione to wyskakuje modal...
Gdy dane są dobre wtedy strona się odświeża i nie ma żadnego komunikatu..

Kod to jeden plik, wyrzuciłem zbędne rzeczy

<?php


if(isset($_POST['email'])) {
    $data_wystawienia = date('Y-m-d H:i:s');
    $name    = $_POST['name'];
    $email    = $_POST['email'];
    $message = $_POST['message'];
    $query = 'insert into kontakt values(null, "'.$data_wystawienia.'", "'.$name.'", "'.$email.'", "'.$message.'")';
    
    $db -> query($query);
    
    
}

?>

  <form method="post" action=./kontakt id="formularz">
                                <div class="form-group">
                                    <label for="kontaktImieNazwisko"><b>Twoje imię i nazwisko</b></label>
                                    <input type="text" class="form-control"  name="name" id="imie_nazw_kontaktu" required>
                                </div>
                                <div class="form-group">
                                    <label for="kontaktEmail"><b>Twój adres e-mail</b></label>
                                    <input type="email" class="form-control" name="email" id="email_kontaktu" required>
                                </div>
                                <div class="form-group">
                                    <label for="kontaktWiadomosc"><b>Twoja wiadomość</b></label>
                                    <textarea class="form-control" name="message" id="tresc_kontaktu" rows="8" required></textarea>
                                </div>
                                <button type="submit" class="btn btn-secondary btn-block" data-toggle="modal" data-target="#wyslij_modal" id="wyslij">Wyślij wiadomość</button>
                            
                            </form>
<!-- Modal -->
<div class="modal fade" id="wyslij_modal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLabel"> Powiadomienie </h5>
        <button type="button" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
        Wiadomość została wysłana !
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal"> Zamknij. </button>
      </div>
    </div>
  </div>
</div>
<!-- Modal -->

<script>
$(formularz).ready(function(){
  $("#wyslij").click(function(){
      if($('#imie_nazw_kontaktu').val() === 'Add') &&
    $('#imie_nazw_kontaktu').val() === 'Add') &&
    $('#tresc_kontaktu').val() === 'Add')
    {
        $("#myModal").modal();
    }
  });
});
</script>


0

OK, a gdzie jest wysyłanie tego maila?
Chyba tylko do bazy wstawiasz?

if(isset($_POST['email'])) {
    $data_wystawienia = date('Y-m-d H:i:s');
    $name    = $_POST['name'];
    $email    = $_POST['email'];
    $message = $_POST['message'];
    $query = 'insert into kontakt values(null, "'.$data_wystawienia.'", "'.$name.'", "'.$email.'", "'.$message.'")';

    $result = $db ->query($query);     // powinno zwrócić true jeśli zapytanie się powiedzie, false w każdym innym wypadku.
    if($result){
       // pokaż modal - sukces
    }else{
      // pokaż modal - błąd
    }

}
0
NewUser2k13 napisał(a):

OK, a gdzie jest wysyłanie tego maila?
Chyba tylko do bazy wstawiasz?

if(isset($_POST['email'])) {
    $data_wystawienia = date('Y-m-d H:i:s');
    $name    = $_POST['name'];
    $email    = $_POST['email'];
    $message = $_POST['message'];
    $query = 'insert into kontakt values(null, "'.$data_wystawienia.'", "'.$name.'", "'.$email.'", "'.$message.'")';

    $result = $db ->query($query);     // powinno zwrócić true jeśli zapytanie się powiedzie, false w każdym innym wypadku.
    if($result){
       // pokaż modal - sukces
    }else{
      // pokaż modal - błąd
    }

}

Właśnie miałem taki kod:

<?php
if (isset($_POST['email']))
{
$data_wystawienia = date('Y-m-d H:i:s');
$name    = $_POST['name'];
$email    = $_POST['email'];
$message = $_POST['message'];

$query = 'insert into kontakt values(null, "'.$data_wystawienia.'", "'.$name.'", "'.$email.'", "'.$message.'")';

$db -> query($query);
echo "Wiadomość została wysłana!";
} else {
    echo "Wysyłanie nie powiodło się!";
}
?>

Ale nie wiem jak dodać modala żeby zostało na tej samej stronie i wyświetliło komunikat

0

Jak masz cały formularz wypełniony to po kliknięciu w guzik wyślij ajax z requestem o wysłanie maila / wpisanie do bazy. Zwrotkę z tego wrzuć do modala. Masa tutoriali od tego jest w nece.

1 użytkowników online, w tym zalogowanych: 0, gości: 1