• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wysyłanie formularza za pomocą jQuery + AJAX (HTML + jQuery/Ajax + PHP )

Object Storage Arubacloud
0 głosów
1,174 wizyt
pytanie zadane 23 grudnia 2019 w JavaScript przez rupert Nowicjusz (150 p.)

Walczę z formularzem kontaktowym i jego przesłaniem za pomocą Ajax. Po uzupełnieniu wszystkich pól formularz wysyła się lecz strona przeładowuje adresę index.html/?  - wyrzuca spowrotem stronę główną.
Przy wypełnieniu wszystkich pól oprócz treści wiadomości, formularz wysyła się za pośrednictwem ajax i wszystko działa tak jak powinno. Kombinuję na lewo i prawo i nie mogę dojść czego to wina...

Kod js:

    <script>
        $(document).ready(function() {

            $("#sendMessageButton").click(function() {
                var name = $("#name").val();
                var email = $("#email").val();
                var phone = $("#phone").val();
                var message = $("#message").val();

                $.ajax({
                    type: "POST",
                    url: "contact_me.php",
                    data: {
                        name: name,
                        phone: phone,
                        email: email,
                        message: message
                    },
                    cache: false,
                    success: function(data) {
                        alert("form was submitted");
                        return false;
                    },                 

                })
            })
        })
    </script>

 

Kod php:
 

<?php
$name = $_POST['name'];
$email = $_POST['email'];
$tele = $_POST['phone'];
$wiado = $_POST['message'];
 
$dokogo = "docelowy_adres_email";
 
$naglowki = "Reply-to: ".$dokogo." <".$dokogo.">".PHP_EOL;
$naglowki .= "From: ".$dokogo." <".$dokogo.">".PHP_EOL;
$naglowki .= "MIME-Version: 1.0".PHP_EOL;
$naglowki .= "Content-type: text/html; charset=utf-8".PHP_EOL; 
 
$tytul = "Formularz Kontaktowy";
 
$wiadomosc = "
<html> 
<body>
    <i>Imie i nazwisko:</i> <b>" . $name . "</b><br>
    <i>Email:</i> <b>" . $email . "</b><br>
    <i>Telefon:</i> <b>" . $tele . "</b><br>
    <i>Termin:</i> <b>" . $termin . "</b><br>
    <i>Wiadomość:</i> <b>" . $wiado . "</b>
</body>
</html>";
 
echo mail($dokogo, $tytul, $wiadomosc, $naglowki);
return true;
?>

 

1 odpowiedź

+1 głos
odpowiedź 23 grudnia 2019 przez antypop Mądrala (5,730 p.)
wybrane 23 grudnia 2019 przez rupert
 
Najlepsza

Spróbuj :

$("#sendMessageButton").click(function(e) {
            e.preventDefault();
            var name = $("#name").val();
            var email = $("#email").val();
            var phone = $("#phone").val();
            var message = $("#message").val();

zablokuje to natywny event na przyciku submit (bo przypuszczam że formularz masz zamknięty w <form>).

 

Pozdrawiam 

komentarz 23 grudnia 2019 przez rupert Nowicjusz (150 p.)
Dokładnie tego mi brakowało :)
Dzięki wielkie!
komentarz 23 grudnia 2019 przez dawid6512 Gaduła (4,550 p.)

mozesz tez zamiast 

<input type="submit">
lub
<button></button>

użyc

<input type="button">
lub
<button type="button"></button>

 

Podobne pytania

0 głosów
0 odpowiedzi 253 wizyt
0 głosów
1 odpowiedź 424 wizyt
pytanie zadane 26 listopada 2015 w JavaScript przez makoso Mądrala (7,380 p.)
0 głosów
1 odpowiedź 193 wizyt

92,566 zapytań

141,420 odpowiedzi

319,615 komentarzy

61,952 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...