Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [js] Walidacja formularzy, sprawdza czy nie ma wulgaryzmów
bonio89
post
Post #1





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 30.09.2009

Ostrzeżenie: (0%)
-----


Witam!
Piszę właśnie ankietę przeznaczoną dla młodzieży i chciałbym aby w polu miasto itp nie było wulgaryzmów.
zastanawiam się jak zadeklarować zmienną aby można było porównywać z nią tekst formularza.

Chciałbym aby to było mniej więcej w ten sposób:
  1. var qwe=tutaj lista wulgaryzmów;
  2.  
  3. if (!f.miasto.value.match(qwe))
  4. bledy += 'Musisz wpisać miasto!\n';


Ten post edytował bonio89 19.03.2010, 16:37:19
Go to the top of the page
+Quote Post
kamil4u
post
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Najłatwiej zrobić pętlę po wszystkich elementach z tablicy wulgaryzmów i zastosować indexOf ew. wyrażenie regularne.
Go to the top of the page
+Quote Post
skowron-line
post
Post #3





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


@kamil4u trochę dużo kombinacji by było.
http://forum.php.pl/index.php?showtopic=10...mp;#entry525800
Go to the top of the page
+Quote Post
kamil4u
post
Post #4





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


@skowron-line: chyba się nie zrozumieliśmy, albo ja Ciebie (IMG:style_emoticons/default/smile.gif) . To co podałeś jest dokładnie to o czym myślałem, tylko zamiast search można użyć indexOf(no i w tablicy byłyby zwykłe stringi(głupio brzmi (IMG:style_emoticons/default/smile.gif) )), a samo search, jest właśnie jedną z funkcji korzystająca z wyrażeń regularnych(w tym przypadku są one banalne)[czyli część mojej poprzedniej wypowiedzi: ew. wyrażenie regularne ]

Ten post edytował kamil4u 19.03.2010, 21:05:01
Go to the top of the page
+Quote Post
skowron-line
post
Post #5





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


@kamil4u teraz chyba ja nie rozumiem chcesz każde przekleństwo osobno do tablicy wsadzać (IMG:style_emoticons/default/questionmark.gif) i wszystkie odmiany i wariację (IMG:style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
kamil4u
post
Post #6





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


W kodzie do którego podałeś link też musisz podać przekleństwa...
Bez jakieś bazy przekleństw, czy to w formie tablicy czy nie, nie da się tego poprawnie zrobić. Możesz spr. np. tylko tematy danego słowa, ale czasami to ogranicza użytkownika.

Ten post edytował kamil4u 20.03.2010, 11:02:47
Go to the top of the page
+Quote Post
skowron-line
post
Post #7





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Tablica wyrażeń regularnych pasujących do danego przekleństwa, jest sporo wariacji danego wyrazu dla przykładu
podstawa
kurw
-a
-wisko
-ewskie
i pewnie inne jakich nie znam

Ale może mówimy o tym samym tylko nie możemy się zrozumieć.
Go to the top of the page
+Quote Post
kamil4u
post
Post #8





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Cytat
Ale może mówimy o tym samym tylko nie możemy się zrozumieć.

Prawdopodobnie tak jest (IMG:style_emoticons/default/smile.gif)

Nie da się w 100% ograniczyć przeklinania na stronie korzystając ze skryptu zaczynając od: kurrwa, a kończąc: na ku*wa. Żadnym wyrażeniem regularnym tego nie załatwisz. A jak im bardziej będziesz ingerował w tego typu zachowania prze skrypt, tym więcej osób się zdenerwuje(gdy nie będą mogli napisać jakiegoś słowa, bo skrypt uzna, ze jest to przekleństwo ), tak więc jednym rozsądnym rozwiązaniem jest moderacja przez moderatorów,a taki skrypt mógłby istnieć tylko z powiązaniem ze stałą tablicą przekleństw(bez wyrażeń regularnych )

Jeśli mimo to chciałoby się wykonać taki skrypt, który blokował by większość poprawnie napisanych przekleństw, zrobił bym 2-wymiarową tablicę, gdzie był by zapisany temat i odpowiednie końcówki do danego słowa. Najpierw byśmy szukali tematu, a potem w razie spr końcówki(zaoszczędzi to czas, gdybyśmy od razu spr wszystkie słowa z końcówkami). Mogło by to wyeliminować pomyłki ze strony skryptu, jednak nie ma takiego użytkownika co by sobie z takimi zabezpieczeniami nie poradził.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 08:14