[php] Заполнение форм

Discussion in 'PHP' started by Хелпер, 7 Nov 2009.

  1. Хелпер

    Хелпер Elder - Старейшина

    Joined:
    21 Feb 2007
    Messages:
    120
    Likes Received:
    31
    Reputations:
    -1
    Итак. Суть задачи скрипта:
    Открывает страницу http://forma.net/index.php
    На странице html форма с несколькими полями. Например:
    HTML:
    <form action="res.php" method="post">
    <input type="text" name="login">
    <input type="text" name="pass">
    <input type="text" name="email">
    <input type="submit">
    </form>
    
    Вводит буквенное имя длиной от 4 до 10 символов, вводит пароль, идентичный имени, и емаил следущим образом:
    имя@любые_буквосочетания(точка)любые_быквосочетания
    и жмет интер.
    А затем все заново.
    Никаких логов и статистик не нужно.

    Так же желательно использование прокси серверов из txt документа.

    Если кто-то возьмется бесплатно, буду рад, ну а если работа требует оплаты - ваши предложения. Мне надо для выпускной работы.
     
  2. Gray_Wolf

    Gray_Wolf Active Member

    Joined:
    7 Mar 2009
    Messages:
    377
    Likes Received:
    135
    Reputations:
    10
    Передаёте функции полный путь до вашего res.php и она отсылает нужные вам данные
    PHP:
    function get_page($url){
    $ch curl_init();
    curl_setopt($chCURLOPT_URL$url); 
    curl_setopt($chCURLOPT_POST1);
    curl_setopt($chCURLOPT_POSTFIELDS"login=Vasya&pass=Vasya&[email protected]");
    $result curl_exec($ch);
    curl_close($ch);
    }
     
  3. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
    =>
    ну это просто так, так тоже можно
     
  4. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    Тока чет по адресу http://forma.net/index.php я не увидел формы =)
    PHP:
    <?php
    set_time_limit
    (0);
    $proxylist file('proxy.txt');
    $proxylist array_map('trim',$proxylist);

    foreach (
    $proxylist as $proxy) {

    $ch curl_init('http://forma.net/index.php');
    curl_setopt($ch,CURLOPT_RETURNTRANSFER1);
    curl_setopt($ch,CURLOPT_REFERER$url);
    curl_setopt($ch,CURLOPT_TIMEOUT5);

    curl_setopt($ch,CURLOPT_POST1);
    curl_setopt($ch,CURLOPT_POSTFIELDS'login=admin&pass=123456&[email protected]');

    curl_setopt($ch,CURLOPT_COOKIEJAR'./cook');
    curl_setopt($ch,CURLOPT_COOKIEFILE'./cook');

    curl_setopt($chCURLOPT_USERAGENT'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox-Zalupa/3');
    curl_setopt($chCURLOPT_PROXY$proxy);
    $content curl_exec($ch);
    curl_close($ch);

    }
    ?>
     
  5. Хелпер

    Хелпер Elder - Старейшина

    Joined:
    21 Feb 2007
    Messages:
    120
    Likes Received:
    31
    Reputations:
    -1
    вы немного не поняли задания. После выполнения цикла необходимо генерировать имя пароль маил и заново выполнять цикл.
     
  6. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    В цикле повставляй вызов функций.

    PHP:
    function namegen($length)
    {
    $result '';
    $vals "abcdefghijklmnopqrstuvwxyz0123456789";
    for(
    $i=1$i<=$length$i++)
    {
    $result .= $vals{rand(0strlen($vals) - 1)};
    }
    return 
    $result;
    }
    PHP:
    function passgen($length)
    {
    $result '';
    $vals "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_-+";
    for(
    $i=1$i<=$length$i++)
    {
    $result .= $vals{rand(0strlen($vals) - 1)};
    }
    return 
    $result;
    }
    PHP:
    function mail_gen($length)
    {
    $result '';
    $vals "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_-+";
    for(
    $i=1$i<=$length$i++)
    {
    $result .= $vals{rand(0strlen($vals) - 1)};
    }
    $result .= $result.'@mail.ru';
    return 
    $result;
    }
     
  7. Хелпер

    Хелпер Elder - Старейшина

    Joined:
    21 Feb 2007
    Messages:
    120
    Likes Received:
    31
    Reputations:
    -1
    в каком формате должен быть файл с проксями?
    xxx.xxx.xxx.xxx:port
    xxx.xxx.xxx.xxx:port
    TAK?

    И как передать фун-ии адрес до res.php?
     
    #7 Хелпер, 7 Nov 2009
    Last edited: 7 Nov 2009
  8. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    IP:pORT
    Неебу о каком res.php вообще идет речь.

    Вот вообщем слепил в кучу на всякий случай.
    PHP:
    <?php 
    set_time_limit
    (0); 
    $proxylist file('proxy.txt'); 
    $proxylist array_map('trim',$proxylist); 

    foreach (
    $proxylist as $proxy) { 

    $login namegen(8);
    $pass passgen(10);
    $email mail_gen(8);

    $ch curl_init('http://forma.net/index.php'); 
    curl_setopt($ch,CURLOPT_RETURNTRANSFER0); 
    curl_setopt($ch,CURLOPT_REFERER'http://rambler.ru'); 

    curl_setopt($ch,CURLOPT_POST1); 
    curl_setopt($ch,CURLOPT_POSTFIELDS'login='.$login.'&pass='.$pass.'&email='.$email); 

    curl_setopt($ch,CURLOPT_COOKIEJAR'./cook'); 
    curl_setopt($ch,CURLOPT_COOKIEFILE'./cook'); 

    curl_setopt($chCURLOPT_USERAGENT'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.4) Gecko/2008102920 AdCentriaIM/1.7 Firefox-Zalupa/3'); 
    curl_setopt($chCURLOPT_PROXY$proxy); 
    curl_setopt($ch,CURLOPT_TIMEOUT5);

    $content curl_exec($ch); 
    curl_close($ch); 



    /* FUNCTIONS */

    function namegen($length

    $result ''
    $vals "abcdefghijklmnopqrstuvwxyz0123456789"
    for(
    $i=1$i<=$length$i++) 

    $result .= $vals{rand(0strlen($vals) - 1)}; 

    return 
    $result


    function 
    passgen($length

    $result ''
    $vals "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_-+"
    for(
    $i=1$i<=$length$i++) 

    $result .= $vals{rand(0strlen($vals) - 1)}; 

    return 
    $result

    function 
    mail_gen($length

    $result ''
    $vals "abcdefghijklmnopqrstuvwxyz0123456789"
    for(
    $i=1$i<=$length$i++) 

    $result .= $vals{rand(0strlen($vals) - 1)}; 

    $result $result.'@mail.ru'
    return 
    $result

    ?>
     
  9. Osip

    Osip New Member

    Joined:
    20 Jan 2008
    Messages:
    14
    Likes Received:
    4
    Reputations:
    0
    он про это...
    ссылку сам поменяй с
    http://forma.net/index.php на
    http://forma.net/res.php
     
  10. Хелпер

    Хелпер Elder - Старейшина

    Joined:
    21 Feb 2007
    Messages:
    120
    Likes Received:
    31
    Reputations:
    -1
    Я видимо тупой, свяжите все в одно пожалста.
     
  11. QtQDuck

    QtQDuck Member

    Joined:
    1 Aug 2007
    Messages:
    70
    Likes Received:
    10
    Reputations:
    0
    Рискну попросить в этой теме, чтоб не создавать других.

    Нужен скрипт, который так же будет заполнять рендомом формы имя\фамилию\пасс\город\логин\, а мыла, для ввода, будет брать из txt файла. Так же может и работа и со списком прокси(если можно).
    Никаких ограничений на формы. т.е. вводи все что хочешь.

    Вобщем, пользователю нужно нажать только 1 кнопку "Регистрация" и все....т.е. 1клик = 1регистрация...

    Регистрация, абсолютно такая же как и здесь.

    Буду рад помощи, ну а если очень сложно, готов оплатить.
    Буду очень благодарен...Спасибо
     
    #11 QtQDuck, 9 Nov 2009
    Last edited: 9 Nov 2009