|
|
|
| есть у вас такой замечательный скрипт....
а как его можно переделать что бы проверялось но вводя не название и зону (пример: site.ru) а только название (пример: site) а зону для проверки выбираешь галочками?
таким образом чтобы он проверял все выбранные зоны? (пример: .ru, .org...)
зоны которые находятся в массиве..
спасибо.. | |
|
|
|
|
|
|
|
для: Kicher
(06.04.2007 в 16:05)
| | Так создай чекбоксы с зонами и подставляй отмеченные циклом в скрипт, дописывая к имени. Но только учти, что whois сервис ограничение по времени для запросов извне ведет, и можно бана получить. Вот если ты заплатишь им, то будешь без ограничений проверять. | |
|
|
|
|
|
|
|
для: XPraptor
(06.04.2007 в 16:11)
| | что то не пойму...
помогите пожалуйста!
я его немного переделал.
сделал 3 файла:
массив доменов:
<?
$servers = array(
array("aero","whois.information.aero","is available"),
array("biz","whois.biz","Not found"),
array("com","whois.verisign-grs.net","No match"),
array("com.ru","whois.ripn.ru","No entries found"),
array("edu","whois.verisign-grs.net","No match"),
array("info","whois.afilias.info","Not found"),
array("name","whois.nic.name","No match"),
array("net","whois.verisign-grs.net","No match"),
array("no","whois.norid.no","no matches"),
array("org","whois.ripn.net","No match"),
//array("org","whois.verisign-grs.net","No match"),
array("org.ru","whois.ripn.ru","No entries found"),
array("ru","whois.ripn.ru","No entries found"),
array("tv","whois.tv","MAXCHARS:75"),
);
?>
|
сама форма
<? include "array_domen_1.php"; ?>
<FORM action=/service/internet/whois/result.php method=post>
<?
for($i = 0; $i < count($servers); $i++)
{
$whois = $servers[$i][1];?>
<input type="checkbox" name = "domain_zone" value="1"><?
echo "Зона: ",$servers[$i][0],"<br>";
$not_found_string = $servers[$i][2];
}?>
<INPUT class = "inputtext" type=text name=domen_name size=35>
<input class = "inputbuttonflat" type=submit value='Проверить'>
|
скрипт проверки
<?php
// Устанавливаем не ограниченное время выполнения скрипта
set_time_limit(0);
//подключаем спикок серверов
include "array_domen_1.php";
$domen_name = $_POST["domen_name"];
$domain_zone = $_POST["domain_zone"];
$domain = $domen_name.$domain_zone;
echo $domain ," - домен <br>";
echo $domain_zone ,"- зона <br>";
echo $domen_name ,"- имя <br>";
// Извлекаем домен первого уровня
$first_dom = substr($domain, strpos($domain, ".") + 1);
// Получаем имя whois-сервера, который отвечает за
// домен $first_dom
for($i = 0; $i < count($servers); $i++)
{
if($servers[$i][0] == $first_dom)
{
// Запоминаем имя сервера
$whois = $servers[$i][1];
// и фразу, означающую, что домен отсутствует
$not_found_string = $servers[$i][2];
// Покидаем цикл
break;
}
}
// Проверяем определён ли whois-сервер который несёт
// ответственность за данный доменный уровень
if(empty($whois)) exit("К сожалению не найден соответствующий Whois-сервер");
// Обращаемся к whois-серверу и получаем информацию
// о доменном имени
$fp = fsockopen($whois, 43);
fputs($fp, "$domain\r\n");
$str = "";
while(!feof($fp))
{
$str .= fgets($fp,128);
}
fclose($fp);
// если в ответе имеется фраза-отказ, домен не
// зарегистрирован, если такой фразы нет -
// следовательно домен зарегистрирован
if(!preg_match("/".$not_found_string."/is", $str))
{
//echo "<b>",$_POST["ip"],"</b>";
echo "Домен <b>",$_POST["ip"],"</b> уже зарегистрирован";
}
else
{
echo "Домен <b>",$_POST["ip"],"</b> не зарегистрирован";
}
?>
|
но не получается даже передать из формы массив в скрипт..
может кто видит где ошибка? | |
|
|
|
|
|
|
|
для: Kicher
(09.04.2007 в 12:38)
| | незнаю...но вот мой скрипт который работает.
function WhoisQuery($server="whois.ripn.net", $query)
{
$sp=fsockopen($server, 43);
if(!$sp)
{
echo "Не удалось подключиться к сервису Whois!"; return 0;
}
/* Отправляем запрос */
fputs($sp, $query."\r\n");
while(!feof($sp)) {
/* Читаем в переменную $data данные цугами по 1 Кб */
$data .= fread($sp, 1024);
}
fclose($sp);
return $data;
}
|
| |
|
|
|
|
|
|
|
для: t3ma
(09.04.2007 в 13:22)
| | тут дело не в этом..
у меня не получается передать данные из формы скрипту обработчику... | |
|
|
|
|
|
|
|
для: Kicher
(09.04.2007 в 15:05)
| | что то я ваще запутался... | |
|
|
|
|
|
|
|
для: Kicher
(11.04.2007 в 11:27)
| | может кто знает где можно взять рабочий скрипт в котором задаешь название сайта и выбираешь зоны которые нужно проверить...
а то что то у меня не получается переделать...
((( | |
|
|
|
|
|
|
|
для: Kicher
(11.04.2007 в 13:49)
| | вот что получилось почти....
сама форма
<FORM METHOD="post" ACTION="wc_handler_array.php">
<table>
<tr>
<td><input type="checkbox" name="exercise[0]" value="1"> ru</td>
</tr>
<tr>
<td><input type="checkbox" name="exercise[1]" value="1"> com</td>
</tr>
<tr>
<td><input type="text" name="names"> name</td>
</tr>
<tr>
<td><input type="submit" name="submit" value="Burn, baby, burn!"></td>
</TR>
</TABLE>
</FORM>
|
скрипт
<?php
$zone_name_array = array(
0 => 'ru',
1 => 'com'
);
$ripn_domen_array = array(
0 => 'whois.ripn.ru',
1 => 'whois.verisign-grs.net'
);
if (is_array($_POST) && count($_POST) > 1) {
$message = '';
$name=$_POST["names"];
//echo $name;
foreach ($_POST['exercise'] as $key => $val) {
if ($val == 1) {
$zone_name = $zone_name_array[$key];
$ripn_domen = $ripn_domen_array[$key];
echo "$ripn_domen для зоны $zone_name<br>";
$adress= "$name.$zone_name";
echo $adress,"<br>";
$fp = fsockopen($ripn_domen, 43);
fputs($fp, "$adress\r\n");
$str = "";
while(!feof($fp))
{
$str .= fgets($fp,128);
}
fclose($fp);
// если в ответе имеется фраза-отказ, домен не
// зарегистрирован, если такой фразы нет -
// следовательно домен зарегистрирован
if(!preg_match("/".$not_found_string."/is", $str))
{
echo "Домен уже зарегистрирован <br><br>";
}
else
{
echo "Домен не зарегистрирован<br><br>";
}
}
}
}
else {
echo "не выбрали зону";
}
?>
|
блин тока он выдает всегда что Домен не зарегистрирован....
люди добрые помогите плз! | |
|
|
|
|