Konfiguracja sprzętu i oprogramowania

Rozejrzyj się z kopią opinii zwrotnej listu. Tworzenie formularza opinii za pomocą standardowych narzędzi Joomla

Jednym z najbardziej pożądanych elementów strony była i pozostaje forma informacja zwrotna. Jest to wygodny sposób na nawiązanie kontaktu między odwiedzającym a właścicielem serwisu. Wielu webmasterów instaluje rozszerzenia innych firm w celu organizowania formularzy opinii, ale niewiele osób wie, że możesz je utworzyć i standardowe środki Joomla. Jest to o wiele bardziej poprawne, ponieważ każde rozszerzenie strony trzeciej wymaga oddzielna aktualizacja i śledzenie luk w zabezpieczeniach. W tym artykule pokażę, jak stworzyć odporny na spam formularz kontaktowy przy użyciu standardowych narzędzi Joomla.

Czasami zdarza się, że znasz Joomla od dłuższego czasu i wydajesz się, że całkiem dobrze znasz ten CMS, ale pewnego pięknego dnia odkrywasz Nowa okazja, który był w Joomla cały czas, ale nawet o nim nie wiedziałeś. To samo dzieje się z formularzem zwrotnym – jest, ale dość trudno go znaleźć.

Oprócz standardowego formularza zwrotnego radzę wypróbować mój moduł Wedal Joomla Callback. Jest bezpłatny i umożliwia przesłanie i przesłanie formularza kontaktowego bez przeładowywania strony.

Tworzenie formularza opinii za pomocą Joomla. Komponent „Kontakty”.

Powiedz mi szczerze, ile razy próbowałeś znaleźć standardowe komponenty Joomla, które są dostępne natychmiast po ich zainstalowaniu? Nie wiem dlaczego, ale skojarzenia są takie, że są to najprostsze, podstawowe rzeczy, które raczej nigdy nie będą potrzebne. W rzeczywistości dzieje się odwrotnie.

Joomla ma standardowy komponent o nazwie „Kontakty”. Łatwo zrozumieć, że pozwala wyświetlić listę kontaktów dla właścicieli witryn, menedżerów itp. na stronie. Powiesz: „Cóż, po co zajmować się całym komponentem, jeśli możesz po prostu utworzyć artykuł z niezbędnymi danymi kontaktowymi?”. Pod wieloma względami będziesz miał rację. Ale niestety, robiąc to samo, nigdy nie dowiesz się, że komponent „Kontakty” pozwala na stworzenie osobnego formularza zwrotnego dla każdej osoby kontaktowej. Już bardziej interesujące?

Na stronie serwisu możesz zobaczyć przykład takiego formularza:

Jak widać, wszystko, czego potrzebujesz do komunikacji, jest dostępne. Odwiedzający często korzystają z tej formy. Jak to stworzyć?

Komponent „Kontakty”. Dodawanie kontaktu.

Przejdź do "Komponenty" -> "Kontakty" i dodaj nowy kontakt.

Pojawi się następujący formularz:

Tutaj określasz nazwę kontaktu i wybierasz użytkownika, który ma być powiązany z kontaktem. Zwykle jest to administrator.

W polu „Dodatkowe informacje” możesz określić tekst, który chcesz wyświetlić na stronie kontaktowej.

W zakładce „Dane kontaktowe” nie wypełniaj niczego.

W zakładce „Ustawienia wyświetlania” ukryj wszystko, co zbędne:

W zakładce „Formularz opinii” pokazujemy formularz:

Ratujemy.

Komponent „Kontakty”. Dodanie pozycji menu kontaktu.

Po utworzeniu kontaktu musisz pokazać go na stronie. W tym celu utwórz w menu pozycję „Kontakty” lub „Opinie” i wybierz dla niej typ „Kontakty” –> „Kontakt”:

Następnie w formularzu, który pojawi się po prawej stronie, wybierz utworzony przez nas kontakt:

I oszczędzamy.

To wszystko. Możesz zajrzeć do naszego formularza na stronie.

Ważny! Koniecznie sprawdź funkcjonalność otrzymanego formularza opinii. Czasami, z powodu złe ustawienia wysyłanie listów, poczta nie jest wysyłana. To nie jest błąd formularza kontaktowego, ale błąd ustawieńZarządzanie pocztą Joomla (zobacz ustawienia ogólneJoomla).

