PHP+AJAX 域名查询预备知识
本查询系统利用 PHP 和 JQUery 的 Ajax 功能实现了对域名信息的查询(这里主要实现了域名是否已经注册的查询)。系统主要用到了万网提供的域名查询 API 接口,相关知识点罗列如下:
- JQUery Ajax 的实现:这部分内容具体可以参见 JQuery API 文档或本站即将推出的《JQUery 教程》。
- file_get_contents 函数:把整个文件读入一个字符串,这里用于读取一个网页(万网 API 返回结果页面)。
- simplexml_load_string 函数:用于解析一个 xml 文档到对象中。
- strrpos 函数:用于定位字符串第一次出现的位置,这里用来搜索关键字。
域名查询系统需求分析
- 根据用户输入的域名,查询该域名是否已经被注册。
- 对域名注册信息(whois)进行查询,该功能本教程没有实现,可以参考已有功能来实现。
页面/文件信息
- domain.html:表单提交及查询结果信息显示页面。
- domain_check.php:处理查询域名信息的 PHP 文件。
下面是本例子的查询效果示意图(略有不同):
万网域名查询 API 接口
接口采用HTTP,POST,GET协议。
调用URL:http://panda.www.net.cn/cgi-bin/check.cgi
参数名称:area_domain 值为标准域名,例:5idev.com
调用举例:http://panda.www.net.cn/cgi-bin/check.cgi?area_domain=5idev.com
返回XML:
<?xml version="1.0" encoding="gb2312"?> <property> <returncode>200</returncode> <key>5idev.com</key> <original>211 : Domain name is not available</original> </property>
XML 结果说明:
- returncod:接口调用状态。
- key:表示当前 check 的域名。
- original:域名 check 的结果。
original 有4个结果:
- 210 : Domain name is available:表示域名可以注册
- 211 : Domain name is not available:表示域名已经被注册
- 212 : Domain name is invalid:表示域名参数传输错误
- 214 : Unknown error:表示未知错误或查询异常