еще проще PHP: <?=$_SERVER["REMOTE_ADDR"]?> -------------------------------------------------------- 2)Dr.Brain, если делаешь анонимайзер, то посмотри у этого http://usfree.chat.ru/browser.txt регулярки
ну если простенько: PHP: <?php class ip_detect { function get_ip() { foreach (array('HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR') as $key) { if (array_key_exists($key, $_SERVER) === true) { foreach (explode(',', $_SERVER[$key]) as $ip) { if (filter_var($ip, FILTER_VALIDATE_IP) !== false) { echo "Ваш IP: " . $ip; } } } } } } $a = new ip_detect(); $a->get_ip(); ?> ))
тогда уж прокси-детектор http://www.roscripts.com/PHP_Proxy_Detector-75.html только http же можно подделать http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/Q_21878848.html
PHP: <?php if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $snif['ip'] = $_SERVER['HTTP_X_FORWARDED_FOR']; $snif['proxy'] = $_SERVER['REMOTE_ADDR']; $snif['usx'] = 1; } else { $snif['ip'] = $_SERVER['REMOTE_ADDR']; $snif['proxy'] = ''; $snif['usx'] = 0; } echo $snif['ip']; ?> из своего сниффера)
Как сделать чтобы при загрузке файла на сайт записывалась имя файла к примеру в блокнот.Если я вставляю переменную файла всё ровно не получается. Вот собственно обработчик: PHP: <?php if($HTTP_POST_FILES["filename"]["size"] > 1024*10*1024) { echo ("Размер файла превышает десять мегабайт"); exit; } if(copy($HTTP_POST_FILES["filename"]["tmp_name"], "images/".$HTTP_POST_FILES["filename"]["name"])); $filelog = fopen("name.txt","w+"); $log = fopen ("name.txt","a+"); fwrite($log,"$filename"); fclose($log); ?>
Во-первых у тебя переменная непонятная появляется при записи, а во-вторых 2 раза не нужно открывать файл... Попробуй так: PHP: <?php if($HTTP_POST_FILES["filename"]["size"] > 1024*10*1024) { echo ("Размер файла превышает десять мегабайт"); exit; } if(copy($HTTP_POST_FILES["filename"]["tmp_name"], "images/".$HTTP_POST_FILES["filename"]["name"])); $filename="images/".$HTTP_POST_FILES["filename"]["name"]; $log = fopen ("name.txt","w+"); fwrite($log,"$filename"); fclose($log); ?> Возможно даже будет работать...
Есть ф-ция на php ftp_exec($fp,$command) где $fp -идентификатор подключения(он же ресурс) $command команда для исполнения на ftp. Внимание вопрос какой командой запустить php скрипт на хостинге т.е. что должно содержаться в $command.
Это у тебя надо спросить, какие команды ты хочешь выполнить. Ты можешь выполнять любые системные команды. Например "ls - la" (для unix) и "dir" (для Windows), для просмотра директорий и файлов на фтп.
Около часа сижу, голова болит >_< немогу сделать постраничный вывод Намер у нас 20 страниц, сейчас мы на 10, мне надо чтоб было вот так 1 | 2 | 3 | ... | 8 | 9 | [10] | 11 | 12 | ... | 18 | 19 | 20 Сделал вот так PHP: <?php function pagedView($all_pages,$now_page) { $pages = array(); for ($i=1;$i<=$all_pages;$i++){ if($i==$now_page) { $pages[] = "<b>[$i]</b>"; }else{ $pages[] = "<a href=\"?p=$i\">$i</a>"; } } if(($now_page-5) >= 3) { for ($a=3;$a<=$now_page-5;$a++) { unset($pages[$a]); } $pages[$a] = '...'; } #Вот сюда чёто надо return implode(' | ',$pages); } echo pagedView(20,10); ?> слева всё нереально хорошо работает, я шоке! pagedView(20,7) = 1 | 2 | 3 | 4 | 5 | 6 | [7] | 8 | 9 | ........... pagedView(20,8) = 1 | 2 | 3 | ... | 6 | 7 | [8] | 9 | 10 | ............. Мне имено так и надо! Но вот справа я как не пытался сделать, ничерта не получается Ктонить может осилить этот мозговой взрыв? Вот так обрезается слева PHP: if(($now_page-5) >= 3) { for ($a=3;$a<=$now_page-5;$a++) { unset($pages[$a]); } $pages[$a] = '...'; } справа надо наоборот сделать, но я немогу понять что тут наоборот менять Как не менял - нехочет, то ест нужные цифры, то 17 | 18 | ... |20
PHP: <?php function pagedView($all_pages,$now_page) { $pages = array(); for ($i=1;$i<=$all_pages;$i++){ if($i==$now_page) { $pages[] = "<b>[$i]</b>"; }else{ $pages[] = "<a href=\"?p=$i\">$i</a>"; } } if(($now_page-5) >= 3) { for ($a=3;$a<=$now_page-5;$a++) { unset($pages[$a]); } $pages[$a] = '...'; } if(($now_page+5) <= $all_pages-3) { for ($a=$all_pages-4;$a>=$now_page+3;$a--) { unset($pages[$a]); } $pages[$a] = '...'; } return implode(' | ',$pages); } echo pagedView(30,20); ?> подправил немного...
Подправляльщик ты наш ^_^ pagedView(30,23) = Осталось 7 чисел справа pagedView(30,7) = Осталось 6 слева Вот мне 6 и справа надо ========== pagedView(30,22) = Пропущено 25 26 27 (3 числа) pagedView(30,8) = Пропущено 3 4 (2 числа ) А мну над чоб одинаково было
PHP: if(($now_page+4) <= $all_pages-3) { for ($a=$all_pages-4;$a>=$now_page+3;$a--) { unset($pages[$a]); } $pages[$a] = '...'; }