Tworzenie formularza opinii za pomocą Joomla. Ochrona przed spamem.

Zdarza się, że boty spamujące wędrujące po Internecie znajdują Twój formularz, a ponieważ pola w nim są standardowe, zaczynają wysyłać spam do właścicieli witryn. Za pierwszym razem, gdy formularz jest właśnie tworzony, radzę nie chronić go przed spamem. Ochrona powinna być używana tylko wtedy, gdy naprawdę dręczą Cię reklamy, ponieważ ochrona przed spamem komplikuje formularz i zmniejsza lojalność prawdziwych osób, które z niej korzystają.

Jak zabezpieczyć formularz opinii przed spamem? Joomla 2.5 posiada wsparcie dla prawdopodobnie najlepszej captcha (kod z obrazka) reCAPTCHA. Algorytm aktywacji wygląda następująco:

1) Zdobycie kluczy. Aby uzyskać klucze aktywacyjne, musisz przejść do strony http://www.google.com/recaptcha/whyrecaptcha i kliknij przycisk „Zarejestruj się teraz”. Zostaniesz poproszony o zalogowanie się na swoje konto Google (usługa reCaptcha jest własnością Google). Jeśli nie, musisz się zarejestrować. Po autoryzacji zostaniesz poproszony o podanie adresu strony internetowej:

A potem zostaną wygenerowane dwa klucze.

Cała procedura uzyskania kluczy i korzystania z nich jest bezpłatna.

2) Przejdź do menedżera wtyczek witryny i znajdź tam wtyczkę „CAPTCHA - reCAPTCHA”.

W jego ustawieniach widzimy pola do wpisywania kluczy:

Wprowadzamy klucze, aktywujemy wtyczkę i zapisujemy.

3) Przejdź do komponentu kontakty i otwórz ustawienia:

W opcji „Włącz CAPTCHA” wybierz „CAPTCHA - reCAPTCHA”. Ratujemy. Gotowy. Teraz captcha pojawi się w naszym formularzu opinii.

tak poza tym, reCAPTCHA można wykorzystać nie tylko w formularzu opinii, ale także podczas rejestracji użytkowników (aktywowane w ustawieniach menedżera użytkowników).

To wszystko. W 5 minut możesz stworzyć prosty i przyjazny dla użytkownika formularz kontaktowy dla swojej witryny Joomla bez uciekania się do rozszerzeń stron trzecich.

W kontakcie z

Jednym z najczęstszych zadań w praktyce jest wdrożenie formularza zwrotnego. Tobish pisze swój kod HTML, stylizuje go w CSS, tworzy Skrypt PHP ale która przetworzyłaby dane otrzymane od użytkownika i wysłała je na naszą pocztę, napisanie skryptu JS, który sprawdziłby formularz pod kątem adekwatności danych wejściowych, chroniąc nasze potomstwo przed spamem, tak aby nasz skrzynka pocztowa nie upadł po atakach botów.

Wszystkie powyższe punkty zostaną rozważone w naszej recenzji i szczegółowo skomentowane.

Zacznijmy więc tworzyć formularz opinii:

HTML

Przede wszystkim piszemy kod HTML, ustala on pola, które użytkownik wypełni. Zostaną opracowane w przyszłości. Kod formularza wygląda tak:

< form method= "post" action= "mail.php" > < div class = "left" > < label for = "name" >Nazwa: < input maxlength= "30" type= "text" name= "name" /> < label for = "phone" >Telefon: < input maxlength= "30" type= "text" name= "phone" /> < label for = "mail" >E-mail: < input maxlength= "30" type= "text" name= "mail" /> < div class = "right" > < label for = "message" >Wiadomość: < textarea rows= "7" cols= "50" name= "message" > < input type= "submit" value= "Wysłać" />

A teraz wizualnie wygląda to tak:

Zgadzam się, na razie wszystko jest brzydkie i nic nie jest jasne, ale dopiero zaczęliśmy.

