Простенький скрипт на пхп

Discussion in 'PHP' started by MAG0t, 24 May 2010.

  1. MAG0t

    MAG0t New Member

    Joined:
    19 Jan 2007
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    здрасте, всем
    может кто помоч со скриптом на пхп:
    вытягиваете с дампа данные в таком порядке:
    nick;email;md5
    nick;email;md5
    nick;email;md5
    ...
    для брута.
    увы, на кошеле щас голяк, так бы уже давно нашел человека.
    тому пока что могу предложить только рекомендации знакомым насчёт работы для вас ну и + в репу :)
    ----------
    mysql:
     
    #1 MAG0t, 24 May 2010
    Last edited: 25 May 2010
  2. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    PHP:
    <?php
    $array 
    = array();
    for (
    $i 0$i count(file('dump.txt'));$i++)
    {
        list(
    $nick$email$md5) = explode(';'$line[$i]);
        
    $array[] = $nick ';' $email ';' $md5;
    }
    print_r($array);
    Какой вопрос, такой ответ
     
  3. AdReNa1!Ne

    AdReNa1!Ne Elder - Старейшина

    Joined:
    24 May 2007
    Messages:
    70
    Likes Received:
    105
    Reputations:
    14
    Изя, твой скрипт проще накатать вот так:
    PHP:
    <?php
    print_r
    (file('dump.txt'));
    ?>

    Хотя, я понял смысл слов - каков вопрос - таков и ответ. И вправду неясно, что хотят...
     
    1 person likes this.
  4. Zombi ****

    Zombi **** Elder - Старейшина

    Joined:
    4 Apr 2009
    Messages:
    166
    Likes Received:
    183
    Reputations:
    17
    Тс все экстрасенсы в отпуске, скажи подробнее что к чему
     
  5. Vlad&slav

    Vlad&slav Member

    Joined:
    1 Jan 2009
    Messages:
    207
    Likes Received:
    41
    Reputations:
    9
    PHP:
    <?php 
    $array 
    = array(); 
    for (
    $i 0$i count(file('dump.txt'));$i++) 

        list(
    $nick$email$md5) = explode(';'$line[$i]); 
        echo 
    $md5."<br>\n";

    ?>
    Я экстросенс? :D
     
  6. POS_troi

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

    Joined:
    1 Dec 2006
    Messages:
    1,569
    Likes Received:
    466
    Reputations:
    108
    Нет ты ошибся. Дам скорее всего Mysql соответственно, скорее всего разделитель в дампе будет ",".

    2ТС

    Пример дампа в студию
     
  7. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Учимся оптимизировать:
    PHP:
    for ($i 0$len=count(file('dump.txt')); $i $len$i++) 
     
    2 people like this.
  8. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    Не учи ученого^^
    Я бы такое в цикле не делал бы если что =)
     
  9. MAG0t

    MAG0t New Member

    Joined:
    19 Jan 2007
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    извеняюсь) обновил пост.
     
    #9 MAG0t, 25 May 2010
    Last edited: 25 May 2010
  10. MAG0t

    MAG0t New Member

    Joined:
    19 Jan 2007
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    а какие таблицы нужно?
    дамп с движка coBreeder
     
  11. krypt3r

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

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    PHP:
    <?php
      $str 
    "INSERT INTO table VALUES (157463,'Akartal','[email protected]','2d3d0314c867d1d2e542656bd61f4777','','2007-03-24 15:11:02',0,'2007-05-30 18:29:02',4,0,1,NULL,NULL),(157464,'acmanrs','[email protected]','7a2b34dc952ab2cb0c2d82aca3f3615e','-6118153180.828977724139197','2007-03-24 15:11:51',0,NULL,4,0,1,NULL,NULL),(157465,'elefant ezinho','[email protected]','f7236291359919691fa0f8d007c23989','','2007-03-24 15:15:23',0,'2007-05-30 18:29:02',4,0,1,NULL,NULL)";
      
    preg_match_all ('/^insert\s+into+.+?values\s*(\(.*\))/i'$str$m);
      
    preg_match_all ('/\((.*?)\)/'$m[1][0], $m);
      foreach (
    $m[1] as $line) {
        
    preg_match ("/^\d+,\s*'(.*?)',\s*'(.*?)',\s*'([0-9a-f]{32})'/"$line$mm);
        echo 
    $mm[1], ';'$mm[2], ';'$mm[3], "\n";
      }
    ?>
    Вывод
    Code:
    Akartal;[email protected];2d3d0314c867d1d2e542656bd61f4777
    acmanrs;[email protected];7a2b34dc952ab2cb0c2d82aca3f3615e
    elefant ezinho;[email protected];f7236291359919691fa0f8d007c23989
    
     
    1 person likes this.
  12. MAG0t

    MAG0t New Member

    Joined:
    19 Jan 2007
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    всё работает, только строку не хочет переносить:
    Akartal;[email protected];2d3d0314c867d1d2e542656bd61f4777 acmanrs;acma [email protected];7a2b34dc952ab2cb0c2d82aca3f3615e elefant ezinho;[email protected];f7236291359919691fa0f8d007c23989
    --------------------

    заменил \n на <br>, всё отлично
    благодарю
     
    #12 MAG0t, 25 May 2010
    Last edited: 25 May 2010
  13. DonKihot

    DonKihot New Member

    Joined:
    23 May 2010
    Messages:
    28
    Likes Received:
    2
    Reputations:
    0
    Почему???
     
  14. DiffiT

    DiffiT Member

    Joined:
    15 Dec 2009
    Messages:
    195
    Likes Received:
    12
    Reputations:
    3
    Да действительно, почему?
    Подобные примеры даже в учебниках приводятся, чтобы показать всю красоту сишного оператора for
     
  15. emmy

    emmy Member

    Joined:
    12 Oct 2009
    Messages:
    76
    Likes Received:
    17
    Reputations:
    8
    Потому что у кода, который написал Isis, квадратичное поведение. А должно быть линейное.
     
    1 person likes this.
  16. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Код Isis'а каждую итерацию цикла будет загружать файл в массив и считать количество элементов в нём. Если будет 1000 итераций, то и файл будет загружаться 1000 раз. В моем коде эта строка вынесена в секцию инициализации цикла, потому что файл во время работы цикла всё равно не меняется, и в моем коде он будет загружен только 1 раз.
    Книжки плохие, учитесь по другим)
     
    1 person likes this.