域API循环

时间:2010-11-15 07:37:36

标签: php xml api curl dns

如何使用此API执行以下操作?

表单在PHP中设置,供注册用户输入域名 提交..

检查域名是否可用>

  • 如果否>输出到XML>在5分钟内再次运行循环
  • 如果是>输出到XML>继续购买(注册)域>结束循环

谢谢!

示例API代码

<?php /**  * Set the API URL  */ $sApiUrl = "https://www.apiurl.com/";


/**  * Set POST Parameters  */ $aParams = Array(
            'uid'     => "--USERNAME--",    // Username
            'pw'      => "--APIKEY--",      // API Key
            'command' => "querydomain",     // Command to Rum
            'sld'     => "sampledomain",    // Main part of the Domain
            'tld'     => "com");         // Domain Extension


/**  * Run the cURL command  */
$oCurl = curl_init(); curl_setopt($oCurl, CURLOPT_URL, $sApiUrl);
curl_setopt($oCurl, CURLOPT_POST, 1);
curl_setopt($oCurl, CURLOPT_POSTFIELDS, $aParams);
curl_setopt($oCurl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($oCurl, CURLOPT_SSL_VERIFYPEER, false);
$sResponse = curl_exec($oCurl); curl_close($oCurl);


/**  * Turn results into Simple XML Object  */
$oOutput = new SimpleXmlElement($sResponse);


/**  * Debugging output, so we can see what we just got  */
print_r($oOutput);

?>

API命令

check Checks whether a domain name is available for registration.
purchase Registers a new domain name.
transfer Requests a domain transfer to registrar.
extend Extends (renews) domain registration.
changepassword Changes the domain password.
sendpassword Send domain password to domain owner.
contacts Changes domains contacts.
querydomain Returns detailed information about the domain.
sendepp Sends gTLD epp key to domain owner.
refillaccount Refills your reseller account with funds.
changedomainns Changes domains name servers.
sendtransferemail Sends transfer authorisation request to domain owner.
addchildns Add child name server to domain.
updatechildns Update details for child name server.
removechildns Remove child name server from domain.
pushdomain Push domain to another registrar reseller.
getdnsrecords Get domain name server records for a domain.
enablednsdomain Create DNS domain service for domain.
adddnsrecord Add new DNS record to domain.
updatednsrecord Update DNS record for a domain.
removednsrecord Remove DNS record from a domain.
updatednssoa Update DNS SOA record for a domain.
disablednsdomain Destroy DNS domain service for a domain.
getmailrecords Get mail forwarding records for a domain.
addmailforwarder Add a mail forwarder to a domain.
removemailforwarder Remove a mail forwarder from a domain.
updatemailforwarder Update the details of a Mail Forwarder for a domain.
geturlrecords Get URL Forwarding records for a domain.
addurlforwarder Add a URL Forwarding record to a domain.
updateurlforwarder Update a URL Forwarding record for a domain.
removeurlforwarder Remove a URL Forwarding record for a domain.
getreglock Get registry lock details for a domain.
setreglock Set a registry lock for a domain.
updatecontact Update an address book entry.
getapiinfo Get information about the Domain System API.
transferout Push a domain name to another registrar, given their tag.

上述示例中的输出XML

SimpleXMLElement Object

(     [results] =&gt; SimpleXMLElement对象         (         )

[errors] => SimpleXMLElement Object
    (
        [error] => SimpleXMLElement Object
            (
                [domain] => SimpleXMLElement Object
                    (
                        [name] => google.com
                        [status] => SimpleXMLElement Object
                            (
                                [code] => 211
                                [text] => Unavailable
                                [description] => The domain name you queried has been registered through another registrar.
                            )

                    )

            )

    )

[errorcount] => 1
[exectime] => 0.399 second(s)
[enviroment] => live
[version] => 2.3.9 beta

1 个答案:

答案 0 :(得分:0)

我可以看到你正在尝试做什么。但是,哪个部分特别是你有问题?看起来好像你已经有了API。它运作不正常吗?

您是否需要帮助编写PHP以执行上述“是”/“否”步骤?

为什么你“在5分钟内再次检查”?