Rozważ szczegółowo powyższy kod:

  • < form method= "post" action= "mail.php" > …


    Aby utworzyć formularz, musisz użyć tagu formularza. To on określa początek i koniec formularza dla interpretera kodu. Jak każdy tag, posiada cały zestaw atrybutów, ale do działania formularza wymagane są tylko dwa, są to metoda (metoda wysyłania żądania do serwera, poczta jest standardowo używana dla formularzy) oraz akcja (wskazuje ścieżka do pliku obsługi formularzy, czyli w tym pliku będzie zawierała skrypt PHP, który następnie prześle nam wartości wpisane przez użytkownika pocztą, w naszym przypadku widzimy, że plik ten nazywa się mail.php i to znajduje się w tym samym katalogu witryny, co strona, którą rozważamy).
  • < input maxlength= "30" type= "text" name= "name" />


    Dalej mamy dane wejściowe. W rzeczywistości są to same pola formularza, w których użytkownicy będą wprowadzać potrzebne nam informacje (typ = „text” oznacza, że ​​będzie to tekst). Atrybut maxlength określa, ile znaków może wpisać użytkownik w dane pole formularza. Najważniejszym atrybutem jest nazwa - określa nazwę konkretnego pola. To pod tymi nazwami skrypt PHP będzie dalej przetwarzał wchodzące do niego informacje. Jeśli chcesz, możesz również ustawić atrybut zastępczy, który wyświetla tekst wewnątrz pola, który znika po umieszczeniu w nim kursora. Jednym z problemów z symbolem zastępczym jest to, że nie jest obsługiwany przez niektóre starsze przeglądarki.
  • < label for = "name" >Nazwa:


    Używane, jeśli porzuciliśmy symbole zastępcze. Zwykła etykieta pola, atrybut for mówi, do którego pola się odnosi dany podpis. Wartość wskazuje na nazwę interesującej nas dziedziny.
  • < textarea rows= "7" cols= "50" name= "message" >


    Podobnie jak wejście przeznaczone jest do wprowadzania informacji przez użytkownika, tylko tym razem pole jest wyostrzane dla długich wiadomości. Rows określa rozmiar pola w liniach, cols w znakach. Generalnie ustalają wysokość i szerokość naszego pola.
  • < input type= "submit" value= "Wysłać" />


    Type="submit" informuje nas, że jest to przycisk do przesłania formularza, a wartość określa tekst, który będzie się znajdował wewnątrz tego przycisku.
  • < div class = "right" >


    używane tylko do dalszego projekt wizualny formularze.

css

Aby nasz formularz opinii wyglądał reprezentacyjnie, należy go zaprojektować. Aby uzyskać następujący wynik:

Użyliśmy tego kodu:

formularz ( tło: #f4f5f7; dopełnienie: 20px; ) formularz . lewo, formularz. prawo ( display: inline- block; vertical- align: top; width: 458px; ) form . right ( padding- left: 20px; ) label ( display: block; font- size: 18px; text- align: center; margin: 10px 0px 0px 0px; ) input, textarea ( border: 1px solid #82858D; padding: 10px; rozmiar czcionki: 16px; szerokość: 436px; ) textarea (wysokość: 98px; margines dolny: 32px; ) input[ type= "submit" ] (szerokość: 200px; float: right; border: none; background: #595B5F; kolor: #fff; przekształcenie tekstu: wielkie litery; )

Nie widzę sensu w szczegółowym opisie CSS, zwrócę tylko uwagę na kluczowe punkty:

  1. Nie jest konieczne pisanie projektu dla każdego tagu w formularzu. Spróbuj zbudować selektory w taki sposób, aby w kilku linijkach kodu stylizować wszystkie potrzebne elementy.
  2. Nie używaj dodatkowych znaczników według typu do łamania linii i tworzenia wcięć < br>, < p> i tak dalej, zadania te są doskonale obsługiwane przez CSS z wyświetlaniem właściwości: blok i margines z dopełnieniem. Więcej o tym, dlaczego nie powinieneś używać < br> w układzie ogólnie można przeczytać tag br w artykule, ale czy to naprawdę jest potrzebne? .
  3. Nie używaj układu tabelarycznego dla formularzy. Jest to sprzeczne z semantyką tego tagu, a wyszukiwarki uwielbiają kod semantyczny. Do uformowania wizualnej struktury dokumentu wystarczą nam znaczniki div oraz wyświetlanie: właściwości inline-block ustawione w CSS (układa bloki w rzędzie) oraz vertical-align: top (nie pozwala na ich rozproszenie ekranu), ustawiamy im wymaganą wysokość i voila, nic zbędnego i wszystko jest ułożone tak, jak potrzebujemy.

Tym, którzy chcą zaoszczędzić czas na projektowaniu stron internetowych, radzę skorzystać z frameworków CSS przy tworzeniu stron internetowych, zwłaszcza tych pisanych samodzielnie. Moim wyborem w tym zakresie jest Twitter Bootstrap. Można obejrzeć lekcję projektowania formularzy przy jej użyciu.

PHP

Cóż, nadszedł czas, aby nasz formularz działał poprawnie.

Wchodzimy do naszego katalogu głównego serwisu i tam tworzymy plik mail.php, do którego wcześniej podaliśmy ścieżkę w atrybucie action znacznika formularza.

Docelowo jego kod będzie wyglądał tak:

Twoja wiadomość została wysłana poprawnie \" javascript: history.back()\" >Wróć

" ; if (! pusty ($_POST [ "nazwa" ] ) i ! pusty ($_POST [ "telefon" ] ) i ! pusty ($_POST [ "poczta" ] ) i ! pusty ($_POST [ "wiadomość" ] ) ) ( $name = przycinanie (tagi_paska ($_POST [ "nazwa" ] ) ) ) ) ; $telefon = przycinanie (tagi_paska ($_POST [ "telefon" ] ) ) ; $mail = przycinanie (tagi_paska ($_POST [ "poczta" ) ) ) ) ; $message = trim (strip_tags ($_POST [ "wiadomość" ] ) ) ; mail (, , "Wysłano do Ciebie: " . $nazwa . "
Jego numer: " . $telefon . "
Jego poczta: " . $mail . "
Jego przesłanie: „
. $wiadomość , ) ; Echo "Twoja wiadomość została wysłana poprawnie!
Wkrótce otrzymasz odpowiedź
$wstecz"
; Wyjście; ) else ( echo ; exit ; ) ?>

Możesz pominąć omówienie części HTML i CSS tego dokumentu. Zasadniczo jest to zwykła strona witryny, którą możesz zaprojektować według własnego uznania. Rozważmy najważniejszą jego część - skrypt PHP do przetwarzania formularza:

$wstecz = "

\" javascript: history.back()\" >Wróć

" ;

Za pomocą tej linii tworzymy link do powrotu do poprzedniej strony. Ponieważ nie wiemy z góry, z której strony użytkownik przejdzie na tę, odbywa się to za pomocą małej funkcji JS. W przyszłości będziemy po prostu odwoływać się do tej zmiennej, aby wyświetlić ją w potrzebnych nam miejscach.

if (! pusty ($_POST [ "nazwa" ] ) i ! pusty ($_POST [ "telefon" ] ) i ! pusty ($_POST [ "poczta" ] ) i ! pusty ($_POST [ "wiadomość" ] ) ) ( // wewnętrzna część handlera) jeszcze ( echo "Proszę wypełnić wszystkie pola, aby wysłać wiadomość! $back "; Wyjście; )

Tutaj zapinamy formularz sprawdzania wypełnienia pól. Jak się domyślasz, w części $_POST["name"] wpisujemy wartość atrybutu name naszych danych wejściowych w cudzysłowie.

Jeżeli wszystkie pola są wypełnione, to skrypt rozpocznie przetwarzanie danych w swojej wewnętrznej części, ale jeżeli choć jedno pole nie zostało wypełnione, to na ekranie użytkownika wyświetli się komunikat z prośbą o wypełnienie wszystkich pól formularza echo "Aby wysłać wiadomość, wypełnij wszystkie pola! $back" oraz link do poprzedniej strony, którą utworzyliśmy w pierwszej linii.

Następnie wklej go do wnętrza modułu obsługi formularza:

$nazwa = przyciąć (tagi_paska ($_POST [ "nazwa" ] ) ) ); $telefon = przycinanie (tagi_paska ($_POST [ "telefon" ]) ) ); $mail = przyciąć (tagi_paska ($_POST [ "poczta" ]) ) ; $wiadomość = przyciąć (tagi_paska ($_POST [ "wiadomość" ] ) ) );

