不允许另一个条目

时间:2012-05-28 17:50:11

标签: php mysql

我有一个网站,人们在我的数据库中添加他们的网站,我已经做过像任何用户只能添加一个相同网站的条目,例如 如果user1添加:http://site1.com,那么没有其他用户可以添加http://site1.com他们会显示此网站已经在数据库中,现在有些人做了这个他们制作子域名的事情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";

 }
 ?>

1 个答案:

答案 0 :(得分:2)

如果新条目为http://subdomain.site1.com,请使用下面的函数获取site1.com部分(我得到它here)并将结果放在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
}