![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 121 Pomógł: 2 Dołączył: 22.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie,
Czy jest mozliwosc, aby np wpisany adres z duzych liter przekonwertowac poprzez routing do malych? Jezeli tak to w gdzie i w ktorym miejscu trzeba to ustawic. Ten post edytował janek9 25.08.2009, 10:44:20 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 8.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Hmm, nie czaję - przecież wpisanie np. HTTP://WORTAL.PHP.PL w przeglądarce spowoduje iż sama zamieni adres na małe litery...
Sprecyzuj o co Ci chodzi (IMG:style_emoticons/default/smile.gif) . |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 121 Pomógł: 2 Dołączył: 22.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Hmm, nie czaję - przecież wpisanie np. HTTP://WORTAL.PHP.PL w przeglądarce spowoduje iż sama zamieni adres na małe litery... Sprecyzuj o co Ci chodzi (IMG:style_emoticons/default/smile.gif) . a wiec tak: w akcji pobiera mi nazwe uzytkownika w profilu np. nazwaportalu.pl/user/lolek. I gdy wpisze nazwaportalu.pl/user/LOLEK wowczas to nie jest to samo. Wowczas powoduje mi to ze samego siebie mozna dodac do znajomych bo mam tak to zaprogramowane. W akcji pobiera z requesta np. 'login' i ta wartosc wedruje do modelu gdzie jest porownywana. Czyli z tego wynika ze lolek a LOLEK to nie jest to samo. Dlatego chcialbym wiedziec czy w routingu idzie takie cos ustawic, aby obojetnie co sie wpisze ustawialo zamiast LOLEK na lolek... |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
Możesz ustawić w routingu, żeby Ci nie traktował LOLKA jak lolka (użyj requirements), ale jeśli chcesz konwertować, to proponuję jakiś filtr przed odpaleniem akcji. Ja mam zawsze jeden filtr o nazwie setupFilter, w którym dodatkowo konfiguruję aplikację.
Pozdrawiam |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 8.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Nie możesz w akcji po pobraniu loginu użyć na zmiennej 'login' funkcji $login = strtolower( $request->getParameter('login') )?
PS. Jeżeli rozpoznajesz użytkownika po loginie (a nie np. po id) to pole 'login' w bazie powinno mieć dodatkowo atrybut UNIQUE (no wiadomo, ale tak napiszę dla przypomnienia (IMG:style_emoticons/default/winksmiley.jpg) )... poza tym zapoznaj się z sfPropelRoute i $this->getObject() w akcji, może Ci conieco przyspieszyć projektowanie (IMG:style_emoticons/default/winksmiley.jpg) . Ten post edytował Ravv 25.08.2009, 11:44:27 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 121 Pomógł: 2 Dołączył: 22.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
Dobra jezeli chce w requirements ustawic, zeby tylko byly male znaki..jak to napisac w requirements?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 1 Dołączył: 28.07.2009 Ostrzeżenie: (0%) ![]() ![]() |
Poczytaj o wyrażeniach regularnych, może to coś Ci pomoże. Ale nie wiem, czemu chcesz ograniczać usera i zabraniać mu podawania wielkich liter. Po prostu przy pobieraniu z bazy, parametr z requesta zamieniaj na małe znaki.
Ale jest też druga sprawa. Pomyślałeś o tym, że jeśli ktoś będzie miał konto LoLeK, a Ty wszystko bedziesz zamieniał na małe litery (a w bazie będą mieszane), to co wtedy? Nie znajdzie usera. Chyba, że z poziomu zapytania do bazy zamienisz też te pobierane dane na małe litery, ale nie wiem czy tak się da. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 114 Pomógł: 24 Dołączył: 18.01.2008 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Cytat Ale jest też druga sprawa. Pomyślałeś o tym, że jeśli ktoś będzie miał konto LoLeK, a Ty wszystko bedziesz zamieniał na małe litery (a w bazie będą mieszane), to co wtedy? Nie znajdzie usera. Chyba, że z poziomu zapytania do bazy zamienisz też te pobierane dane na małe litery, ale nie wiem czy tak się da. a jeżeli będzie miał w nicku "/"? (IMG:style_emoticons/default/smile.gif) Do tego się używa slugów |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 121 Pomógł: 2 Dołączył: 22.03.2009 Ostrzeżenie: (0%) ![]() ![]() |
No macie racje, ze nie znajdzie sie usera przy filtrowaniu nazwy..Ale nie wiem jak to zrobic, zeby zarowno Lolek byl traktowany tak samo jak LOLEK, albo LoLEk itp. Dzieki sfWidgetPropelUnique traktuje mi jako jeden i ten sam login, natomiast w przy pobieraniu tego parametru z requesta juz tak nie jest i traktuje te nazwy oddzielnie czyli jak oddzielnych userow.
a jeżeli będzie miał w nicku "/"? (IMG:style_emoticons/default/smile.gif) Do tego się używa slugów nie nie, ja ustawilem dozwolone znaki w nicku tak zeby pasowalo czyli pozbylem sie znakow specjalnych i tylko: litery(bez polskich), cyfry, myslnik i znak podkreslenia. Takze tutaj jest ok. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 13:09 |