今天做项目的时候碰见一个需求:客户想要在自己的网站上加上一个查询域名的功能,就是我们买域名的时候在运营商官网上的那个东西.后来一查发现很简单,直接就可以获取到.
主要的知识点就是curl的简单的应用,curl是个很神奇的东西,要想用明白得用点心.由于我也是个初学者,就不在这里瞎扯了.
页面主要有两个:index.php(展示页面);test.php(返回的信息页面)
index.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form id="form" method="post" action="test.php">
<p><input type="text" name="dns"></p>
<p><select name="ext" id="slt"></select></p>
<input type="submit" value="查询">
</form>
</body>
<script>
var suffixarr=['.com','.cn','.tel','.mobi','.net','.org','.asia','.me',
'.com.cn','.net.cn','.org.cn','.gov.cn','.hk','.tv','.biz',
'.cc','.name','.info'];
var sltobj=document.getElementById('slt');
for(var i in suffixarr)
{
sltobj.innerHTML+='<option value="'+suffixarr[i]+'">'+suffixarr[i]+'</option>';
}
</script>
</html>
test.php
<?php
$curl = curl_init(); //初始化curl
$name = $_POST['dns']; //获取域名
$shuffix = $_POST['ext']; //后缀
$domain = $name.$shuffix; //拼接字符串
$str='http://panda.www.net.cn/cgi-bin/check.cgi?area_domain='.$domain; //请求的链接
curl_setopt($curl,CURLOPT_URL,$str);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //设置默认不输出
$arr=simplexml_load_string(curl_exec($curl)); //将xml转换成xml对象
$returned=substr($arr->original,0,3); //截取original里面的内容,也就是返回值
if($returned=='210') //未被注册
{
echo "<h5 style='color:#0CB525'><span style='color:#333'>{$domain}</span>可注册!</h5>";
}
else if($returned=='211') //已经被注册
{
echo "<h5 style='color:#f00'><span style='color:#333'>{$domain}</span>已经被注册!</h5>";
}
else if($returned=='212') //系统问题
{
echo "<h5 style='color:#f00'>系统错误!</h5>";
}
curl_close($curl); //销毁资源
?>
经过我的测试,demo可行