de_gie
5.02.2013, 21:17:05
Witam mam kod
i chciałbym żeby była możliwość jeszcze wstawienia tylko znaku - . Tylko tak jak w domenach. Tylko żeby znak - nie mógł pierwszy występować. Czyli dopuszczalnie np. www.dar-car.pl a zabronione np www.-dar.pl. Nie mogę tego ogarnąć proszę o pomoc.
ShadowD
5.02.2013, 21:22:10
if ( !preg_match('/^(http|ftp)([s]{0,1}):\/\/([a-z0-9]{1})((([a-z0-9-]*[-]{2})|([a-z0-9])*|([a-z0-9-]*[-]{1}[a-z0-9]+))*)((\.[a-z0-9](([a-z0-9-]*[-]{2})|([a-z0-9]*)|([a-z0-9-]*[-]{1}[a-z0-9]+))+)*)(\.([a-z0-9]{2,6})){0,1}((:[0-9]){0}|(:[1-9]{1}[0-9]*))\//iu', $url) )
Cały adres, by nie było za łatwi sam sobie już odnajdź samą domenę. ;-)
Na przyszłość polecam -
http://webhosting.pl/15.przydatnych.wyraze...gularnych.w.PHP tutaj znajdziesz inne przykłady.
de_gie
5.02.2013, 21:27:36
takie szlaczki to ja widziałem ale to nic mi nie mówi co mam z tego wybrać żeby skrypt przyjmował - i nie przyjmował go na początku.
ShadowD
5.02.2013, 21:39:23
Nie da się poprawnie zapisać tego w 2-3 znaczkach bo jest kilka przypadków o ile się nie mylę ten opisuje wszystkie, wystarczy usunąć kawałek z przodu mówiący o http(s):// i tyłu mówiący o porcie.
Popatrz na to i spróbuj rozszyfrować to jest bardzo proste, a w przyszłości sam będziesz pisać takie "szlaczki".
de_gie
5.02.2013, 21:43:15
ale ja nie potrzebuje by dokładnie sprawdzał wszelkie przypadki mi chodzi by użytkownik oprócz liter i cyfr mógł użyć -
ShadowD
5.02.2013, 21:51:17
No tak ale masz opcje:
n.pl
n-n.pl
A musisz wykluczyć:
-n.pl
-.pl
n-.pl
Tak? A tego już nie rozwalisz 1 przypadkiem szczególnie, że .pl też się tyczy tym zasadom, a jeśli do tego dochodzą n.com.pl to masz kolejne opcje. Nawet jeśli chcesz walidować samą nazwę domeny to i tak masz kilka przypadków:
n
n-n
I wykluczyć:
-n
n-
Tak? Jeśli mam rację to i tak sprowadzi się to do użycia operatora "lub" ("|"). A nawet jak się mylę to odpowiedz na pytanie "jak zrobić by się nie zaczynał od -" masz w tym "szlaczku", podpowiem że nie sprawdza on czy jest tam "-" a wymusza użycie poprawnego znaku ZAWSZE na początku - postaraj się to zrozumieć a w przyszłości będzie Ci łatwiej. Nie chcę Cie męczyć a jedynie dać przysłowiową wędkę zamiast ryby.
de_gie
7.02.2013, 11:17:43
dzięki zrobiłem
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.