Strona 1 z 1

[php] Wyrażenie regularne w nazwie domeny

: czw wrz 25, 2003 1:19 pm
autor: Krzysztof Aszkiełowicz
No więc chodzi mi o to, aby ułożyć wyrażenie regularne, do nazwy aliasów, czyli można stosować

Kod: Zaznacz cały

a-zA-Z0-9_
czyli mam tak
[php]<?php
eregi("[a-zA-Z0-9_]+", $_POST[alias]);
?>[/php]

lecz nie można stosować:

Kod: Zaznacz cały

~`!@#$%^&*()-+=[]{};':"<>?|,./\
i nie wiem jaki kod do tego ułożyć.

Re: [php] Wyrażenie regularne w nazwie domeny

: czw wrz 25, 2003 2:15 pm
autor: Łukasz Świerżewski
Potrzebne są do tego oczywiscie dwa dodatkowe znaczki: ^ i $. A kod powinien wyglądać tak:
[php]<?php
eregi("^[a-zA-Z0-9_]+$", $_POST[alias]);
?>[/php]
Powodzenia...

Re: [php] Wyrażenie regularne w nazwie domeny

: czw paź 02, 2003 7:52 pm
autor: Wojciech Jurewicz
Możesz użyć \w, co jest równoznaczne z [a-zA-Z0-9_]...

Re: [php] Wyrażenie regularne w nazwie domeny

: pt paź 03, 2003 9:49 am
autor: Łukasz Świerżewski
Ale w domenach można uzywać także myślinków (-), więc kod powinien wyglądać w skrócie tak:
[php]<?php
eregi("[\w-]+", $_POST[alias]);
?>[/php]
Pozdrawiam...

Re: [php] Wyrażenie regularne w nazwie domeny

: pt paź 03, 2003 5:27 pm
autor: Wankster
[php]<?php

/**
* Sprawdza poprawność nazwy domeny
*
* @param $strDomainName string Nazwa domeny do sprawdzenia
* @returns boolean
* @return Zwraca TRUE w przypadku, gdy podana nazwa domeny jest prawdziwa, albo FALSE gdy tak nie jest.
*/
function checkDomainName( $strDomainName )
{
if ( preg_match( '/^([a-z0-9-.]){1,80}$/i', $strDomainName ) )
{
return true;
}

return false;
}

/**
* Testowanie poprawności domeny
*
* @param $strDomainName string Nazwa domeny do sprawdzenia
*/
function checkDomain( $strDomainName )
{
print '<pre>' . $strDomainName . ' = ' . ( ( checkDomainName( $strDomainName ) === true ) ? 'poprawna' : 'niepoprawna' ) . '</pre>';
}

checkDomain( 'www.wp.pl' );
checkDomain( 'wp.pl' );
checkDomain( 'w-p.pl' );
checkdomain( 'serwis.wp.pl' );
checkDomain( 'www2.wp.pl' );
checkDomain( 'w*p.pl' );
checkDomain( 'w_p.pl' );
checkDomain( 'wp pl' );
checkDomain( 'WWW.serwis-onetu.ONET.pl' );

?>[/php]http://dev.miracle.pl/check.domain.m
Zdaje mi się albo w domenach nie można używać znaku podkreślenia (_) ;)

Re: [php] Wyrażenie regularne w nazwie domeny

: pt sty 02, 2004 9:46 am
autor: Krzysztof Aszkiełowicz
Sorry, że odświeżam temat :D

Teraz wszytskie aliasy mogą zawierać znaki:

Kod: Zaznacz cały

a-zA-Z0-9_\.-
ułożyłem taki kod:
[php]<?php
eregi("^[a-zA-Z0-9_\.-]+$", $_POST[alias]);
?>[/php]

Czy jest on prawidłowy nie zabardzo mam to jak sprawdzić.
Wankster pisze:Zdaje mi się albo w domenach nie można używać znaku podkreślenia (_) :wink:
To nie mają być domeny tylko aliasy. Sorry nie zauważyłem tego :P:P:D:D