W ten sposób usunęliśmy dane wprowadzane przez użytkownika ze znaczników HTML i dodatkowych spacji. To pozwala nam chronić się przed otrzymywaniem złośliwy kod w przesłanych do nas wiadomościach.

Kontrole mogą być skomplikowane, ale to zależy od Ciebie. Ustawiliśmy już minimalną ochronę po stronie serwera. Resztę zrobimy po stronie klienta za pomocą JS.

Nie polecam całkowicie rezygnować z ochrony formularzy po stronie serwera na rzecz JS, ponieważ chociaż jest to niezwykle rzadkie, zdarzają się unikalne osoby z wyłączonym JS w przeglądarce.

Po wyczyszczeniu tagów dodaj wiadomość wysyłającą:

Poczta ( „poczta_do_odbierania_wiadomoś[email protected], „E-mail z adresu twoja_witryny”, „Napisałem Ci:” . $nazwa . "
Jego numer: " . $telefon . "
Jego poczta: " . $mail . "
Jego przesłanie: „
. $wiadomość , „Typ treści:text/html;charset=windows-1251”) ;

To właśnie ta linia jest zaangażowana w tworzenie i wysyłanie do nas wiadomości. Wypełnia się go w następujący sposób:

  1. "[email protected]" - wstaw tutaj swoją pocztę między cytatami
  2. „E-mail z adresu twoja_witryny” to temat wiadomości, która zostanie wysłana na pocztę. Tutaj możesz napisać wszystko.
  3. "Napisałem: ".$nazwa." < br /> Jego numer to: „.$phone”. < br /> Jego poczta: „.$mail”. < br /> Jego komunikat to: ".$message - tworzymy tekst samej wiadomości. $name - wstawiamy informacje wypełnione przez użytkownika wchodząc w pola z poprzedniego kroku, w cudzysłowie opisujemy co to pole oznacza, z etykietka < br /> robimy podział wiersza, aby wiadomość jako całość była czytelna.
  4. Content-type:text/html;charset=windows-1251 - na końcu znajduje się jednoznaczne wskazanie typu danych przesyłanych w wiadomości oraz ich kodowania.

WAŻNY!

Kodowanie określone w „nagłówku” dokumentu ( < meta http- equiv= "Content-Type" content= "tekst/html; charset=windows-1251" /> ), kodowanie z wiadomości Content-type:text/html;charset=windows-1251 i ogólnie kodowanie pliku PHP musi się zgadzać, w przeciwnym razie w wiadomościach otrzymanych pocztą zamiast liter rosyjskich lub angielskich „szalone słowa " zostanie wyświetlone.

Wiele z nich nie określa wprost kodowania wysyłanej wiadomości, ale w niektórych klienci poczty z tego powodu w przyszłości mogą pojawić się problemy (pocztą docierają nieczytelne listy), więc mimo wszystko polecam to określić.

Sprawdzenie formularza pod kątem adekwatności danych wejściowych

Aby użytkownicy przypadkowo nie przegapili pól i wypełnili wszystko poprawnie, warto sprawdzić dane wejściowe.

Można to zrobić zarówno w PHP po stronie serwera, jak iw JS po stronie klienta. Ja korzystam z drugiej opcji, ponieważ w ten sposób osoba może od razu dowiedzieć się, co zrobił źle i poprawić błąd bez robienia dodatkowych przejść między stronami.

Kod skryptu wstawiamy do tego samego pliku, w którym mamy część HTML formularza. W naszym przypadku będzie to wyglądać tak:

