请选择 进入手机版 | 继续访问电脑版

kangle软件 是一款高性能跨平台web服务器

 找回密码
 注册
kangle web软件将启用新域名 kangleweb.com 作为kangle软件官方网站网址
kangle web服务器最新版下载
kangle访问控制模块介绍 -  kangle设置优化原则
kangle中文帮助手册 -产品购买
easypanel 虚拟主机控制面板最新版
easypanel虚拟主机控制面板功能列表
easypanel中文帮助手册 - 讨论
   kangle虚拟主机管理下载 - 安装 - 帮助手册
    
   销售: 在线客服QQ   技术支持: 在线客服QQ
    kangle web (介绍, 功能特性, 运行环境, 安装说明, 常见问题, 使用教程)     easypanel主机控制面板 (介绍, 功能特性, 安装说明, 常见问题, 使用教程)
    vhms系统 (介绍, 安装说明, 常见问题, 使用教程)     [kangle软件交流QQ群:104434948]
查看: 10758|回复: 11

vhms域名注册参考源代码

  [复制链接]
发表于 2013-3-18 11:26:40 | 显示全部楼层 |阅读模式
如何创建模块以及开发代码注意事项请参考该贴:
http://www.kanglesoft.com/thread-15814-1-1.html

  1. <?php

  2. function aiming_getConfigArray()
  3. {
  4.         $configarray = array(
  5.                         "Userid" => array( "Type" => "text", "Size" => "40", "Description" => "UserID", ),
  6.                         "UserPWD" => array( "Type" => "password", "Size" => "40", "Description" => "API Password", )
  7.         );
  8.         return $configarray;
  9. }

  10. function aiming_GetNameservers($params)
  11. {
  12.         $uid = $params["Userid"];
  13.         $pwd = $params["UserPWD"];
  14.         //$testmode = $params["TestMode"];
  15.         $tld = $params["tld"];
  16.         $sld = $params["sld"];
  17.         $mode = "getinfo";
  18.         $domainname = strtolower($params["sld"].".".$params["tld"]);
  19.         $sign = md5(md5($uid).md5($pwd).md5($domainname));
  20.         $url = 'mode='.$mode.'&domainname='.$domainname.'&userid='.$uid.'&sign='.$sign;
  21.         $urlResult = PostData($url);
  22.         $reStr = explode(" ",$urlResult);

  23.         if ($reStr[0]!="320") {
  24.                 # If error, return the error message in the value below
  25.                 $values["error"] = $urlResult;
  26.         } else {
  27.                 # Put your code to get the nameservers here and return the values below
  28.                 $len = strlen($urlResult);
  29.                 $urlResult2 = substr($urlResult,4,$len-4);
  30.                 $infolist = explode(",",$urlResult2);
  31.                 $dns1info = explode(":",$infolist[5]);
  32.                 $dns2info = explode(":",$infolist[6]);
  33.                 $dns3info = explode(":",$infolist[7]);
  34.                 $dns4info = explode(":",$infolist[8]);
  35.                 $dns5info = explode(":",$infolist[9]);
  36.                 $nameserver1 = $dns1info[1];
  37.                 $nameserver2 = $dns2info[1];
  38.                 $nameserver3 = $dns3info[1];
  39.                 $nameserver4 = $dns4info[1];
  40.                 $nameserver5 = $dns5info[1];
  41.                 $values["ns1"] = $nameserver1;
  42.                 $values["ns2"] = $nameserver2;
  43.                 $values["ns3"] = $nameserver3;
  44.                 $values["ns4"] = $nameserver4;
  45.                 $values["ns5"] = $nameserver5;
  46.         }
  47.         //$values["error"] = $error;
  48.         return $values;
  49. }

  50. function aiming_SaveNameservers($params)
  51. {
  52.         $uid = $params["Userid"];
  53.         $pwd = $params["UserPWD"];
  54.         $tld = $params["tld"];
  55.         $sld = $params["sld"];
  56.         $domainname = strtolower($params["sld"].".".$params["tld"]);
  57.         $nameserver1 = $params["ns1"];
  58.         $nameserver2 = $params["ns2"];
  59.         $nameserver3 = $params["ns3"];
  60.         $nameserver4 = $params["ns4"];
  61.         $nameserver5 = $params["ns5"];
  62.         $mode = "modifydns";
  63.         $domainname = strtolower($params["sld"].".".$params["tld"]);
  64.         $sign = md5(md5($uid).md5($pwd).md5($domainname));
  65.         $url = 'mode='.$mode.'&domainname='.$domainname.'&userid='.$uid.'&sign='.$sign."&dns1=".$nameserver1."&dns2=".$nameserver2."&dns3=".$nameserver3."&dns4=".$nameserver4."&dns5=".$nameserver5;
  66.         # Put your code to save the nameservers here
  67.         # If error, return the error message in the value below
  68.         $rePostStr = PostData($url);
  69.         $reStr = explode(" ",$rePostStr);
  70.         if ($reStr[0] != "600")        {
  71.                 $values["error"] = $rePostStr;
  72.         }
  73.         return $values;
  74. }
  75. /**
  76. 域名注册
  77. */
  78. function aiming_RegisterDomain($params)
  79. {
  80.         $mode = "reg";
  81.         $uid = strtolower($params["Userid"]);
  82.         $pwd = strtolower($params["UserPWD"]);
  83.         $domain = strtolower($params["sld"].".".$params["tld"]);
  84.         $sign = md5(md5($uid).md5($pwd).md5($domain));
  85.         $city = urlencode(strtolower($params["city"]));
  86.         $email = strtolower($params["email"]);
  87.         $fax = strtolower($params["phonenumber"]);
  88.         $fname = urlencode(strtolower($params["firstname"]));
  89.         $lname = urlencode(strtolower($params["lastname"]));
  90.         $fnameE = strtolower($params["firstname"]);
  91.         $lnameE = strtolower($params["lastname"]);
  92.         $phone = strtolower($params["phonenumber"]);
  93.         $province = urlencode(strtolower($params["state"]));
  94.         $zipcode = strtolower($params["postcode"]);
  95.         $street = urlencode(strtolower($params["address1"]." ".$params["address2"]));
  96.         $streetE = strtolower($params["address1"]." ".$params["address2"]);
  97.         $org = urlencode(strtolower($params["companyname"]));
  98.         $orgE = strtolower($params["companyname"]);
  99.         $ns1 = strtolower($params["ns1"]);
  100.         $ns2 = strtolower($params["ns2"]);
  101.         $year = strtolower($params["regperiod"]);
  102.         $url = 'mode='.$mode.'&domainname='.$domain.'&userid='.$uid.'&sign='.$sign."&city=".$city."&email=".$email."&fax=".$fax."&lname=".$lname."&fname=".$fname."&fnameE=".$fnameE."&lnameE=".$lnameE."&phone=".$phone."&province=".$province."&zipcode=".$zipcode."&street=".$street."&streetE=".$streetE."&org=".$org."&orgE=".$orgE."&ns1=".$ns1."&ns2=".$ns2."&year=".$year;
  103.         $UrlReStr = PostData($url);
  104.         $reStr = explode(" ",$UrlReStr);
  105.         if ($reStr[0] != "300") {
  106.                 $values["error"] =$UrlReStr;
  107.         }
  108.         return $values;
  109. }


  110. /**
  111. * 未实现
  112. * @param unknown_type $params
  113. * @return string
  114. */
  115. function aiming_TransferDomain($params)
  116. {
  117.         $mode="transferin";
  118.         $uid=strtolower($params["Userid"]);
  119.         $pwd=strtolower($params["UserPWD"]);
  120.         $domain=strtolower($params["sld"].".".$params["tld"]);
  121.         $sign=md5(md5($uid).md5($pwd).md5($domain));
  122.         $domainpwd = $params["transfersecret"];

  123.         # Registrant Details
  124.         $fname = urlencode($params["firstname"]);
  125.         $lname = urlencode($params["lastname"]);
  126.         $street = urlencode($params["address1"]." ".$params["address2"]);
  127.         $city = urlencode($params["city"]);
  128.         $province = urlencode($params["state"]);
  129.         $zipcode = $params["postcode"];
  130.         $email = $params["email"];
  131.         $phone = $params["phonenumber"];
  132.         $fax = $phone;
  133.         $org = $fname." ".$lname;
  134.         $year = $params["regperiod"];

  135.         $url='mode='.$mode.'&domainname='.$domain."&domainpwd=".$domainpwd.'&userid='.$uid.'&sign='.$sign."&city=".$city
  136.         ."&email=".$email."&fax=".$fax."&lname=".$lname."&fname=".$fname."&phone=".$phone
  137.         ."&province=".$province."&zipcode=".$zipcode."&street=".$street."&org=".$org."&orgE=".$org
  138.         ."&year=".$year;
  139.         $UrlReStr=PostData($url);
  140.         $reStr=explode(" ",$UrlReStr);
  141.         if($reStr[0]!="700")
  142.         {
  143.                 $values["error"] = $UrlReStr;
  144.         }
  145.         return $values;
  146. }

  147. /**
  148. 域名续费
  149. */
  150. function aiming_RenewDomain($params)
  151. {
  152.         $mode = "renew";
  153.         $uid = strtolower($params["Userid"]);
  154.         $pwd = strtolower($params["UserPWD"]);
  155.         $domain = strtolower($params["sld"].".".$params["tld"]);
  156.         $sign = md5(md5($uid).md5($pwd).md5($domain));
  157.         $year = strtolower($params["regperiod"]);
  158.         $url = 'mode='.$mode.'&domainname='.$domain.'&userid='.$uid.'&sign='.$sign."&year=".$year;
  159.         $UrlReStr = PostData($url);
  160.         $reStr = explode(" ",$UrlReStr);
  161.         if ($reStr[0]!="500") {
  162.                 $values["error"] = $UrlReStr;
  163.         }
  164.         return $values;
  165. }
  166. /**
  167. * 域名联系人详细信息
  168. * @param array $params
  169. * @return multitype:string
  170. */
  171. function aiming_GetContactDetails($params)
  172. {
  173.         $values["Registrant"]=array(
  174.                         "fname" => "",
  175.                         "lname" => "",
  176.                         "street" => ""." "."",
  177.                         "city" => "",
  178.                         "province" => "",
  179.                         "zipcode" => "",
  180.                         "email" => "",
  181.                         "phone"=> "",
  182.                         "fax" => "",
  183.                         "org" => ""." "."",
  184.         );
  185.         return $values;
  186. }
  187. /**
  188. * 保存域名注册人资料
  189. * @param unknown_type $params
  190. * @return boolean|string
  191. */
  192. function aiming_SaveContactDetails($params)
  193. {
  194.         $mode = "modify";
  195.         $uid = strtolower($params["Userid"]);
  196.         $pwd = strtolower($params["UserPWD"]);
  197.         $domain = strtolower($params["sld"].".".$params["tld"]);
  198.         $sign = md5(md5($uid).md5($pwd).md5($domain));

  199.         # Registrant Details
  200.         $fname = urlencode($params["contactdetails"]["Registrant"]["fname"]);
  201.         $lname = urlencode($params["contactdetails"]["Registrant"]["lname"]);
  202.         $street = urlencode($params["contactdetails"]["Registrant"]["street"]);
  203.         $city = urlencode($params["contactdetails"]["Registrant"]["city"]);
  204.         $province = urlencode($params["contactdetails"]["Registrant"]["province"]);
  205.         $zipcode = $params["contactdetails"]["Registrant"]["zipcode"];
  206.         $email = $params["contactdetails"]["Registrant"]["email"];
  207.         $phone = $params["contactdetails"]["Registrant"]["phone"];
  208.         $fax = $params["contactdetails"]["Registrant"]["fax"];
  209.         $org = urlencode($params["contactdetails"]["Registrant"]["org"]);
  210.         $url = 'mode='.$mode.'&domainname='.$domain.'&userid='.$uid.'&sign='.$sign."&city=".$city
  211.         ."&email=".$email."&fax=".$fax."&lname=".$lname."&fname=".$fname."&phone=".$phone
  212.         ."&lnameE=".$lname."&fnameE=".$fname
  213.         ."&province=".$province."&zipcode=".$zipcode."&street=".$street."&streetE=".$street."&org=".$org
  214.         ."&orgE=".$org;

  215.         $urlResult = PostData($url);
  216.         $reStr = explode(" ",$urlResult);
  217.         if ($reStr[0]!="800") {
  218.                 $values["error"] = $urlResult;
  219.         }
  220.         return $values;
  221. }

  222. function aiming_GetDns($params)
  223. {
  224.         $uid = $params["Userid"];
  225.         $pwd = $params["UserPWD"];
  226.         //$testmode = $params["TestMode"];
  227.         $tld = $params["tld"];
  228.         $sld = $params["sld"];
  229.         $mode = "getpwd";
  230.         $domainname = strtolower($params["sld"].".".$params["tld"]);
  231.         $sign = md5(md5($uid).md5($pwd).md5($domainname));
  232.         $url = 'mode='.$mode.'&domainname='.$domainname.'&userid='.$uid.'&sign='.$sign;
  233.         $urlResult = PostData($url);
  234.         $reStr = explode(" ",$urlResult);
  235.         if ($reStr[0]!="325") {
  236.                 echo $urlResult;
  237.                 exit;
  238.         }
  239.         $domainandpw = explode(":",$reStr[1]);
  240.         $domainpwd = $domainandpw[1];
  241.         $everdnsurl = "http://www.everdns.com?domain=".$domainname."&pwd=".$domainpwd;
  242.         if (isset($everdnsurl)) {
  243.                 Header("HTTP/1.1 303 See Other");
  244.                 Header("Location: $everdnsurl");
  245.                 exit;
  246.         }
  247. }
  248. /**
  249. * 未实现
  250. * @param unknown_type $params
  251. * @return multitype:boolean unknown string
  252. */
  253. function aiming_TransferSync($params)
  254. {
  255.         $uid=strtolower($params["Userid"]);
  256.         $pwd=strtolower($params["UserPWD"]);
  257.         $domainid = $params['domainid'];
  258.         $domain = $params['domain'];
  259.         $sld =  $params['sld'];
  260.         $tld =  $params['tld'];
  261.         $registrar = $params['registrar'];
  262.         $regperiod = $params['regperiod'];
  263.         $status = $params['status'];
  264.         $dnsmanagement = $params['dnsmanagement'];
  265.         $emailforwarding = $params['emailforwarding'];
  266.         $idprotection = $params['idprotection'];

  267.         $mode = "chktransfer";
  268.         $domainname=strtolower($params["sld"].".".$params["tld"]);
  269.         $sign=md5(md5($uid).md5($pwd).md5($domainname));
  270.         $url='mode='.$mode.'&domainname='.$domainname.'&userid='.$uid.'&sign='.$sign;
  271.         $urlResult=PostData($url);
  272.         $reStr=explode(" ",$urlResult);
  273.         $values = array();
  274.         if($reStr[0]=="1000")
  275.         {
  276.                 $values['completed'] = true;
  277.                 $mode = "getinfo";
  278.                 $sign=md5(md5($uid).md5($pwd).md5($domainname));
  279.                 $url='mode='.$mode.'&domainname='.$domainname.'&userid='.$uid.'&sign='.$sign;
  280.                 $urlResult=PostData($url);
  281.                 $reStr=explode(" ",$urlResult);
  282.                 if($reStr[0]=="320")
  283.                 {
  284.                         $len=strlen($urlResult);
  285.                         $urlResult2=substr($urlResult,4,$len-4);
  286.                         $infolist=explode(",",$urlResult2);

  287.                         $regtimeinfo=explode(" ",$infolist[1]);
  288.                         $reginfo =explode(":",$regtimeinfo[0]);
  289.                         $regdate = $reginfo[1];
  290.                         $Newregdate = date('Y-m-d', strtotime($regdate));
  291.                         $values['registrationdate'] = $Newregdate;

  292.                         $exptimeinfo=explode(" ",$infolist[2]);
  293.                         $expinfo =explode(":",$exptimeinfo[0]);
  294.                         $expirydate = $expinfo[1];
  295.                         $Newexpirydate = date('Y-m-d', strtotime($expirydate));
  296.                         $values['expirydate'] = $Newexpirydate;
  297.                         $values['nextduedate'] = $Newexpirydate;

  298.                 }else{
  299.                         $values['error'] = $urlResult;
  300.                 }
  301.         }
  302.         else if($reStr[0]=="1003")
  303.         {
  304.                 $values['failed'] = true;
  305.                 $values['reason'] = $urlResult;
  306.         }
  307.         else
  308.         {
  309.                 $values['error'] = $urlResult;
  310.         }
  311.         return $values;
  312. }
  313. /**
  314. * 未实现
  315. * @param unknown_type $params
  316. * @return Ambigous <string, unknown>
  317. */
  318. function aiming_Sync($params)
  319. {
  320.         $uid = strtolower($params["Userid"]);
  321.         $pwd =strtolower($params["UserPWD"]);
  322.         $domainid = $params['domainid'];
  323.         $domain = $params['domain'];
  324.         $sld =  $params['sld'];
  325.         $tld =  $params['tld'];
  326.         $registrar = $params['registrar'];
  327.         $regperiod = $params['regperiod'];
  328.         $status = $params['status'];
  329.         $dnsmanagement = $params['dnsmanagement'];
  330.         $emailforwarding = $params['emailforwarding'];
  331.         $idprotection = $params['idprotection'];
  332.         $mode = "getinfo";
  333.         $domainname = strtolower($params["sld"].".".$params["tld"]);
  334.         $sign = md5(md5($uid).md5($pwd).md5($domainname));
  335.         $url = 'mode='.$mode.'&domainname='.$domainname.'&userid='.$uid.'&sign='.$sign;
  336.         $urlResult = PostData($url);
  337.         $reStr = explode(" ",$urlResult);
  338.         if ($reStr[0] == "320") {
  339.                 $len = strlen($urlResult);
  340.                 $values['active'] = true;
  341.                 $urlResult2 = substr($urlResult,4,$len-4);
  342.                 $infolist = explode(",",$urlResult2);

  343.                 $regtimeinfo = explode(" ",$infolist[1]);
  344.                 $reginfo =explode(":",$regtimeinfo[0]);
  345.                 $regdate = $reginfo[1];
  346.                 $Newregdate = date('Y-m-d', strtotime($regdate));
  347.                 $values['registrationdate'] = $Newregdate;

  348.                 $exptimeinfo = explode(" ",$infolist[2]);
  349.                 $expinfo = explode(":",$exptimeinfo[0]);
  350.                 $expirydate = $expinfo[1];
  351.                 $Newexpirydate = date('Y-m-d', strtotime($expirydate));
  352.                 $values['expirydate'] = $Newexpirydate;
  353.                 $values['nextduedate'] = $Newexpirydate;
  354.         }else{
  355.                 $values['error'] = $urlResult;
  356.         }
  357.         return $values;
  358. }

  359. function PostData($params)
  360. {
  361.         //构造要post的字符串
  362.         $length = strlen($params);
  363.         //以下参数请按最终 API 发布地址进行修改
  364.         $apiHost = "api.22.cn";
  365.         $apiPort = 80;
  366.         $apiUrl = "/OpenAPI.aspx";
  367.         $fp = fsockopen($apiHost,$apiPort,$errno,$errstr,10) or exit($errstr."--->".$errno);
  368.         //构造post请求的头
  369.         $header = "POST ". $apiUrl . " HTTP/1.1\r\n";
  370.         $header .= "Host:" . $apiHost . "\r\n";
  371.         $header .= "Content-Type: application/x-www-form-urlencoded\r\n";
  372.         $header .= "Content-Length: ".$length."\r\n";
  373.         $header .= "Connection: Close\r\n\r\n";
  374.         //添加post的字符串
  375.         $header .= $params."\r\n";
  376.         //发送post的数据
  377.         fputs($fp,$header);
  378.         $inheader = 1;
  379.         $ret="";
  380.         while (!feof($fp)) {
  381.                 //去除请求包的头只显示页面的返回数据
  382.                 $line = fgets($fp,1024);
  383.                 if ($inheader && ($line == "\n" || $line == "\r\n")) {
  384.                         $inheader = 0;
  385.                 }
  386.                 if ($inheader == 0) {
  387.                         $ret.=$line;
  388.                 }
  389.         }
  390.        
  391.         fclose($fp);
  392.         //$ret = iconv("GB2312","UTF-8",$ret);
  393.         //$ret = iconv("UTF-8","GB2312",$ret);
  394.         return $ret;
  395. }


  396. ?>
