この問題に関しては、私は助けていただければ幸いです。PHP - サブドメインではなく、ドメインを許可する
登録フォームを作成していますが、私が確認するユーザードメインのフィールドはFILTER_VALIDATE_URL
で有効であり、それはdns_check_record
で存在します。私がいる問題は、これらの2つの方法を使用しても、サブドメインが、私はしたくないフォームに提出することを可能にするということですが
。
誰もドメインを許可する方法を知っていますが、サブドメインは許可していませんか?
私はhttp://syntax.cwarn23.net/PHP/Strip_URL_to_Domainから、以下の機能をテストしてみた:
function domain($domainb)
{
$bits = explode('/', $domainb);
if ($bits[0]=='http:' || $bits[0]=='https:')
{
$domainb= $bits[2];
} else {
$domainb= $bits[0];
}
unset($bits);
$bits = explode('.', $domainb);
$idz=count($bits);
$idz-=3;
if (strlen($bits[($idz+2)])==2) {
$url=$bits[$idz].'.'.$bits[($idz+1)].'.'.$bits[($idz+2)];
} else if (strlen($bits[($idz+2)])==0) {
$url=$bits[($idz)].'.'.$bits[($idz+1)];
} else {
$url=$bits[($idz+1)].'.'.$bits[($idz+2)];
}
return $url;
しかし、このようなwww.domain.uk.comがuk.comとして表示されるように任意のドメインとして完璧ではありません(私は知りません共通ドメイン拡張)。
誰かが上記の機能よりも優れた方法を知っていますか?
あなたはかなり緩く言葉*サブドメイン*を使用 –
明示的な '.co.uk'、' .com.br'、などなど、物事をチェックする必要があります。 'john @ customers.example.com'のようなアドレスを拒否しますか? –
申し訳ありません私はそれも何かをブロックしたいと思っていました。 – James