0

我有一个网站,人们在我的数据库中添加他们的网站,我已经这样做了,就像任何用户只能添加同一个网站的一个条目,例如如果 user1 添加:http ://site1.com那么其他用户不能添加http:// site1.com他们显示该站点已经在 DB 中,现在有些人做这件事,他们制作子域http://subdomain.site1.com,然后他们可以添加已经在的主域的 UL 子域数数据库。现在我的问题是如何防止这种情况发生?使用 PHP

我的尝试:

 ....
      $check = mysql_query("SELECT * FROM domain WHERE url LIKE '%$suburl%'");
  if($check=="$url"){
 echo"You cannot add a subdomain";

 }
 ?>
4

1 回答 1

2

鉴于新条目是http://subdomain.site1.com,使用下面的函数获取site1.com零件(我在这里得到)并将结果放入LIKE '%%'

// Get the domain name from URL
function get_domain($url)
{
  $host = parse_url($url, PHP_URL_HOST);
  if (preg_match('/(?P<domain>[a-z0-9][a-z0-9\-]{1,63}\.[a-z\.]{2,6})$/i', $host, $regs)) {
    return $regs['domain'];
  }
  return false;
}

$host = get_domain("http://subdomain.site1.com");  // site1.com
$qry = mysql_query("SELECT * FROM domain WHERE url LIKE '%$host%' LIMIT 1");

if (mysql_num_rows($qry)) {
  // Site already exist
}
于 2012-05-28T18:00:14.867 回答