![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 642 Pomógł: 2 Dołączył: 9.03.2006 Ostrzeżenie: (30%) ![]() ![]() |
Witam,
Od dwóch dni główkuje jak zrobić poprawnie sprawdzenie danych przesyłanych w formularzu. Chcę aby były akceptowane tylko litery małe, duże + polski alfabet + spacje + cyfry Próbowałem :
Przegooglowałem, poczytałem, próbowałem na wiele sposobów ale nadal mi nie działa tak jak chcę. Ten post edytował Lethys 20.11.2011, 18:45:49 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
skoro chciałeś wykluczyć zestaw znaków i uzyskać jego odwrotność (wszystkie oprócz) to daszek stosuje się na początku klamry [^znaki], przy czym nie myl tego daszka z daszkiem na początku wyrażenia regularnego, gdzie on oznacza, iż wyrażenie ma się dopasowywać od początku... znak "*" znaczy tyle co {0,}, czyli 0 lub wiele, tutaj raczej chciałeś zastosować znak "+" który znaczy {1,} co najmniej 1 znak (zwróć uwagę na przecinek)... wszystko zależy, jak dokładnie chcesz sprawdzać te adresy - można by wymodzić jakieś ogólne wyrażenie ale to wcześniej ktoś musiałby podać jakieś ograniczenia....
Jeśli chodzi o SQL iniection to przede wszystkim zainteresuj się PDO i funkcjami prepare, lub chociaż mysqli i też funkcjami prepare... Zależy, jak daleko chcesz iść ze sprawdzaniem poprawności adresów - czasami ktoś się pomyli i choć adres strukturę będzie miał poprawną to nie będzie nigdzie prowadził - można to też sprawdzić ale to inny temat... ogólne wyrażenie na adres mogło by wyglądać (przy czym nie chce mi się sprawdzać jakie są najdziwniejsze znaki i bodajże znak ";" chyba też może występować, podobnie jak procenty czy polskie znaki (wszystko zależy, kto z jakiej przeglądarki skopiuje i jakie kodowanie otrzyma..) przykładowe wyrażenie mogło by wyglądać np. w ten sposób: Kod /^(?:https?\:\/\/)?(?:[wW]{3}\.)?(?!.*(?:[\-\/\.]){2,})[a-zA-Z0-9_\-\.]{2,}\.[a-zA-Z]{2,5}(?:\/[a-zA-Z0-9_!\/\|\+\%\.\-\?\=\&\#]*)?$/ (?!.*(?:[\-\/\.]){2,}) - to znaczy, że nigdzie dalej ma się nie dopasować do występujących pod rząd naraz 2 znaków "-" lub "." lub "/" jeśli jest jeszcze część poza domeną to reszta musi się zaczynać od znaku "/" tam sobie możesz pododawać jakieś dozwolone / zabronione znaki... SKORO LINKI WKLEJAJĄ Z ZEWNĄTRZ, TO ZAŁOŻYŁEM, IŻ DOMENA W LINKU TEŻ MUSI BYĆ [a-zA-Z0-9_\-\.]{2,}\.[a-zA-Z]{2,5}, choć teraz wprowadzili, że i w domenie może być nawet cyrylica ^^, więc zamiast tego można by jakiś bardziej ogólny schemat napisać... zależy co chcesz ^^ |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 21:59 |