< script>function checkForm(formularz) ( var nazwa = formularz. nazwa. wartość; var n = nazwa. match(/ ^[ A- Za- zA- Za-z] * [ A- Za- zA- Za-z] + $/ ) ;jeśli (! n) ( alert( "Nazwa została wpisana niepoprawnie, proszę poprawić błąd") ; zwróć fałsz ; ) var telefon = formularz. telefon. wartość; var p = telefon. dopasuj(/ ^[ 0 - 9 + ] [ 0 - 9 - ] * [ 0 - 9 - ] + $/ ) ; jeśli (! p) ( alert( "Telefon wpisany niepoprawnie") ; zwróć fałsz ; ) var poczta = formularz. Poczta. wartość; var m = poczta . dopasuj(/ ^[ A- Za- z0- 9 ] [ A- Za- z0- 9 \. _- ] * [ A- Za- z0- 9 _] *@ ([ A- Za- z0- 9 ] + ([ A- Za- z0- 9 - ] * [ A- Za- z0- 9 ] + ) * \. ) + [ A- Za- z] + $/ ); jeśli (! m) ( alert( „Wprowadzony adres e-mail jest nieprawidłowy, popraw błąd”) ; zwróć fałsz ; ) zwróć prawdę ; )

Cóż, teraz zwykła analiza:

Do, tak, że kiedy klikniesz przycisk prześlij w formularzu, zostanie on zatwierdzony zawieszamy uruchomienie naszego skryptu na tagu formularza:

< form method= "post" action= "mail.php" onSubmit= "return checkForm(this)" >

Teraz punkt po punkcie bierzemy skład czeku:


Jak widać, taki mini czek jest napisany dla każdego z naszych pól. Zaznaczyłem czek na jednym polu na zrzucie czerwonym kwadratem, dla innych pól ma podobną strukturę, a jeśli potrzebujesz dodać jakieś pole lub je usunąć, możesz to teraz łatwo zrobić.

· Igor Żurawlew

Igor Zhuravlev, Andrey Kurosh, Alexey Chumachenko, Polina Vafina

Igor Żurawlew, Polina Wafina

Otrzymałeś e-mail, gdzie w kopii jest kilku odbiorców. Co się stanie po kliknięciu przycisku Odpowiedz wszystkim?

Zostanie utworzony list, w którym w polu „Do” zostanie wskazany adres, z którego otrzymałeś oryginał listu

· Zostanie utworzony list, w którym odpowiednio w polach „Do” i „DW” zostaną wskazani wszyscy odbiorcy wymienieni w pierwotnym piśmie

E-mail zostanie utworzony z pustym polem „Do”

Zostanie utworzony list, w którym w polu „Kopiuj” zostaną wskazani odbiorcy wymienieni w pierwotnym piśmie

Otrzymałeś wiadomość e-mail z określonego adresu. W polu „Kopiuj” jest jeszcze kilka adresów. Chcesz odpowiedzieć tylko osobie, z której adresu przyszedł list. Który przycisk należy nacisnąć?

· Odpowiedź

· Odpowiedz wszystkim

· Utwórz wiadomość

Do przodu

Do czego służy przycisk Przejdź do?

· Aby ustawić przypomnienie kalendarza

Aby przygotować odpowiedź w imieniu kierownika

· Aby zawsze oznaczać e-mail jako nieprzeczytany

Aby przekazać list do podwładnego

Który termin jest zdefiniowany poniżej?

· Otwórz dane

Paszport otwartych danych

666. Definicja jakiego pojęcia jest podana poniżej:

Otwórz dane

Otwarte dane rządowe

· Paszport otwartych danych

W jakim formacie są dane nieprzygotowane do otwartego zbioru danych do publikacji w Portalu Otwartych Danych? Federacja Rosyjska?

format XML

· Format DOC

Format CSV

Która z ikon pozwoli Ci uruchomić aplikacja oprogramowania stworzyć otwarty zbiór danych w formacie CSV?

Tabela 1

Tabela 2

· Tabela 1

· Tabela 2

Która tabela spełnia wymagania dotyczące publikowania otwartego zbioru danych?

Tabela 1

Tabela 2

· Tabela 1

· Tabela 2

Nie tak dawno temu natknąłem się na działającą metodę, która umożliwia atakującemu wysyłanie spamu w imieniu Twojej witryny za pomocą formularza zwrotnego Joomla (formularz kontaktowy). Ta funkcja nie stanowi luki w zabezpieczeniach i jest mało prawdopodobne, aby została naprawiona. W tym artykule opowiem o tym, jak stało się to możliwe i co musisz zrobić, aby chronić swoją witrynę.

Standardowy formularz opiniiJoomla

