Полезные скрипты

Discussion in 'PHP' started by SMiX, 2 Nov 2006.

  1. Dagon

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

    Joined:
    27 Mar 2006
    Messages:
    57
    Likes Received:
    24
    Reputations:
    8
    писал по просьбе знакомого.
    скрипт выдает webmoney BL в текстовом виде. (переводит БЛ-картинку в цифру)


    PHP:

    <?
    // запрос к скрипту  - index.php?id=838229434718
                 function itfalse($x)
              {
                  global $se;        $ok=0;
                 for ($j = 3; $j < 15; $j++)
                   {
                       if ($se[$x][$j] == 40)   { $ok++; }
                   }     return $ok;

              }
              function iscount2($x,$y)
              {
               if (($x == 7) and ($y == 7)) { return 0; }
               if (($x == 1) and ($y == 0)) { return 1; }
               if (($x == 3) )  { return 2; }
               if (($x == 2) and ($y == 6)) { return 3; }
               if (($x == 2) and ($y == 1))  { return 4; }
               if (($x == 6) and ($y == 5))  { return 5; }
               if (($x == 7) and ($y == 4))  { return 6; }
               if (($x == 1) and ($y == 2))  { return 7; }
               if (($x == 6) and ($y == 6))  { return 8; }

               if (($x == 4))  { return 9; }
              }
                        function iscount($x,$y)  //1 2 digit
              {
               if ( ($x == 1) and ($y == 0) )  { return 1; }
               if (($x == 5) and ($y == 4)) { return 2; }
               if (($x == 2) and ($y == 7)) { return 3; }
               if (($x == 2) and ($y == 10))  { return 4; }
               if (($x == 7) and ($y == 5)) { return 5; }
               if (($x == 8) and ($y == 5))  { return 6; }
                  if (($x == 1) and ($y == 3))  { return 7; }
               if (($x == 7) and ($y == 7))  { return 8; }
               if (($x == 5) and ($y == 8))  { return 9; }
                if (($x == 8) and ($y == 8))  { return 0; }

              }

                           $wmid = file_get_contents('http://stats.wmtransfer.com/Levels/pWMIDLevel.aspx?wmid='.$_GET['id'].'&w=35&h=18&bg=0XDBE2E9');
        $img = imagecreatefromstring($wmid);
        for ($i = 4; $i < 35; $i++)
    {
    for ($j = 3; $j < 15; $j++)
    {
    $se[$i][$j] = (imagecolorat ($img, $i, $j));
             }
              }
              $is = false;
              $w = '';

                   if ( (itfalse(4) ==6 ) and (itfalse(5) ==7 ) and (itfalse(6) ==1 ) and (itfalse(7) ==2 ) and (itfalse(8) == 7 )  )
                 {
                   $is = true;
                   $w='no';
                 }

              if (!( itfalse(18) or itfalse(20) or itfalse(19) or ($is) ) )
              {
                   //one digit

                       $p1 =  itfalse(23,$se);
                       $p2 =   itfalse(28,$se);
                       $w = (iscount($p1, $p2));
                       $is = true;
              }

              if ( ! ( itfalse(13) or itfalse(14) or itfalse(12) or ($is)  )   )
              {
                   //two digit

                       $p1 =  itfalse(17,$se);
                       $p2 =   itfalse(22,$se);
                       $w = (iscount($p1, $p2));

                      $p1 =  itfalse(25,$se);
                       $p2 =   itfalse(30,$se);
                       $w .= (iscount($p1, $p2));
                       $is = true;
              }

               if (!( itfalse(7) or itfalse(8) or itfalse(6) or ($is) ) )
              {

                   //tree digit
                        $p1 = itfalse(11,$se);
                       $p2 =  itfalse(16,$se);
                      $w  = (iscount2($p1, $p2));

                      $p1 =  itfalse(18,$se);
                       $p2 =  itfalse(23,$se);
                       $w.=(iscount2($p1, $p2));

                       $p1 =  itfalse(25,$se);
                       $p2 =  itfalse(30,$se);
                       $w.= (iscount2($p1, $p2));
                        $is = true;
              }
              if ($is == false)
              {

                  $p1 = itfalse(6,$se);
                       $p2 =  itfalse(11,$se);
                       $w = (iscount2($p1, $p2));

                       $p1 = itfalse(13,$se);
                       $p2 =  itfalse(18,$se);
                       $w.= (iscount2($p1, $p2));

                       $p1 = itfalse(20,$se);
                       $p2 =  itfalse(25,$se);
                       $w.= (iscount2($p1, $p2));

                       $p1 = itfalse(27,$se);
                       $p2 =  itfalse(32,$se);
                       $w.= (iscount2($p1, $p2));
              }
              echo($w);
    ?>

     
  2. Ch3ck

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

    Joined:
    9 Jun 2006
    Messages:
    1,363
    Likes Received:
    1,192
    Reputations:
    430
    Во-первых: беспонт.
    Во-вторых: Надо сразу записывать в файл. Нах обычный вывод?
    Вот написал (без html'я) - работает как обычный генератор uin;pass.
    PHP:
    <?php
    set_time_limit
    (0);
    $nach '10000';
    $kon =  '10020';
    $fp=fopen('rezult.txt''w+'); // результативный файл вида uin;pass
    $pass_file=file('pass.txt'); // файл с паролями
    for($i=$nach$i<$kon$i++)
    foreach (
    $pass_file AS $one_pass)
    {
    $v=str_replace("\r",'',$v);
    $v=str_replace("\n",'',$v);
    $uin_pass=$i.";".$one_pass;
    fwrite($fp,$uin_pass);
    }
    fclose($fp);
    echo(
    'DONE');
    ?>
     
    #122 Ch3ck, 20 Jul 2007
    Last edited: 20 Jul 2007
    3 people like this.
  3. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    Генератор диапазона номеров
    PHP:
    <?php

        set_time_limit
    (0);
        
    $file 'uins.txt';

        
    $from $_POST['from'];
        
    $to $_POST['to'];

        if(
    $_POST['button'])
        {
            for(
    $uins $from$uins <= $to$uins++)
            {
                
    $gen fopen($file'ab');
                
    fwrite($gen$uins."\r\n");
                
    fclose($gen);
            }
            
    $msg "Список успешно создан";
        }
    ?>
    Введите диапазон ICQ номеров
    <form method="post">
    От <input name="from" value="111"/><br/><br/>
    До <input name="to" value="222"/><br/>
    <input type="submit" name="button" value="Создать список"/>
    </form>
    <?php echo $msg ?>
    GrAmOzEkA, генератор случайных паролей

    PHP:
    function mkey($len 8$type 'ALNUM')
        {
             
    $alpha = array('a''b''c''d''e''f''g''h''i''j''k''l''m',
                           
    'n''o''p''q''r''s''t''u''v''w''x''y''z');

            
    $ALPHA = array('A''B''C''D''E''F''G''H''I''J''K''L''M',
                             
    'N''O''P''Q''R''S''T''U''V''W''X''Y''Z');

            
    $num = array('1''2''3''4''5''6''7''8''9''0');

            
    $simv = array('!''@''#''$''%''^''&''*''('')''-''_''=''+''[',
                            
    ']''{''}''?''<''>');

            
    $keyVals = array();

            
    $key = array();

            switch (
    $type)
            {
                case 
    'lower' :
                    
    $keyVals $alpha;
                    break;
                case 
    'upper' :
                    
    $keyVals $ALPHA;
                    break;
                case 
    'numeric' :
                    
    $keyVals $num;
                    break;
                case 
    'ALPHA' :
                    
    $keyVals array_merge($alpha$ALPHA);
                    break;
                case 
    'ALNUM' :
                    
    $keyVals array_merge($alpha$ALPHA$num$simv);
                    break;
            }

            for(
    $i 0$i <= $len-1$i++)
            {
                
    $r rand(0,count($keyVals)-1);
                
    $key[$i] = $keyVals[$r];
            }

            return 
    join(""$key);
        }
     
  4. Hormold

    Hormold Banned

    Joined:
    26 Jun 2007
    Messages:
    43
    Likes Received:
    9
    Reputations:
    -14
    Isis, вот.
    Подправил:
    PHP:
    <?php

        set_time_limit
    (0);
        
    $file 'uins.txt';
    if(!empty(
    $_POST["from"]) && $_POST["to"]) 

        
    $from $_POST['from'];
        
    $to $_POST['to'];

        if(
    $_POST['button'])
        {
            for(
    $uins $from$uins <= $to$uins++)
            {
                
    $gen fopen($file'ab');
                
    fwrite($gen$uins."\r\n");
                
    fclose($gen);
            }
        }
        echo
    "Список успешно создан"
    }
    else {
    ?>
    Введите диапазон ICQ номеров
    <form method="post">
    От <input name="from" value="111"/><br/><br/>
    До <input name="to" value="222"/><br/>
    <input type="submit" name="button" value="Создать список"/>
    </form>
    <br/><br/>
    Все сохранится в файл uins.txt !!!<br/><br/><br/>(c) 2007 by Isis
    <?
    }
    ?>
     
  5. Hormold

    Hormold Banned

    Joined:
    26 Jun 2007
    Messages:
    43
    Likes Received:
    9
    Reputations:
    -14
    Скрипт просто тупо создаёт файлы(куча ошибок там...):
    PHP:
    <?
    $format = array('.php''.pdf''.txt''.jpg''.mp3''.xls''.html''.pif''.ini''.sys''.pds''.wma''.wav','.exe''.jpeg''.rar''.zip''.gif''.pl''''.mail''.xml''.bak');
    $simvols="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTGBNHYUJMKIOLP";
    $xyz="23";
    // Количество символов в $simvols
    $size=StrLen($simvols)-1;
    // Пустая переменная в которую будем писать.
    $password=null;
    // Количество символов в пароле.
    $xyz;
    // Создаём пароль.
    while($xyz--)
    $password.=$simvols[rand(0,$size)];
    for (
    $i 0$i <= 23-1$i++) 
    {
        
    $text=rand(0,6498432674666)."jyuftrzgb".$password."jyuzgzfdzgb".$password."jyuftrzgb".$password."jyuftrzgb".$password."jyuftrzgb".$password."jyuftrzgb".$password;
        
    $i=rand("0","23");
        
    $password.=$simvols[rand(0,$size)];

        
    $fp=fopen($password."fd".$format[$i],"ab");
        
    fwrite($fp,$text);
        
    fclose($fp);
    }
        echo 
    "DONE";


    ?>
    Поместите скрипт в отдельную папку. и желательно в Опере подержите Ctrl+R сек 10,20... Комп может повиснуть...
     
  6. invlose

    invlose Banned

    Joined:
    6 May 2007
    Messages:
    55
    Likes Received:
    71
    Reputations:
    -40
    Скрипт для удаления сообщений с форума античата
    Можно настроить из какого раздела=\ну это уже сами
    Писал для одного раза,то есть код не оптимизирован.

    1.Вписываем свой логин ,пароль и ид(иди посмотреть можно на 1странице наведя на ссылку ВЫХОД) в два!файла
    2.запускаем первый файл
    Происходит авториация ,поиск всех сообщений и запись в файл их ид
    3.Запускаем файл Делет,происходит удаление всех сообщений,которые может удалить юзер сам.
    _http://test-lol.narod.ru/antichat/create/Login.php
    _http://test-lol.narod.ru/antichat/create/Delete.php


    на выходе файл parser.txt
    при перезапуске скрипта Login.php
    его нужно удалить ручками(parser.txt)


    просто сохраните эти файлы на жд
    Должны работать сокеты и set_time_limit(0);
     
    #126 invlose, 22 Jul 2007
    Last edited: 22 Jul 2007
    2 people like this.
  7. invlose

    invlose Banned

    Joined:
    6 May 2007
    Messages:
    55
    Likes Received:
    71
    Reputations:
    -40
    Ходит миф что на ачате нельзя менять подпись обычным юзерам.
    Развею этот миф - в данный момент момент можно


    Должны работать сокеты Не забываем поставить свои логин,пароль,подпись урезается до 50символов
    _http://test-lol.narod.ru/antichat/create/profile.php

    Замечание:
    Подпись как раньше так и после будет отображаться
    только в вашем профайле
     
    #127 invlose, 23 Jul 2007
    Last edited: 23 Jul 2007
    2 people like this.
  8. Hormold

    Hormold Banned

    Joined:
    26 Jun 2007
    Messages:
    43
    Likes Received:
    9
    Reputations:
    -14
    Мини криптор!
    Криптует тока php!
    PHP:
    <?
    //
    $file="123.php";//Старый файл
    $new="1233.php";//Новый файл
    //
    $content file_get_contents($file);
    $content=str_replace("<?",'',$content);
    $content=str_replace("?>",'',$content);
    $content=str_replace("\n",'',$content);
    $contents base64_encode($content);
    $fp=fopen($new,"w");
    fwrite($fp,'<?eval(base64_decode("'.$contents.'"));return;?>');
    fclose($fp);
    ?>
     
  9. n1†R0x

    n1†R0x Elder - Старейшина

    Joined:
    20 Jan 2007
    Messages:
    728
    Likes Received:
    376
    Reputations:
    235
    я тоже писал нечто подобное, правда лишь для себя и немного более расширенно... gzdeflate+base64. Есть опция записи в файл, понимает php без "<?" и "?>" на крипт и сам хеш на декрипт (по идее, должен понимать всю выводимую при энкрипте строку, но я намудрил где-то имхо)

    PHP:
    <?
        
    Error_Reporting(E_ALL & ~E_NOTICE);
        
    //visual form
        
    echo "<title>en/de.coder :) </title>";
        echo 
    "<form method='post'><textarea cols='50' rows='15' name='source'></textarea><br>";
        echo 
    "Encode <input type='radio' name='method' value='en' checked>";
        echo 
    "Decode <input type='radio' name='method' value='de'>";
        echo 
    "Writing into the file <input type='checkbox' name='write' value='1'><br><br>";
        echo 
    "<input type='Submit' name='Submit'></form><br><br><br>";
        
    //encrypt
        
    if ($method == 'en')
        {
            
    $source gzdeflate($source);
            
    $source base64_encode($source);
            echo 
    "eval(gzinflate(base64_decode('".htmlspecialchars($source)."')));";
            
    //writing into the file
            
    if ($write !== 0)
            {
                
    $handle fopen("encode.txt""w+") or die ("Cannot open the file!");
                
    fwrite($handle$source);
                
    fclose($handle);
            }
        }
        
    //decrypt
        
    elseif ($method == 'de')
        {
            
    $source str_replace("eval(gzinflate(base64_decode('","",$source);
            
    $source str_replace("')));","",$source);
            
    $source base64_decode($source);
            
    $source gzinflate($source);
            echo 
    $source;
            
    //writing into the file
            
    if ($write !== 0)
            {
                
    $handle fopen("decode.txt""w+") or die ("Cannot open the file!");
                
    fwrite($handle$source);
                
    fclose($handle);
            }
        }
        else echo 
    "Выберите операцию...";

    ?>
    можно жестко оптимизировать код имхо, но неохота)
     
    #129 n1†R0x, 23 Jul 2007
    Last edited: 24 Jul 2007
    2 people like this.
  10. n1†R0x

    n1†R0x Elder - Старейшина

    Joined:
    20 Jan 2007
    Messages:
    728
    Likes Received:
    376
    Reputations:
    235
    а вот мой вариант (давно писал, один из первых скриптов :))

    PHP:
    <?
        echo 
    '<title>icq_gen.php =\ </title>';
        if (!isset(
    $start) || !isset($end))
        {
        
    $end="";
        
    $start="";
        
    $pass="";
            echo 
    '<form method=post>';
            echo 
    'Начало диапазона: <input type=text name=start><br/><br/>';
            echo 
    'Конец диапазона:  <input type=text name=end><br/><br/>';
            echo 
    'Желаемый пароль: <input type=text name=pass><br/><br/>';
            echo 
    "Писать в файл: <input type='checkbox' name='write' value='1'><br/><br/>";
            echo 
    "Выводить в браузер: <input type='checkbox' name='browse' value='1'><br/><br/>";
            echo 
    '<input type=submit value=Отправить></form>';
        } 
        
    $fname="result.html";
        
    $end=$end++;
        
    $res=$start;
        
    $pass=trim($pass);
        
    $fp=fopen($fname"w+");
        if (!empty(
    $pass))
        {
            
    $len=strlen($pass);
            if (
    $len 8)    { $pass=substr($pass,0,8); }
                for (
    $a=0$a<($end-$start); $a++)
                {
                    if (
    $write !== 0fwrite($fp,$res.";".$pass."<br/>");
                    if (
    $browse !== 0) echo $res.";".$pass."<br/>";
                    
    $res++;
                }
            
    fclose($fp);
        }
        else
        {
            for (
    $a=0$a<($end-$start); $a++)
            {
                if (
    $write !== 0fwrite($fp,$res.";".$pass."<br/>");
                if (
    $browse !== 0) echo $res.";".$pass."<br/>";
                
    $res++;
            }
            
    fclose($fp);
        }
    ?>


     
  11. invlose

    invlose Banned

    Joined:
    6 May 2007
    Messages:
    55
    Likes Received:
    71
    Reputations:
    -40
    Вы *бнулись?=\
    ну давайте тогда просто откроем тему -
    1.как я начинал программировать(как я продолжаю начинать программировать)
    2.Как записывать строки в файл
    3.как пользоватьтся rand()
    и т п и т д

    Если выкладываете криптор ,ну так выложите не въ*бенный криптор
     
  12. C!klodoL

    C!klodoL Elder - Старейшина

    Joined:
    5 Jun 2007
    Messages:
    302
    Likes Received:
    208
    Reputations:
    4
    спамер для vkontakte.ru, спамит комментариями к зометкам, пока багу с blog_id не прикрыли с одного акка удавалось отправить около 2000 сообщений в час, теперь приходится парсить страницу и по этому скорость ниже =(
    Code:
    #usr/bin/perl
    ############################
    # vkontakte.ru notes spamer
    # C!klodoL
    ############################
    use IO::Socket;
    
    $email = '[email protected]';
    $pass = 'fdsfsdfs';
    $post_id = 200000; # id с которого начать
    $text = 'Превед!';
    $host = 'localhost'; #хост прокси
    $port = '8118';	  #порт
    
    $email =~s/@/%40/;
    $emps = "email=$email&pass=$pass";
    $text =~s/([^A-Za-z0-9])/sprintf("%%%02X", ord($1))/seg;
    
    $login ="POST http://vkontakte.ru/login.php HTTP/1.1\r\n".
    		"Host: vkontakte.ru\r\n".
    		"Accept: */*\r\n".
    		"Content-Type: application/x-www-form-urlencoded\r\n".
    		"Content-Length: ".length($emps)."\r\n".
    		"Referer: Referer: http://vkontakte.ru/\r\n".
    		"User-Agent: Internet Explorer 6.0\r\n".
    		"Connection: close\r\n\r\n$emps";
    		
    $sock = IO::Socket::INET->new(Proto=>'tcp', PeerAddr=>$host, PeerPort=>$port);
    
    print $sock $login;
    
    while ($answ = <$sock>){
    	if ($answ =~/remixmid=([0-9])/){
    		$answ =~m/(\d+)/;
    		$remixmid = $1;}
    	if ($answ =~/remixpass=([a-z0-9]{32})/){
    		$answ =~/remixpass=([a-z0-9]{32})/;
    		$remixpass = $1;}
    }
    close $sock;
    $cookie = "remixchk=2; remixmid=$remixmid; remixemail=$email; remixpass=$remixpass;";
    
    sleep(1.1);
    
    if ($remixpass){
    
    while (1){
    	
    system("cls");
    
    $get = "GET http://vkontakte.ru/notes.php?act=s&nid=$post_id HTTP/1.0\r\n".
    	"Host: vkontakte.ru\r\n".
    	"Accept: */*\r\n".
    	"Content-Type: application/x-www-form-urlencoded\r\n".
    	"Referer: http://vkontakte.ru/\r\n".
    	"User-Agent: Internet Explorer 6.0\r\n".
    	"Cookie: $cookie\r\n".
    	"Connection: close\r\n\r\n";
    	
    $sock = IO::Socket::INET->new(Proto=>'tcp', PeerAddr=>$host, PeerPort=>$port);
    
    print $sock $get;
    	
    while ($html = <$sock>){
    	if ($html =~ /name="blog_id"/gi){
    		$html=~m/(\d+)/gi;
    		$blog_id = $1;
    	}
    }
    close $sock;
    
    sleep(1);
    
    $uri = "blog_id=$blog_id&post_id=$post_id&act=addComment&comment=$text";
    
    $cament = "POST http://vkontakte.ru/notes.php HTTP/1.1\r\n".
    	"Host: vkontakte.ru\r\n".
    	"Accept: */*\r\n".
    	"Content-Type: application/x-www-form-urlencoded\r\n".
    	"Content-Length: ".length($uri)."\r\n".
    	"Referer: Referer: http://vkontakte.ru/\r\n".
    	"User-Agent: Internet Explorer 6.0\r\n".
    	"Cookie: $cookie\r\n".
    	"Connection: close\r\n\r\n$uri";
    
    $sock = IO::Socket::INET->new(Proto=>'tcp', PeerAddr=>$host, PeerPort=>$port);
    	
    print $sock $cament;
    	
    while ($p = <$sock>){
    	print $p;
    }
    close $sock;
    
    print "[+] Comment BLOG_ID: $blog_id, NOTES_ID: $post_id\n";
    sleep(1);
    $post_id++;
    }
    } else {print "Bad login or password"; exit;}
    
     
  13. Hormold

    Hormold Banned

    Joined:
    26 Jun 2007
    Messages:
    43
    Likes Received:
    9
    Reputations:
    -14
    Двойная защита информации!
    http://ltest1.ru/hesh.php?pass=
    PHP:
    <?
    function 
    md51($pass
    {
        echo
    "<P> Md5.1  : ";
        
    $hesh1=base64_encode($pass);
        
    $hesh2=sha1($hesh1);
        
    $hesh3=md5(md5($pass).$hesh1.$hesh1);
        
    $base64=base64_encode(md5($pass).$hesh1.$hesh1.$hesh3);
        
    $md5_end=md5($hesh1.$hesh2.$hesh3.$base64."md51");
        echo 
    $md5_end;
    }
    md51($_GET['pass']); 

    function 
    md5s($pass) {
        
    $x="400000";
    echo
    "<P> Md5 X <B>".$x."</B> : ";
        for(
    $i 1$i <= $x$i++)
            {
            
    $mdmd5($pass);
            }
            echo 
    $md;
    }
    md5s($_GET['pass']); 
    ?>
     
    #133 Hormold, 26 Jul 2007
    Last edited: 26 Jul 2007
    2 people like this.
  14. gibson

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

    Joined:
    24 Feb 2006
    Messages:
    391
    Likes Received:
    247
    Reputations:
    88
    Недавно чел спрашивал как востановить базу, не одно из перечисленных средсв не подошло. С помощью этого скрипта можно читать sql-файл построчно, точнее по командно, предворительно залив его через фтп:
    PHP:
    <?php 
    // подключаемся к бд
    mysql_connect("localhost""login""password"); 
    mysql_select_db ("database"); 
    // 
    if (!file_exists($fname)) die ("Файл $fname не существует!"); 
    $fp fopen ($fname"r"); 
    $buffer fread($fpfilesize($fname)); 
    fclose ($fp); 

    $prev 0

    while (
    $next strpos($buffer,";",$prev+1)) 

    $i++; 
    $a substr($buffer,$prev+1,$next-$prev); 
    mysql_query($a); 
    $prev $next


    echo 
    "Выполнено $i команд"

    ?> 
    $fname - имя файла sql-дампа
    $prev - позиция предыдущей ";"
    $next - позиция следующей ";" начиная с позиции $prev

    Вызываем скрипт примерно так: sqlbackup.php?fname=backup.sql, будет выполнен файл backup.sql. В конце выводится число выполненных команд.

    Минусы
    Занимает большое количество ресурсов сервера, весь файл читается в память. Можно усовершенствовать, читая из файлового только отдельные sql-команды.
     
  15. GrAmOzEkA

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

    Joined:
    25 Jun 2006
    Messages:
    234
    Likes Received:
    76
    Reputations:
    29
    Шифрование пароля используя md5($key.strrev()); :D :D :D

    Code:
    <?
    
    // coded by GrAmOzEkA
    
    $password = '1234567890'; //пароль
    echo $password; //выводим пароль
    echo"<br></br>";
    $key = 'Gramozeka'; //то что прибавляем к паролю
    $password = $key.strrev($password); //собсно сам процесс =)
    echo $password; //выводим то что получилось
    echo"<br></br>";
    $password = md5($password); //шифруем md5
    echo $password; //выводим
    
    ?>
    Или так

    Code:
    <?
    
    $password = '1234567890'; //пароль
    echo $password; //выводим пароль
    echo"<br></br>";
    $key = 'Gramozeka'; //то что прибавляем к паролю
    $password = md5($key.strrev($password)); //собсно сам процесс =)
    echo $password; //выводим то что получилось
    
    ?>
     
    1 person likes this.
  16. FoxMALDER

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

    Joined:
    26 Jul 2007
    Messages:
    43
    Likes Received:
    20
    Reputations:
    -1
    Функция для обработки файла с DDL-запросами и соответственно выполнение их в БД MySQL.

    PHP:
    function parse_sql($file)
    {
        
    $fp fopen($file"r");

        while (!
    feof($fp))
        {
            
    // Читаем строку из файла и удаляем из неё символы \t\r\n
            
    $str chop(fgets($fp65536));

            if (
    strlen($str))
            {
                
    // Собираем запрос разделённый на несколько строк
                
    while (substr($strstrlen($str) - 11) != ";" && substr($str01) != "#" && substr($str02) != "--")
                {
                    
    $str .= chop(fgets($fp65536));
                }

                
    // Если не комментарии
                
    if (substr($str01) != "#" && substr($str02) != "--")
                {
                    if (!
    mysql_query($str))
                    {
                        return 
    false;
                    }
                }
            }
        }

        
    fclose ($fp);

        return 
    true;
    }
     
  17. C!klodoL

    C!klodoL Elder - Старейшина

    Joined:
    5 Jun 2007
    Messages:
    302
    Likes Received:
    208
    Reputations:
    4
    скрипт граббер тёток с сайта xuk.ru :)

    Code:
    #!/usr/bin/perl
    
    use IO::Socket::INET;
    use warnings;
    use strict;
    
    my $sPage = 1;
    my $ePage = 35;
    
    for ($sPage..$ePage) {
        open (LOG, '>>history.txt');
        my $rate = "http://xuk.ru/tits/".$sPage.".html?sort=rating";
        print "Page $sPage\n";
        print LOG "$rate\n";
        my $page = get($rate);
        my @telki = $page =~ /href="(.+?vid-1.html)">/gi;
        
        while (@telki) {
            my $telka = shift @telki;
            print "$telka\n";
            print LOG "\t$telka\n";
            my $links = get($telka);
            my @fotki = $links =~ /" border="1" bgcolor="#000000" src="(.+?)"/gi;
            $telka =~ /\/(.+)\/vid-1.html/i;
            my $mmm = $1;
            $mmm =~ s/(.*)\///;
            system("mkdir $mmm");
            
            while (@fotki) {
                my $fotka = shift @fotki;
                print "$fotka\n";
                print LOG "\t$fotka\n";
                (my $file = $fotka) =~ s(^.*/)();
                $fotka = get($fotka);
                open (FILE, ">$mmm/$file");
                binmode FILE;
                $fotka =~ m/\n\r\n(.+)/s;
                print FILE $1;
                close FILE;
            }
        }
        $sPage++;
    }
    
    sub get
    {
        my ($url, $answ) = @_;
        $url =~ m/\/\/(.+?)\//i;
        my $sock = IO::Socket::INET->new(PeerAddr=>$1,
                                         PeerPort=>80,
                                         Proto=>'tcp') || die 'Cant connect';
        print $sock ("GET $url HTTP/1.0\r\n".
                     "Host: $1\r\n".
                     "Accept: */*\r\n".
                     "User-Agent: Perl\r\n".
                     "Connection: close\r\n\r\n");
        while (<$sock>)
        { $answ .= $_; }
        close $sock;
        return $answ;
    }
    
    
     
    #137 C!klodoL, 31 Jul 2007
    Last edited: 1 Sep 2007
    2 people like this.
  18. FoxMALDER

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

    Joined:
    26 Jul 2007
    Messages:
    43
    Likes Received:
    20
    Reputations:
    -1
    Протупил ;)

    PHP:
    function md5s($pass) {
      
    $x="400000";
      echo
    "<P> Md5 X <B>".$x."</B> : ";
      for(
    $i 1$i <= $x$i++)
      {
            
    $passmd5($pass);
      }
      echo 
    $pass;
    }
     
  19. Spyder

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

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    мб уже выкладывали что-то подобное, но я не нашёл
    Code:
    #!/usr/bin/perl
    open (SRC, "$ARGV[0]") or die "Can't open $ARGV[0]:$!";
    open (RES, ">$ARGV[1]") or die "Can't create $ARGV[1]:$!";
    @src = <SRC>;
    $num = @src;
    for ($id = 1;$id != $num;$id++) {
    $str = "$src[$id]";
    if ($str=~ /\w+@\w+.\w+/) {
    $mail = $&;
    }
    if ($str =~ /\w{32}/) {
    $hash = $&;
    $res = join ':',$mail,$hash;
    print RES "$res\n";
    }
    }
    
    Скрипт для парсинга sql дампов
    Выводит в файл список вида
    mail:hash
    После этого удобно импортировать в passwordspro

    Пример запуска
    perl script.pl c:/dump.sql c:/result.txt

    PS Код канеш наркоманский :D Я только учусь
     
    5 people like this.
  20. NOmeR1

    NOmeR1 Everybody lies

    Joined:
    2 Jun 2006
    Messages:
    1,068
    Likes Received:
    783
    Reputations:
    213
    Уже не помню, где я выкладовал как избавиться от php-инклуда, решил сделать поудобней + добавил проверку валидности файла и избавление от рекурсии :)
    PHP:
    <?  
    #(c) NOmeR1
    error_reporting(0);  

    ...  

    function 
    inc($do,$inc,$posle)  
    {

        
    $bug $_SERVER['SCRIPT_NAME'];
        
    $bug preg_replace('/^(.*)\/(.*)\.(.*)$/i','\\2',$bug);
        
    $inc str_replace('http','',$inc); 
        
    $inc str_replace('ftp','',$inc); 
        
    $inc str_replace(':','',$inc); 
        
    $inc str_replace('/','',$inc); 
        
    $inc str_replace('\\','',$inc); 
        
    $inc str_replace('.','',$inc); 
        
    $inc str_replace($bug,'',$inc);
        
    $inc htmlspecialchars($inc); 

        if(
    file($do.$inc.$posle)) 
        {
            include(
    $do.$inc.$posle); 
        } 

        else echo 
    'Файла '.htmlspecialchars($do).$inc.htmlspecialchars($posle).' не существует'

    }

    ...

    if(
    $_GET['page']) inc('',$_GET['page'],'.php'); 

    ...  

    ?>
     
    #140 NOmeR1, 5 Aug 2007
    Last edited: 18 Aug 2007
    2 people like this.