Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |

20.05.2010, 23:54
|
|
Новичок
Регистрация: 15.05.2010
Сообщений: 7
Провел на форуме: 23244
Репутация:
0
|
|
Инфо об ип.
Есть такой скрипт по определению инфы об ип.Но он выводит инфу об ип только тому кто его открыл как зделать так чтоб эта инфа и мне в файл записалась.Помогите плз)
<?php
function ip(){
if ( getenv ('REMOTE_ADDR')) {$user_ip = getenv ('REMOTE_ADDR');}
elseif ( getenv ('HTTP_FORWARDED_FOR')) {$user_ip = getenv ('HTTP_FORWARDED_FOR');}
elseif ( getenv ('HTTP_X_FORWARDED_FOR')) {$user_ip = getenv ('HTTP_X_FORWARDED_FOR');}
elseif ( getenv ('HTTP_X_COMING_FROM')) {$user_ip = getenv ('HTTP_X_COMING_FROM');}
elseif ( getenv ('HTTP_VIA')) {$user_ip = getenv ('HTTP_VIA');}
elseif ( getenv ('HTTP_XROXY_CONNECTION')){$user_ip = getenv ('HTTP_XROXY_CONNECTION');}
elseif ( getenv ('HTTP_CLIENT_IP')) {$user_ip = getenv ('HTTP_CLIENT_IP');}
else {$user_ip='unknown';}
if (15 < strlen ($user_ip)){
$ar = split (', ', $user_ip);
for ($i= sizeof ($ar)-1; $i> 0; $i--){
if ($ar[$i]!='' and !preg_match ('/[a-zA-ZЮ-Ъю-ъ]/', $ar[$i])){
$user_ip = $ar[$i];
break;
}
if ($i== sizeof ($ar)-1){$user_ip = 'unknown';}
}
}
if ( preg_match ('/[a-zA-ZЮ-Ъю-ъ]/', $user_ip)){$user_ip = 'unknown';}
return $user_ip;
}
function whois($server,$ip){
$fp = @fsockopen ($server, 43, &$errno, &$errstr, 30);
if (!$fp){ return false; }
else {
$servers .= $server."<br>\n";
@fputs ($fp, $ip."\r\n");
$text = "";
while ( !feof ($fp)) { $text .= @fgets ($fp, 128)."<br>\n"; }
@fclose ($fp);
$search = "~".preg_quote("ReferralServer: whois://","~")."([^\n<:]+)~i";
preg_match ($search, $text, $out);
if (! empty ($out[1])) { return whois($out[1], $ip); }
else return $servers.$text;
}
}
$ip_user = ip();
print "<h1>$ip_user</h1>";
$content = whois ( "whois.ripe.net", $ip_user );
if ($content == ''){ print "мЕБНГЛНФМН БШБЕЯРХ ДЮММШЕ НА Ip: $ip_user"; }
else { print $content; }
?>
|
|
|

21.05.2010, 00:07
|
|
Познающий
Регистрация: 07.02.2010
Сообщений: 70
Провел на форуме: 217996
Репутация:
56
|
|
в начале скрипта
ob_start();
в конце
PHP код:
if(strlen($S = ob_get_contents())>0){
$f = fopen("file.log","w");
flock($f,LOCK_EX);
fwrite($f,$S);
flock($f,LOCK_UN);
fclose($f);
}
ob_end_clean();
echo $S;
|
|
|

21.05.2010, 18:31
|
|
Новичок
Регистрация: 15.05.2010
Сообщений: 7
Провел на форуме: 23244
Репутация:
0
|
|
ПАсиб)
Я так понял что если один и тот же ип нажмет на ссылку то статистика на него еще раз не запишется?
Последний раз редактировалось Pasteryk; 21.05.2010 в 18:40..
|
|
|

21.05.2010, 18:47
|
|
Познающий
Регистрация: 07.02.2010
Сообщений: 70
Провел на форуме: 217996
Репутация:
56
|
|
В данный момент у тебя файл просто перезаписывается по-новой, всё, что было в нём до этого стирается.
Чтобы инфа дописывалась, измени
$f = fopen("file.log","w");
на
$f = fopen("file.log","a");
Ну и при записи строки можешь разделитель строки вставить "\r\n"
Типа как:
fwrite($f,"\r\n\r\n".$S);
ps: спасибо выражается повышением репутации 
Последний раз редактировалось roxblnfk; 21.05.2010 в 18:49..
|
|
|

21.05.2010, 22:45
|
|
Новичок
Регистрация: 15.05.2010
Сообщений: 7
Провел на форуме: 23244
Репутация:
0
|
|
А еще такой вопрос.А можно зделать так чтоб тому кто открыл скрипт например картинка показывалась или переадресация на който сайт шла.Напишите два варианта плиз.
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|