复制代码
回复

使用道具 举报

发表于 2013-3-18 11:51:24 | 显示全部楼层
注册源码

管理的呢
回复 支持 反对

使用道具 举报

发表于 2013-3-18 13:29:48 | 显示全部楼层
呵呵 这个不错呢^

点评

晚上好^_^  发表于 2013-3-18 19:27
回复 支持 反对

使用道具 举报

发表于 2013-3-18 23:07:57 | 显示全部楼层
做个name.com的吧
我刚申请了name.com的api
回复 支持 反对

使用道具 举报

发表于 2013-3-26 17:38:30 | 显示全部楼层
1API的建议增加
回复 支持 反对

使用道具 举报

发表于 2013-6-8 12:56:55 | 显示全部楼层
Resell.BIZ 的 增加吧~
回复 支持 反对

使用道具 举报

发表于 2013-7-26 20:28:21 | 显示全部楼层
增加易名吧
回复 支持 反对

使用道具 举报

发表于 2014-1-27 22:47:45 | 显示全部楼层
域名对接成功后开通了 在后台无法管理域名
回复 支持 反对

使用道具 举报

发表于 2014-2-14 14:52:17 | 显示全部楼层
看不明白呀,能不能在说详细点,我想跟新网和万网的域名注册接口。
回复 支持 反对

使用道具 举报

发表于 2014-7-20 06:45:23 | 显示全部楼层
我想问 我不想做域名注册是不是把这些代码删了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|Archiver|Bangteng Inc. ( 赣ICP备13005708号-5

GMT+8, 2017-11-20 03:43 , Processed in 0.063480 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表