Проверка доступности доменов

Тема в разделе "PHP", создана пользователем dig555, 5 авг 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. dig555

    dig555

    Регистр.:
    22 июн 2007
    Сообщения:
    362
    Симпатии:
    148
    Подскажите, плз, каким образом можно проверить домен на доступность для регистрации.
    Нашёл такую функцию:
    PHP:
    function check_available($domain)
    {
    if (
    preg_match('/[0-9a-z]*\.[a-z]{2,4}/Uis'strtolower(trim($domain))))
    if (
    gethostbyname($domain) == $domain) return 1;
    return 
    0;
    }
    Проблема в том, что точность такой проверки составляет около 75%. Проверяешь ей домен на доступность - показывает, что свободен. Идёшь регистрировать домен к тем же klikdomains.com. А там показывают, что домен занят.
    Может, кто подскажет как использовать для точной проверки API от самих klikdomains.com
    Или может кто-то поделиться рабочей функцией...
    Проверять нужно домены .info, .com, .org, .net.

    Вот API:
     

    Вложения:

    • api_sample.zip
      Размер файла:
      3,4 КБ
      Просмотров:
      6
  2. akgrad

    akgrad

    Регистр.:
    26 июл 2008
    Сообщения:
    161
    Симпатии:
    29
    Про АПИ от этого сайта ничего не знаю, но с помощью curl это легко сделать.
    Делаешь примерно вот такой пост запрос:
    И в ответе сервера ищешь строку
    если она есть значит - занят, если нет - свободен.

    Если не разберёшься с курлом - напиши пример приведу.
     
  3. dig555

    dig555

    Регистр.:
    22 июн 2007
    Сообщения:
    362
    Симпатии:
    148
    Если не затруднит... Получить страницу curl'ом для последующей обработки вроде не сложно:
    PHP:
    $ch = @curl_init $path );
    curl_setopt $ch CURLOPT_RETURNTRANSFER );
    curl_setopt $ch CURLOPT_VERBOSE );
    curl_setopt $ch CURLOPT_HEADER );
    curl_setopt $ch CURLOPT_FOLLOWLOCATION );
    $page = @curl_exec $ch );
    curl_close $ch );
    Но форма проверки доступна только после авторизации:nezn:
    Да и как сформировать пост запрос - не представляю...
     
  4. dig555

    dig555

    Регистр.:
    22 июн 2007
    Сообщения:
    362
    Симпатии:
    148
    А впрочем я нашёл практически то, что искал. Даже круче :ay:

    Вот офигительнейший скрипт:
    http://www.topdog.za.net/projects#topdog_whois_and_domain_check_script
     
  5. akgrad

    akgrad

    Регистр.:
    26 июл 2008
    Сообщения:
    161
    Симпатии:
    29
    мм я возможно вас не правильно понял, но форма проверки домена находится справа сверху главной страницы и доступная без регистрации.
    Всё просто! Вот пример пост запроса:
    Код:
    <?php
    $ch = curl_init($URI);
    $Post = "param=value&param2=value2";
    curl_setopt($ch, CURLOPT_POSTFIELDS, $Post);
    $Output = curl_exec($ch);
    curl_close($ch);
    ?>
    :ay:
     
    dig555 нравится это.
  6. SUVEREN

    SUVEREN

    Регистр.:
    13 фев 2008
    Сообщения:
    360
    Симпатии:
    175
    Да скрипт хорош, подскажите а как прикрутить зону .ru
    На форуме уже была где то эта темая не нашол к сожалению

    Как я понимаю, надо сервер зоны ру прописать. А какой он, а то я хз знает
    PHP:
    "com" => array("whois.crsnic.net","No match for"),
     
  7. bookinist

    bookinist Создатель

    Регистр.:
    15 фев 2007
    Сообщения:
    43
    Симпатии:
    12
    Юзайте апи от вебнеймса, проверяет почти все зоны, вот простой пример :

    PHP:
    <META content="text/html; charset=windows-1251" http-equiv="Content-Type">
    <
    FORM action="https://www.webnames.ru:81/RegTimeSRS.pl" method="post">
    <
    input type="hidden" name="thisPage" value="pispCheckDomain">
    <
    input type="hidden" name="username" value="test">
    <
    input type="hidden" name="password" value="test">
    domain_name:    <input type="text" name="domain_name" value="тест.ру"><br>
    <
    input type="submit">
    </
    FORM>
     
  8. SUVEREN

    SUVEREN

    Регистр.:
    13 фев 2008
    Сообщения:
    360
    Симпатии:
    175
    Пасиб, но это немножко не то, для себя лично я проверяю домены по nic.ru там даж https есть :).
    а вот для формы проверки домена чтоб на сайт разместить как разх этот скриптик самое оно, а как туда зону ру прикрутить нинаю. Хелп ми гайс, плиз :)
     
  9. bookinist

    bookinist Создатель

    Регистр.:
    15 фев 2007
    Сообщения:
    43
    Симпатии:
    12
    whois.ripn.ru или whois.nic.ru пробани, только посмотри какой ответ он отдает когда нет данных типа "No match for"

    Вот, нашел, вроде так:
    PHP:
    "ru" => array("whois.ripn.ru","No entries found")
     
    SUVEREN нравится это.
  10. zerdek

    zerdek

    Регистр.:
    29 ноя 2007
    Сообщения:
    346
    Симпатии:
    50
    по ходу, а консольный whois пускать? а потом парсить его вывод.
    когда-то такое понадобилось, то сваял по-быстрому на коленке - работало...
     
Статус темы:
Закрыта.