[eluser]memVN[/eluser]
I want code to check domain working with CI, i want to check exists a domain. Who is help me??? Thanks you very much
[eluser]KaBaDaBrA[/eluser]
You can try use PHP CURL
An example function:
Code: function url_exists($strURL) {
$resURL = curl_init();
curl_setopt($resURL, CURLOPT_URL, $strURL);
curl_setopt($resURL, CURLOPT_BINARYTRANSFER, 1);
curl_setopt($resURL, CURLOPT_HEADERFUNCTION, 'curlHeaderCallback');
curl_setopt($resURL, CURLOPT_FAILONERROR, 1);
curl_exec ($resURL);
$intReturnCode = curl_getinfo($resURL, CURLINFO_HTTP_CODE);
curl_close ($resURL);
if ($intReturnCode != 200 && $intReturnCode != 302 && $intReturnCode != 304) {
return FALSE;
} else {
return TRUE;
}
}
[eluser]memVN[/eluser]
You can code detail? Because I don't good (Sorry, I'm a Vietnames)
[eluser]KaBaDaBrA[/eluser]
This is what I did...
model function
Code: //CHECK IF URL EXISTS
function url_exists($strURL) {
error_reporting(0);
$resURL = curl_init();
curl_setopt($resURL, CURLOPT_URL, $strURL);
curl_setopt($resURL, CURLOPT_BINARYTRANSFER, 1);
curl_setopt($resURL, CURLOPT_HEADERFUNCTION, 'curlHeaderCallback');
curl_setopt($resURL, CURLOPT_FAILONERROR, 1);
curl_exec ($resURL);
$intReturnCode = curl_getinfo($resURL, CURLINFO_HTTP_CODE);
curl_close ($resURL);
if ($intReturnCode != 200 && $intReturnCode != 302 && $intReturnCode != 304) {
echo $strURL." available for registration...";
} else {
echo $strURL." already been registered...";
}
}
controller function
Code: //CHECK DOMAIN
function check_domain() {
//LOAD YOUR MODEL HERE
$this->load->model('Globals');
$domain = $this->input->post('queryString');
if($domain != "") {
//SEND THE URL TO YOUR MODEL
echo $this->Globals->url_exists($domain);
}
exit(0);
}
html | javascript and jQuery
Code: //OPEN SCRIPT TAG
function checkDomain(nname)
{
var arr = new Array(
'.com','.net','.org','.biz','.coop','.info','.museum','.name',
'.pro','.edu','.gov','.int','.mil','.ac','.ad','.ae','.af','.ag',
'.ai','.al','.am','.an','.ao','.aq','.ar','.as','.at','.au','.aw',
'.az','.ba','.bb','.bd','.be','.bf','.bg','.bh','.bi','.bj','.bm',
'.bn','.bo','.br','.bs','.bt','.bv','.bw','.by','.bz','.ca','.cc',
'.cd','.cf','.cg','.ch','.ci','.ck','.cl','.cm','.cn','.co','.cr',
'.cu','.cv','.cx','.cy','.cz','.de','.dj','.dk','.dm','.do','.dz',
'.ec','.ee','.eg','.eh','.er','.es','.et','.fi','.fj','.fk','.fm',
'.fo','.fr','.ga','.gd','.ge','.gf','.gg','.gh','.gi','.gl','.gm',
'.gn','.gp','.gq','.gr','.gs','.gt','.gu','.gv','.gy','.hk','.hm',
'.hn','.hr','.ht','.hu','.id','.ie','.il','.im','.in','.io','.iq',
'.ir','.is','.it','.je','.jm','.jo','.jp','.ke','.kg','.kh','.ki',
'.km','.kn','.kp','.kr','.kw','.ky','.kz','.la','.lb','.lc','.li',
'.lk','.lr','.ls','.lt','.lu','.lv','.ly','.ma','.mc','.md','.mg',
'.mh','.mk','.ml','.mm','.mn','.mo','.mp','.mq','.mr','.ms','.mt',
'.mu','.mv','.mw','.mx','.my','.mz','.na','.nc','.ne','.nf','.ng',
'.ni','.nl','.no','.np','.nr','.nu','.nz','.om','.pa','.pe','.pf',
'.pg','.ph','.pk','.pl','.pm','.pn','.pr','.ps','.pt','.pw','.py',
'.qa','.re','.ro','.rw','.ru','.sa','.sb','.sc','.sd','.se','.sg',
'.sh','.si','.sj','.sk','.sl','.sm','.sn','.so','.sr','.st','.sv',
'.sy','.sz','.tc','.td','.tf','.tg','.th','.tj','.tk','.tm','.tn',
'.to','.tp','.tr','.tt','.tv','.tw','.tz','.ua','.ug','.uk','.um',
'.us','.uy','.uz','.va','.vc','.ve','.vg','.vi','.vn','.vu','.ws',
'.wf','.ye','.yt','.yu','.za','.zm','.zw','.me');
var mai = nname;
var val = true;
var dot = mai.lastIndexOf(".");
var dname = mai.substring(0,dot);
var ext = mai.substring(dot,mai.length);
//alert(ext);
if(dot>2 && dot<57)
{
for(var i=0; i<arr.length; i++)
{
if(ext == arr[i])
{
val = true;
break;
}
else
{
val = false;
}
}
if(val == false)
{
$('#domain_status').html("Your domain extension "+ext+" is not correct");
return false;
}
else
{
for(var j=0; j<dname.length; j++)
{
var dh = dname.charAt(j);
var hh = dh.charCodeAt(0);
if((hh > 47 && hh<59) || (hh > 64 && hh<91) || (hh > 96 && hh<123) || hh==45 || hh==46)
{
if((j==0 || j==dname.length-1) && hh == 45)
{
alert("Domain name should not begin are end with '-'");
return false;
}
}
else {
$('#domain_status').html("Your domain name should not contain special characters");
return false;
}
}
}
}
else
{
$('#domain_status').html("Your Domain name is too short/long");
return false;
}
return true;
}
function check_domain() {
var value = $('#domain').val();
if(checkDomain(value)) {
var regex = new RegExp("^[0-9a-z\\._]+\.[0-9a-z]+\\..+$","i");
if (regex.test(value)) {
$('#check').html('<img src="<?=base_url()?>images/icons/loader.gif" border="0" style="padding-top: 5px;" />');
//THE PATH BELOW IS THE PATH TO YOUR CONTROLLER
$.post('<?=site_url()?>rpc/check_domain',{queryString: value},function(data){
if(data.length > 0) {
$('#domain_status').html(data);
$('#check').html('');
} else {
$('#domain_status').html('');
$('#check').html('');
}
});
}
}
}
//CLOSE SCRIPT
<input type="text" name="domain" id="domain" /> <input type="button"> <span id="check"></span>
<div id="domain_status" style="font-weight: bold;"> </div>
[eluser]memVN[/eluser]
Ok, thanks you very much.
[eluser]KaBaDaBrA[/eluser]
đó là một niềm vui
|