Joomla ma dość potężny i elastyczny komponent o nazwie „ Łączność”. Jest to standardowy komponent Joomla. Jest na każdej stronie, ponieważ. zainstalowany z CMS. Ten składnik umożliwia tworzenie i wyświetlanie kategorii kontaktów, kontaktów, formularzy opinii w witrynie, które umożliwiają kontakt z jednym lub drugim kontaktem. Kontakt to warunkowo użytkownik - osoba z serwisu.

Kiedyś napisałem artykuł o tym, jak stworzyć formularz opinii na stronie za pomocą standardowych narzędzi Joomla. Ta instrukcja aktualne nawet teraz. Pozwala stworzyć całkowicie odpowiedni formularz opinii bez instalowania rozszerzeń innych firm. Wysyłanie spamu jest możliwe przy użyciu tej formy, a także przy jednoczesnym zbiegu pewnych okoliczności, które zostaną omówione poniżej.

Wysyłanie spamu w imieniu witryny za pomocą formularza opiniiJoomla

Zdziwiłbyś się, jak łatwo było znaleźć sposób na wysyłanie spamu w imieniu witryny. Aby było to możliwe formularz opinii powinien wyglądać mniej więcej tak:

Tych. muszą być spełnione dwa warunki:

  1. Formularz nie jest chroniony przed botami spamującymi (reCaptcha lub inna metoda ochrony formularza nie jest włączona)
  2. W ustawieniach kontaktu aktywowana jest opcja „Wyślij kopię listu do nadawcy”. Dzięki temu w formularzu kontaktowym pojawia się odpowiedni checkbox (patrz rysunek powyżej).

Jeśli choć jeden z tych warunków nie zostanie spełniony, nie będzie problemów. Jeśli oba warunki są spełnione, to, jak mówią, uważaj na swoje ręce:

  1. Spambot odnajduje formularz kontaktowy. Nie ma ochrony przed spamem - możesz z niej skorzystać.
  2. Bot spamowy wykrywa, że ​​strona znajduje się w Joomla i że używany jest standardowy formularz kontaktowy. Co zaskakujące, istnieją boty, które doskonale to potrafią.
  3. Robot spamujący widzi pole wyboru umożliwiające wysłanie kopii wiadomości do nadawcy.
  4. Zastępuje spam bot w terenie E-mail adres z własnej listy mailingowej spamu, pole wiadomości jest wypełnione spamem. Nie ma znaczenia, jak wypełnione są pozostałe pola.
  5. Robot spamujący przesyła formularz i wielokrotnie powtarza ten proces, podstawiając coraz więcej adresów z własnej bazy danych w polu Email.

Co się dzieje w rezultacie? Joomla uważa, że ​​formularz został wypełniony przez osobę, która wskazała jego prawdziwy adres i chce skontaktować się z kontaktem z serwisu. Ponieważ pole wyboru wysyłania kopii listu jest zaznaczone, dwie osoby otrzymują listy z witryny: osoba, której adres jest powiązany z kontaktem, oraz osoba, której adres jest wpisany w polu E-mail.

Tak więc zastępując w polu E-mail różnych adresów, możesz wysyłać tysiące wiadomości w imieniu swojej witryny. Tak, możliwe, że kontakt to zobaczy, szybko zrozumie, co jest nie tak i zamknie lukę, ale bardzo prawdopodobne, że tak się nie stanie.

Konsekwencje takiego ataku dla witryny i firmy mogą być wyjątkowo nieprzyjemne, zwłaszcza gdy zainwestowano już dużo pieniędzy w promocję witryny. Jeśli spam jest wysyłany z adresu Twojej domeny, nie sądzę, aby konieczne było wyjaśnianie, jak zareagują odbiorcy.

Jak uchronić się przed tą podatnością?

Jak uchronić się przed tą podatnością? Podstawowy. Spraw, aby jeden z warunków opisanych powyżej nie został spełniony, a mianowicie.

Podobał Ci się artykuł? Podziel się z przyjaciółmi!
Czy ten artykuł był pomocny?
TAk
Nie
Dziekuję za odpowiedź!
Coś poszło nie tak i Twój głos nie został policzony.
Dziękuję Ci. Twoja wiadomość została wysłana
Znalazłeś błąd w tekście?
Wybierz, kliknij Ctrl+Enter a my to naprawimy!