Wykryto działanie AdBlocka!

Prawdopodobnie masz właczonego Adblocka. Korzystanie z bloga jest całkowicie darmowe. Jeśli jednak chcesz docenić prace autora, wyłacz blokowanie reklam dla tej witryny, aby jeszcze bardziej zmotywowac autora do dalszej pracy oraz częstszej publikacji artykułów.

Dziękuje :)

Treść główna bloga

Artykuły

Formularz kontaktowy + validate.jquery.js + PHPMailer


Formularz kontaktowy + validate.jquery.js + PHPMailer W tym tutorialu przedstawię jak zrobić formularz kontaktowy. Będzie on zawierał validate.jquery.js, czyli plugin do walidacji danych po stronie klienta oraz pokażę jak używać biblioteki PHPMailer, dzięki której możemy wysyłać E-maile. Ponad to skrypt wysyłający E-maile zawiera kod PHP, który waliduje dane z formularza przed ich wysłaniem w razie gdyby użytkownik miał wyłączona obsługę JavaScript w swojej przeglądarce.

Najpierw zajmijmy się plikiem index.html zawierającym formularz kontaktowy oraz kod JavaScript sprawdzający wpisywane przez użytkownika dane.

Mamy tu standardowy formularz kontaktowy. Nas jednak interesuje część walidująca.

Aby „powiedzieć” skryptowi, który formularz ma walidować musimy w miejscu, gdzie mamy #form wpisać id lub class odpowiadającą znacznikowi <form>

Następnie mamy rules, czyli jakie parametry muszą zostać spełnione podczas walidacji.

– „Name” odpowiada atrybutowi name=”name”,
– jeżeli „required” ma wartość true oznacza to, że pole nie może być puste,
– „minlength” jako wartość przyjmuje minimalną ilość znaków w danych polu.

Mamy tu odpowiadające poszczególnym polom możliwe rodzaje błędów. Ponad to ja dodałem znacznik <p> z klasą error aby ustawić miejsce, w którym błędy mają być wyświetlane.

Jednak taka walidacja nie zawsze jest skuteczna. Jeżeli internauta ma wyłączną obsługę JavaScript taka walidacja danych nie będzie dla niego problemem. Dlatego warto jest dodać także walidację po stronie serwera o czym za chwilę powiem.

Plik wysyłający E-maile, send.php:

Większość z tych funkcji omówiłem w wcześniejszym artykule:Bezpieczeństwo stron internetowych

Dodam jedynie o co chodzi ze stałą SCRIPT. Domyślnie ma ona wartość 1. Co oznacza, że skrypt nie jest zablokowany. Jeżeli wpiszemy zamiast 1 wpiszemy wartość 0 wyświetli się komunikat, że skrypt został zablokowany.

Następnie mamy walidację danych. Omówiłem ja także w artykule o bezpieczeństwie stron internetowych.

Potem za pomocą zmiennej $_SERVER sprawdzamy jakie jest IP oraz USER_AGENT, czyli informacje o przeglądarce, systemie, itd.

Teraz skrypt wysyłający E-maile:

Na początku tworzymy nowy obiekt klasy PHPMailer.
W $mail -> AddAddress wpisujemy jako pierwszy argument E-mail, na który ma zostać wysłana wiadomość.
W $mail -> msgHTML(„”); Mamy treść wiadomość. Można dowolnie modelować, mn.i za pomocą znaczników <p>

  • Dobre porady.

  • Tomek

    W omówieniu skryptu wysyłającego pojawia się
    $our_email = ‚nasz_email@domain.pl’; // Jest to email na jaki ma … czego brakuje w skrypcie wyżej, u mnie nie działa wysyłanie

  • Bardzo Przydatne