Накрутчик времени для форумов...

Discussion in 'PHP' started by Linuxoid, 16 Jun 2007.

  1. Linuxoid

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

    Joined:
    13 Feb 2007
    Messages:
    200
    Likes Received:
    28
    Reputations:
    0
    И так, товарищи... Сейчас буду толкать очередную гениальную, но хреново сформулированную мысль. :)
    Собственно воть. На некоторых форумах, даже на этом, есть счетчик проведенного времени. Но если на этом форуме просиженное время бонусов не каких не дает, но на некоторых форумах за это бывают всякие ништячки... А иногда буржуйские формы даже ПЛАТЯТ за насиженное время!
    Вот собственно и возникла идея... Выделенным сервером я не распалогаю. Но есть хостинг. Хороший, навороченый, со всеми доступными феничками. На фрях. Сейчас там из "кроме_сайта" стоит только ужимающий проксик (пхпшный, естессно). Ну вот и хочу собсно сделать скрипт, который при запуске посялал бы определенный запрос на определенный сайт... :) Запуск скрипта через крон поставить. Благо шелл есть.
    С запросами я еще не работал особо. Кто поможет сделать подобный скрипт? :) А то я даже как реализовать это не до конца осознаю... :) Буду благодарен за любую информацию...
     
  2. hhover

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

    Joined:
    21 May 2007
    Messages:
    60
    Likes Received:
    36
    Reputations:
    11
    Code:
    <?php
    set_time_limit(0);
    
    
    $url_for_login_page = 'http://site.com/login.php';
    $url = 'http://site.com/';
    
    # все значение из формы для логина
    $post_data = 'login=mylogin&pass=mypass&tralala=1';
    
    $curl = curl_init ( );
    
    curl_setopt ( $curl, CURLOPT_URL, $url_for_login_page );
    curl_setopt ( $curl, CURLOPT_FOLLOWLOCATION, 1 );
    
    curl_setopt ( $curl, CURLOPT_POST, 1 );
    curl_setopt ( $curl, CURLOPT_POSTFIELDS, $post_data );
    
    curl_setopt ( $curl, CURLOPT_COOKIESESSION, 1 );
    curl_setopt ( $curl, CURLOPT_COOKIEJAR, 'cookie.txt' );
    curl_setopt ( $curl, CURLOPT_COOKIEFILE, 'cookie.txt' );
    
    curl_setopt ( $curl, CURLOPT_TIMEOUT, 5 );
    
    curl_exec ( $curl );
      
    while ( 1 )
    {
      
      curl_setopt ( $curl, CURLOPT_URL, $url );
    
      curl_setopt ( $curl, CURLOPT_COOKIESESSION, 1 );
      curl_setopt ( $curl, CURLOPT_COOKIEJAR, 'cookie.txt' );
      curl_setopt ( $curl, CURLOPT_COOKIEFILE, 'cookie.txt' );
    
      curl_setopt ( $curl, CURLOPT_TIMEOUT, 5 );
    
      curl_exec ( $curl );
    
      sleep ( 30 );
    
    }
    ?>
    Что-то похожее. Общий смысл - Логинимся, запоминаем куки, а потом обновляем страницу каждые 30 секунд.
     
    2 people like this.
  3. Kallisto

    Kallisto Member

    Joined:
    18 May 2007
    Messages:
    0
    Likes Received:
    7
    Reputations:
    0
    ignore_user_abort(1);
    после set_time_limit(0);
    добавиь и будет счастье... а еще, там где sleep(30), сделай sleep(rand(10,50));
     
  4. genom--

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

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    берем inet crack =)

    ставим флаг где repeat enable
    выставляем таймаут на отсылку пакета и количество пакетов --- ну и собственно сам запрос на какойнить топик жмякаем send packet и вот вам накрутчик времени

    ps а вообще это "жесть"
     
  5. Raz0r

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

    Joined:
    7 Jan 2007
    Messages:
    126
    Likes Received:
    20
    Reputations:
    0
    Нужно просто чтобы скрипт через интервал времени (можно на крон повесить) с заголовками пользователя посещал страничку, ну или ходил по ссылкам, которые вручную можно вбить.
     
    1 person likes this.
  6. Linuxoid

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

    Joined:
    13 Feb 2007
    Messages:
    200
    Likes Received:
    28
    Reputations:
    0
    С тем же успехом я могу в Опере выставить "Обновлять каждые 5 минут"... Надо именно на ПХП и именно на выделенный сервер...


    Надо чтоб ТУПО обновлялась страница. Там не кто не следит что именно я просматриваю. Просто сколько времени провел. :)


    hhover
    Можно, плиз, комменты к строкам? А то я с curl некогда в жизни не работал... Я конечно понимаю, что можно так поковырять и оно заработает, но мне просто важно понять.
     
  7. hhover

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

    Joined:
    21 May 2007
    Messages:
    60
    Likes Received:
    36
    Reputations:
    11
  8. Raz0r

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

    Joined:
    7 Jan 2007
    Messages:
    126
    Likes Received:
    20
    Reputations:
    0
    Linuxoid, ну а так мой способ не катит, хочешь сказать? Крон лучшее решение. Тупо страница с нужными хэдерами и тупо крон...
     
  9. qPhoenix

    qPhoenix Banned

    Joined:
    15 Dec 2005
    Messages:
    87
    Likes Received:
    50
    Reputations:
    8
    собсно все зависит от твоего хостинга, обычно сет_тайм_лимит не доступен, так что как мой варик: отснифать момент обновления форума в зареганом виде, поместить сие в сокет и вызывать при посещении кемто страницы своего хоста...

    например:
    Code:
    <?
    $fp = fsockopen ("www.site.ru", 80, $errno, $errstr, 30);
    if (!$fp) echo "$errstr ($errno)<br />\n";
    else {
    $send="GET http://www.briz.ua/forum/ HTTP/1.0\r\n". 
    "............".
    "Cookie: phpbb2mysql_data=phpbb2mysql_sid=91ccb10420c78e27378d58b9073c52c5\r\n".  	'Cookie2: $Version=1\r\n'. 
    "......................\r\n\r\n";
    fputs ($fp,$send);
    }
    ?>
    конечно вопрос в доступности сокетов и в посетителях =)
    второе не особая трабла, стоило бы оно этого...

    что ваще за сервис? сокка платят? =) дай адресок ;) (можно будет скооперироваться)))
     
    1 person likes this.
  10. Linuxoid

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

    Joined:
    13 Feb 2007
    Messages:
    200
    Likes Received:
    28
    Reputations:
    0
    Так... Все работал... Не было времени... Теперь вот снова поднимаю эту тему... :)

    hhover
    Огроменное спасибо! Все пашет, но set_time_limit(0) на хостинге запрещенно... Так что воть... :) Скормил ЭТО крону, чтоб каждые 2 минуты запускал - вроде работает... :)
     
  11. tcl

    tcl Banned

    Joined:
    17 Jun 2007
    Messages:
    35
    Likes Received:
    49
    Reputations:
    40
    а в чём смысл вот этого всего?
     
    2 people like this.
  12. hhover

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

    Joined:
    21 May 2007
    Messages:
    60
    Likes Received:
    36
    Reputations:
    11
    tcl,
    BlackCats, Да.
     
  13. Linuxoid

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

    Joined:
    13 Feb 2007
    Messages:
    200
    Likes Received:
    28
    Reputations:
    0
    Так... А я вот тут чего намозговал...
    Можно сделать так: 2 скрипта. Скрипт №1 - посылает запрос авторизации. Скрипт №2 - собственно, обновляет страницу каждую минуту. Посколько таймлимит у меня у хостера ЗАПРЕЩЕН вообще, то запускать скрипт №1 через крон раз в 6 часов (чтобы перелогиниваццо, а то мало ли), а скрипт №2 раз в минуту. :)
    Собственно, прошу помочь реализовать скрипты. :)
     
  14. Linuxoid

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

    Joined:
    13 Feb 2007
    Messages:
    200
    Likes Received:
    28
    Reputations:
    0
    Ну так как, подскажет кто как сие реализовать? :)
     
  15. hhover

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

    Joined:
    21 May 2007
    Messages:
    60
    Likes Received:
    36
    Reputations:
    11
    login.php
    PHP:
    <?php
    $curl 
    curl_init 'http://site.com/login.php' );
    curl_setopt $curlCURLOPT_FOLLOWLOCATION);
    curl_setopt $curlCURLOPT_POST);
    curl_setopt $curlCURLOPT_POSTFIELDS'login=mylogin&pass=mypass' );
    curl_setopt $curlCURLOPT_COOKIESESSION);
    curl_setopt $curlCURLOPT_COOKIEJAR'cookie.txt' );
    curl_setopt $curlCURLOPT_COOKIEFILE'cookie.txt' );
    curl_exec $curl );
    curl_close $curl );
    ?>
    cron.php
    PHP:
    <?php
    $curl 
    curl_init 'http://site.com/' );
    curl_setopt $curlCURLOPT_COOKIESESSION);
    curl_setopt $curlCURLOPT_COOKIEJAR'cookie.txt' );
    curl_setopt $curlCURLOPT_COOKIEFILE'cookie.txt' );
    curl_exec $curl );
    curl_close $curl );
    ?>
    chmod cookie.txt 777
     
  16. Linuxoid

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

    Joined:
    13 Feb 2007
    Messages:
    200
    Likes Received:
    28
    Reputations:
    0
    Тут вот еще появилась идея... Попробывать посылать запрос на сокет... Тоесть открываем сокет, шлем http запрос, закрываем сокет. Проверки по ИП там нет. Все должно проканать... :) Но вот с реализацией этого опятьже проблемы...

    hhover
    Куки в файл пишет, все нормально, но почмуто не работает... :( Пытаюсь разобраться почему...
     
  17. Ni0x

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

    Joined:
    27 Aug 2006
    Messages:
    338
    Likes Received:
    157
    Reputations:
    37
    Linuxoid, если тебе важен результат, а не реализация, то лучше сделать с curl, тк проще
     
  18. теща

    теща Экстрасенс

    Joined:
    14 Sep 2005
    Messages:
    2,027
    Likes Received:
    526
    Reputations:
    285
    чет у мну ет не конает , залил на хост права дал 777
    коки сами создались ,
    в поле mylogin влупил логин там де пароль проль ,
    страничка то обновляеться но я не залогенился почему ?
     
  19. теща

    теща Экстрасенс

    Joined:
    14 Sep 2005
    Messages:
    2,027
    Likes Received:
    526
    Reputations:
    285
    phpbb 2
    PHP:
     <tr>
                <
    td align="right"><span class="gen">Пароль:</span></td>
                <
    td>
                  <
    input type="password" class="post" name="password" size="25" maxlength="32" />
                </
    td>
              </
    tr>
              <
    tr align="center">
                <
    td colspan="2"><span class="gen">Автоматически входить при каждом посещении: <input type="checkbox" name="autologin" /></span></td>
              </
    tr>
              <
    tr align="center">
                <
    td colspan="2"><input type="hidden" name="redirect" value="" /><input type="submit" name="login" class="mainoption" value="Вход" /></td>
              </
    tr>
              <
    tr align="center">
                <
    td colspan="2"><span class="gensmall"><a href="profile.php?mode=sendpassword" class="gensmall">Забыли пароль?</a></span></td>
    по подробней плиз что куда прописать в ту форму
     
    #19 теща, 3 Apr 2009
    Last edited: 3 Apr 2009