Помогите разобратся с снифером для определения ip

Discussion in 'PHP' started by Berg25, 21 May 2009.

  1. Berg25

    Berg25 New Member

    Joined:
    17 May 2009
    Messages:
    10
    Likes Received:
    0
    Reputations:
    -1
    Уважаемые Модераторы Solide Snake, scrat, .:EnoT:., Sharky, _Great_
    Не кричите на меня, я тупой и тут не давно.
    Вобщем проблема такая: есть место на бесплатном хосте с поддержкой PHP, моя цель: кинуть ссылку на главную страничку какому нибудь пользователю, пользователь проходит, и его IP записывается в текстовый лог. Вот так вот, а ума нету у меня(
    находил скрипты php вставлял в тело главной странички, но ничего не получается, при открытии страницы виден код который вставил(
    Если кому не сложно, помогите примером конкретным.
    вт скрин корневой папки обьясните что куда в какой файл прописывать:[​IMG]
     
  2. csrss

    csrss Member

    Joined:
    13 Apr 2009
    Messages:
    38
    Likes Received:
    38
    Reputations:
    4
    Пользователя должно направлять на ПХП файл в котором пишеш:
    Code:
    <?php
    function getAddr(){
        if (!empty($_SERVER['HTTP_CLIENT_IP'])){
        $ip=$_SERVER['HTTP_CLIENT_IP'];}
        elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
        $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
        }else{$ip=$_SERVER['REMOTE_ADDR'];}
        return $ip;}
    
    $user_ip = getAddr();
    
    $file = fopen("ip.txt","w+");
    fwrite($file,$user_ip);
    fclose($file);
    }
    
    на ip.txt ставишь права на запись, т.е. chmod ip.txt 777.
    И всё.
     
  3. Berg25

    Berg25 New Member

    Joined:
    17 May 2009
    Messages:
    10
    Likes Received:
    0
    Reputations:
    -1
    Спасибо, сейчас попробую!
     
  4. Berg25

    Berg25 New Member

    Joined:
    17 May 2009
    Messages:
    10
    Likes Received:
    0
    Reputations:
    -1
    Неа(( не получается(( если можно то подробней, вот этот код в какой файл вписать?
    <?php
    function getAddr(){
    if (!empty($_SERVER['HTTP_CLIENT_IP'])){
    $ip=$_SERVER['HTTP_CLIENT_IP'];}
    elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
    $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
    }else{$ip=$_SERVER['REMOTE_ADDR'];}
    return $ip;}

    $user_ip = getAddr();

    $file = fopen("ip.txt","w+");
    fwrite($file,$user_ip);
    fclose($file);
    }
    в код главной странички что на скрине (index.html)
    или вписать в файл что на скрине (0144887.php)???
    пробывал и так и так не получается(
    так же как и сказал ты создал ip.txt поставил права 777
    извините меня за тупость мою)))
     
  5. csrss

    csrss Member

    Joined:
    13 Apr 2009
    Messages:
    38
    Likes Received:
    38
    Reputations:
    4
    Смотри, создаёшь 3 фаила: ip.php, ip.txt, index.html
    Вышепредставленный мною код записываеш в файл ip.php
    Теперь ставь прова на запись для ip.txt, я на винде сто лет этого не делал, и не помню уже чё то там в total commander есть такая опция, ну кароче чтоб пхп скрипт мог писать в текстовый файл. A в index.html пиши следующее:

    <script>location="ip.php"</script>

    что и закинет юзера на твой ip.php когда он посетит главную страницу.

    P.S. в конце кода поставь "}" а то я забыл.
     
    #5 csrss, 21 May 2009
    Last edited: 21 May 2009
  6. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    между <?php и ?> находится php-код, если ты вставляешь в файл, в котором уже есть код, то вставь например перед ?>:

    PHP:
    <?php
    //Код твоего файла
    function getAddr(){
        if (!empty(
    $_SERVER['HTTP_CLIENT_IP'])){
        
    $ip=$_SERVER['HTTP_CLIENT_IP'];}
        elseif (!empty(
    $_SERVER['HTTP_X_FORWARDED_FOR'])){
        
    $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
        }else{
    $ip=$_SERVER['REMOTE_ADDR'];}
        return 
    $ip;}

    $user_ip getAddr();

    $file fopen("ip.txt","w+");
    fwrite($file,$user_ip);
    fclose($file);
    }
    ?>
    п.с. скопипасил код csrss
     
    #6 Ru}{eeZ, 21 May 2009
    Last edited: 21 May 2009
  7. Berg25

    Berg25 New Member

    Joined:
    17 May 2009
    Messages:
    10
    Likes Received:
    0
    Reputations:
    -1
    Ну все так и сделал, проверяю, да, сначала вижу что грузится траничка потом происходит переадресация на IP.php и просто белая страничка, вроде все так и должно, но когда проверяю IP.TXT там пусто.
    в чем может быть причина?
     
  8. Pernat1y

    Pernat1y Elder - Старейшина

    Joined:
    20 Dec 2007
    Messages:
    479
    Likes Received:
    79
    Reputations:
    7
    проверь, есть-ли права на запись в ip.txt
    и еще. юних регистрозависимый, тоесть IP.txt и ip.txt - разные файлы
     
  9. csrss

    csrss Member

    Joined:
    13 Apr 2009
    Messages:
    38
    Likes Received:
    38
    Reputations:
    4
    ----------[ip.php ]--------

    PHP:
    <?php
    function getAddr(){
        if (!empty(
    $_SERVER['HTTP_CLIENT_IP'])){
        
    $ip=$_SERVER['HTTP_CLIENT_IP'];}
        elseif (!empty(
    $_SERVER['HTTP_X_FORWARDED_FOR'])){
        
    $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
        }else{
    $ip=$_SERVER['REMOTE_ADDR'];}
        return 
    $ip;
    }

    $uip =  getAddr();
    echo 
    $uip;
    chmod("ip.txt"755);
    $file fopen("ip.txt","a+");
    fwrite($file,$uip);
    fclose($file);
    ?>
    -------------[cut]-----------------

    тока что на своём серваке проверял, работает отлично
     
  10. Berg25

    Berg25 New Member

    Joined:
    17 May 2009
    Messages:
    10
    Likes Received:
    0
    Reputations:
    -1
    csrss да, работает, открываю и показывает на главной страничке мой ip но я же хочу что бы сохранялся ip в ip.txt но этого нет( права уже ставил 777 и пробывал как в в самом ip.php твоем поставить не chmod("ip.txt", 755); а поставить
    chmod("ip.txt", 777);
    всеравно не пишет в ip.txt
    я пользуюсь бесплатным хостом phpnet.us может другой попробывать? посоветуйте какой
     
  11. Berg25

    Berg25 New Member

    Joined:
    17 May 2009
    Messages:
    10
    Likes Received:
    0
    Reputations:
    -1
    IP отображается на странице но получается что вот вторая часть кода
    $uip = getAddr();
    echo $uip;
    chmod("ip.txt", 755);
    $file = fopen("ip.txt","a+");
    fwrite($file,$uip);
    fclose($file);
    открытие ip.txt и запись в него не выполняется, да можно подумать что разрешение не выставлено, но все поставил(((
     
  12. KentPol

    KentPol Elder - Старейшина

    Joined:
    3 Jun 2008
    Messages:
    94
    Likes Received:
    17
    Reputations:
    0
    http://slil.ru/27680672
    Скачивай архив, распаковывай и ставь на сервер.
    chmod 777 ip.txt.
     
  13. Berg25

    Berg25 New Member

    Joined:
    17 May 2009
    Messages:
    10
    Likes Received:
    0
    Reputations:
    -1
    )

    УРААА!!! все работает!!!!
    Спасибо всем кто помогал!!!
    и отдельное спасибо KentPol!!!