[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. ZeV$

    ZeV$ Elder - Старейшина

    Joined:
    7 Feb 2006
    Messages:
    40
    Likes Received:
    11
    Reputations:
    3
    http://php.net/manual/ru/function.mail.php
    ...
    $headers = 'Content-type: text/html; charset=utf-8' . "\r\n";
    $headers .= 'To: Mary <mary@example.com>, Kelly <kelly@example.com>' . "\r\n";
    $headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n";
    ...
    mail($to, $subject, $message, $headers);
     
  2. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    Намекните как в simplehtmldom найти все теги <p>, которые не являются потомками <div>?
     
  3. devzorg

    devzorg New Member

    Joined:
    22 Sep 2011
    Messages:
    0
    Likes Received:
    1
    Reputations:
    0
    Code:
    $a = '<root><div><p></p></div><p></p><br/><span><p></p></span></root>';
    $xml = simplexml_load_string($a); 
    $result = $xml->xpath("//*[not(self::div)]/p");
    var_dump($result);
    
     
    1 person likes this.
  4. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    Input:
    Errors:
    В коде ошибки есть нужный мне результат. Как починить?
     
    #19244 AnGeI, 24 Sep 2011
    Last edited: 24 Sep 2011
  5. Koren

    Koren Member

    Joined:
    11 Jul 2009
    Messages:
    66
    Likes Received:
    20
    Reputations:
    1
    такое присвоение можно делать ?

    $t = $_POST
    $_POST = 'go';
    if($t){

    }

    go - это из пост формы, html
     
  6. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    PHP:
     $_POST = 'go'; 
    Можно, но не стоит, кощунство какое-то.
     
    #19246 AnGeI, 24 Sep 2011
    Last edited: 24 Sep 2011
  7. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    AnGeI не надо подсовывать в качестве входных данных невалидный XML. Обрамите код в произвольный тэг:
    PHP:
    $a = '<root><div><p>123</p></div>456<p></p><br/><span><p>789</p></span></root>';
    $xml = simplexml_load_string($a); 
    $result = $xml->xpath("//*[not(self::div)]/p");
    var_dump($result);

    $a = '<blablabla><div><p>123</p></div>456<p></p><br/><span><p>789</p></span></blablabla>';
    $xml = simplexml_load_string($a); 
    $result = $xml->xpath("//*[not(self::div)]/p");
    var_dump($result);
    И не надо выкидывать из xpath символы

    Koren если очень хочется и не вызывает ошибок синтаксиса - можно, но зачем?
     
    _________________________
  8. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    Gifts, теперь все работает.
    Но мне нужно именно для HTML, в нем не все так гладко как в XML (бывают незакрытые теги), тогда XPath выдает ошибки.
    Через SimpleHTMLDom не получается спарсить.
    Полагаю, нужно искать тег <p> и потом проверять его потомков, но как это сделать в документации к SimpleHTMLDom не увидел :(
     
  9. ZeV$

    ZeV$ Elder - Старейшина

    Joined:
    7 Feb 2006
    Messages:
    40
    Likes Received:
    11
    Reputations:
    3
    искать все <p> и проверять родителя, а не потомка верно?
    попробуй воспользоваться вот этой информацией (docs, раздел "How to traverse the DOM tree?", вкладка "traverse the DOM tree"):

    Method Description
    mixed $e->children ( [int $index] ) Returns the Nth child object if index is set, otherwise return an array of children.
    element $e->parent () Returns the parent of element.
    element $e->first_child () Returns the first child of element, or null if not found.
     
  10. emmy

    emmy Member

    Joined:
    12 Oct 2009
    Messages:
    76
    Likes Received:
    17
    Reputations:
    8
    у DOMDocument есть метод loadHTML и можно будет использовать нормальный быстрый xpath, а не обрезанный

    кстати self:: не надо писать, т.к. self:: is a default axis
     
  11. GAiN

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

    Joined:
    2 Apr 2011
    Messages:
    2,531
    Likes Received:
    166
    Reputations:
    99
    парсер музыки вконтакте

    Парсер ищет, но ссылка на скачку не функционирует как надо - у меня качает пустые файлы mp3 с размером в 0 Мб.
    помогите пожалуйста поравить здесь, не знаю в чем дело может быть: ???
    download.php
    PHP:
    <?php
    include'func.php';
    $a1 = $_GET['a1'];
    $a2 = $_GET['a2'];
    $a3 = $_GET['a3'];
    $a4 = str_replace('.','_',$_SERVER['HTTP_HOST']).'_'.str_replace('.','_',str_replace(' ','_',$_GET['a4'])).".mp3";

    $file = "http://cs" . $a1 . ".vkontakte.ru/u" . $a2 . "/audio/" . $a3 . ".mp3";

    $data = "";
    if(
    file_exists('data/'.$a4)){
    header("Location: data/$a4");
    exit();
    }
    if(
    $file){
    $copy = copy($file,'data/'.$a4);
    if(
    $copy){
    header("Location: data/$a4");
    exit();
    }else{
    echo
    'Error!';
    exit();
    }
    }
    ?>
    func.php
    PHP:
    <?php
    function pages($str, $page, $q){
        global 
    $self;
        if(
    preg_match("/<ul class='pageList'>(.+)<li/is", $str)){
           
    $total = 50; //Сколько выводить страниц
           
    $page = empty($page) || $page <= 1 || $page > $total ? 1 : $page;
           
    $back1 = '<span class="pages"><a href="'.$self.'?q='.$q.'&amp;page='.($page - 1).'">'.($page - 1).'</a></span>';
           
    $back2 = '<span class="pages"><a href="'.$self.'?q='.$q.'&amp;page='.($page - 2).'">'.($page - 2).'</a></span>';
           
    $back3 = '<span class="pages"><a href="'.$self.'?q='.$q.'&amp;page='.($page - 3).'">'.($page - 3).'</a></span>';
           
    $forw1 = '<span class="pages"><a href="'.$self.'?q='.$q.'&amp;page='.($page + 1).'">'.($page + 1).'</a></span>';
           
    $forw2 = '<span class="pages"><a href="'.$self.'?q='.$q.'&amp;page='.($page + 2).'">'.($page + 2).'</a></span>';
           
    $forw3 = '<span class="pages"><a href="'.$self.'?q='.$q.'&amp;page='.($page + 3).'">'.($page + 3).'</a></span>';
           if(empty(
    $page) || $page <= 1){
              
    $minus = '';
              
    $first = '';
           }else{
                
    $minus = '<span class="pages"><a href="'.$self.'?q='.$q.'&amp;page='.($page - 1).'" title="Предыдущая">&laquo;</a></span>';
              
    $first = '<span class="pages"><a href="'.$self.'?q='.$q.'&amp;page=1" title="Первая страница">&laquo;&laquo;</a></span>';
           }
           if(
    $page == $total){
              
    $plus = '';
              
    $last = '';
           }else{
              
    $plus = '<span class="pages"><a href="'.$self.'?q='.$q.'&amp;page='.($page + 1).'" title="Следующая">&raquo;</a></span>';
              
    $last = '<span class="pages"><a href="'.$self.'?q='.$q.'&amp;page='.$total.'" title="Последняя страница">&raquo;&raquo;</a></span>';
           }
           if((
    $page + 1) > $total) $forw1 = '';
           if((
    $page + 2) > $total) $forw2 = '';
           if((
    $page + 3) > $total) $forw3 = '';
           if((
    $page - 1) <= 0) $back1 = '';
           if((
    $page - 2) <= 0) $back2 = '';
           if((
    $page - 3) <= 0) $back3 = '';
           
    $all_pages = 'Страницы: '.$first.$minus.$back3.$back2.$back1.'<span class="pages"><b>'.$page.'</b></span>'.$forw1.$forw2.$forw3.$plus.$last;
           return 
    $all_pages;
        }
        else return 
    '';
    }
    function 
    rnd_str($str_size=5){ 
            
    $str='';  
            
    $chars= 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',  
                  
                
    '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'  
            
    );  
              
            for( 
    $i=0; $i<$str_size; $i++ ){  
                
    $num= true;  
                if( 
    rand(0,1) == 1 ) $num= false;  
                if(
    $num) $str.= rand(0,9);  
                else 
    $str.= $chars[rand(0,sizeof($chars)-1)];  
            }  
            return 
    $str;  
        }

    function 
    old($papka,$times){   
    $old_time = time()-60*$times;  
    $dir = opendir ($papka);   
    while (
    $file = readdir ($dir)) {   
    if (( 
    $file != ".") && ($file != ".."))  
    $files[]="$papka/$file";   
    $time[]=filemtime("$papka/$file" );  
    }   
    closedir ($dir);   
    $count_files = count($files);   
    for(
    $i = 1; $i< $count_files; $i++){     
    if(
    $time[$i] <= $old_time){  
    @
    unlink($files[$i]);  
    }  
    }  
    }
    function 
    utf_to_win($str){ 
    $str=strtr($str,array("Р°"=>"а","Р±"=>"б","РІ"=>"в","Рі"=>"г","Рґ"=>"д","Рµ"=>"е","С‘"=>"ё","Р¶"=>"ж","Р·"=>"з","Рё"=>"и","Р№"=>"й","Рє"=>"к","Р»"=>"л","Рј"=>"м","РЅ"=>"н","Рѕ"=>"о","Рї"=>"п","СЂ"=>"р","СЃ"=>"с","С‚"=>"т","Сѓ"=>"у","С„"=>"ф","С…"=>"х","С†"=>"ц","С‡"=>"ч","С€"=>"ш","С‰"=>"щ","СЉ"=>"ъ","С‹"=>"ы","СЊ"=>"ь","СЌ"=>"э","СЋ"=>"ю","СЏ"=>"я", 
    "Рђ"=>"А","Р‘"=>"Б","Р’"=>"В","Р“"=>"Г","Р”"=>"Д","Р•"=>"Е","РЃ"=>"Ё","Р–"=>"Ж","Р—"=>"З","Р?"=>"И","Р™"=>"Й","Рљ"=>"К","Р›"=>"Л","Рњ"=>"М","Рќ"=>"Н","Рћ"=>"О","Рџ"=>"П","Р*"=>"Р","РЎ"=>"С","Рў"=>"Т","РЈ"=>"У","Р¤"=>"Ф","РҐ"=>"Х","Р¦"=>"Ц","Р§"=>"Ч","РЁ"=>"Ш","Р©"=>"Щ","РЄ"=>"Ъ","Р«"=>"Ы","Р¬"=>"Ь","Р*"=>"Э","Р®"=>"Ю","РЇ"=>"Я")); 
     return 
    $str; 
    } 

    function 
    win_to_utf($str){ 
    $str=strtr($str,array("а"=>"Р°","б"=>"Р±","в"=>"РІ","г"=>"Рі","д"=>"Рґ","е"=>"Рµ","ё"=>"С‘","ж"=>"Р¶","з"=>"Р·","и"=>"Рё","й"=>"Р№","к"=>"Рє","л"=>"Р»","м"=>"Рј","н"=>"РЅ","о"=>"Рѕ","п"=>"Рї","р"=>"СЂ","с"=>"СЃ","т"=>"С‚","у"=>"Сѓ","ф"=>"С„","х"=>"С…","ц"=>"С†","ч"=>"С‡","ш"=>"С€","щ"=>"С‰","ъ"=>"СЉ","ы"=>"С‹","ь"=>"СЊ","э"=>"СЌ","ю"=>"СЋ","я"=>"СЏ", 
    "А"=>"Рђ","Б"=>"Р‘","В"=>"Р’","Г"=>"Р“","Д"=>"Р”","Е"=>"Р•","Ё"=>"РЃ","Ж"=>"Р–","З"=>"Р—","И"=>"Р?","Й"=>"Р™","К"=>"Рљ","Л"=>"Р›","М"=>"Рњ","Н"=>"Рќ","О"=>"Рћ","П"=>"Рџ","Р"=>"Р*","С"=>"РЎ","Т"=>"Рў","У"=>"РЈ","Ф"=>"Р¤","Х"=>"РҐ","Ц"=>"Р¦","Ч"=>"Р§","Ш"=>"РЁ","Щ"=>"Р©","Ъ"=>"РЄ","Ы"=>"Р«","Ь"=>"Р¬","Э"=>"Р*","Ю"=>"Р®","Я"=>"РЇ")); 
     return 
    $str; 
    } 
    function 
    encodestring($st)

      {

        
    // Сначала заменяем "односимвольные" фонемы.

        
    $st=strtr($st,"абвгдеёзийклмнопрстуфхъыэ_",

        
    "abvgdeeziyklmnoprstufh'iei");

        
    $st=strtr($st,"АБВГДЕЁЗИЙКЛМНОПРСТУФХЪЫЭ_",

        
    "ABVGDEEZIYKLMNOPRSTUFH'IEI");

        
    // Затем - "многосимвольные".

        
    $st=strtr($st, 

                        array(

                            
    "ж"=>"zh", "ц"=>"ts", "ч"=>"ch", "ш"=>"sh", 

                            
    "щ"=>"shch","ь"=>"", "ю"=>"yu", "я"=>"ya",

                            
    "Ж"=>"ZH", "Ц"=>"TS", "Ч"=>"CH", "Ш"=>"SH", 

                            
    "Щ"=>"SHCH","Ь"=>"", "Ю"=>"YU", "Я"=>"YA",

                            
    "ї"=>"i", "Ї"=>"Yi", "є"=>"ie", "Є"=>"Ye"

                            
    )

                 );


        
    $st = str_replace('$','',$st);
        
    $st = str_replace('&','',$st);  
        
    $st = str_replace('#','',$st); 
        
    $st = str_replace('!','',$st);
        
    $st = str_replace('@','',$st);
        
    $st = str_replace('%','',$st);
        
    $st = str_replace('*','',$st);
        
    $st = str_replace('(','',$st);
        
    $st = str_replace(')','',$st);
        
    $st = str_replace(';','',$st);
     
    $st = str_replace('[','',$st);
      
    $st = str_replace(']','_',$st);
     
    $st = str_replace('{','_',$st);
      
    $st = str_replace('}','_',$st);
       
    $st = str_replace('*','_',$st);
        
    $st = str_replace('!','',$st);
         
    $st = str_replace('&','_',$st);
          
    $st = str_replace('^','_',$st);
           
    $st = str_replace('~','_',$st);
            
    $st = str_replace('?','_',$st);
             
    $st = str_replace('+','_',$st);
              
    $st = str_replace('>','_',$st);
               
    $st = str_replace('<','_',$st);
                
    $st = str_replace('"','_',$st);
                
    $st = str_replace(',','_',$st);
                
    $st = str_replace('.','_',$st);
        
    // Возвращаем результат.

        
    return $st;

      }
    ?>
    index.php
    PHP:
    <?php
    //  Здесь необходимо указать настройки учётных записей на vkontakte.ru,
    //  через которые будет производится поиск
    //  Образец:
    //  
    //  $logins[0]["id"] = "325235";
    //  $logins[0]["email"] = "tram-pam-pam@test.ru";
    //  $logins[0]["pass"] = "sdflksfj";
    //
    //  $logins[1]["id"] = "3334235";
    //  $logins[1]["email"] = "tram-pam-pam-param@test.ru";
    //  $logins[1]["pass"] = "ssoiucvp";
    //
    //  и т.д. по образцу, увеличивая индекс


    //Логины

    $logins[0]["id"] = "86417076";
    $logins[0]["email"] = "nickson-nick@rambler.ru";
    $logins[0]["pass"] = "987654";

    //Конец логинов

    $login_rand = rand(0, count($logins) - 1);

    $id = $logins[$login_rand]["id"];
    $email = $logins[$login_rand]["email"];
    $pass = $logins[$login_rand]["pass"];

    include
    'func.php';


    echo
    '<?xml version="1.0" encoding="UTF-8"?>';
    echo
    '<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
    <html>
    <head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>'
    ;
    $page = $_GET['page'];
    if (
    $page == "") {$page = 1;}
    if (
    $page < 1) {$page = 1;}

    if (
    trim($_GET['search']) != "") {
    $_GET['search'] = trim($_GET['search']);
    print(
    $_GET['search'] . " - Поиск музыки по vkontakte.ru");
    }
    else {
    print(
    "Поиск музыки по vkontakte.ru");
    } 
    ?>

    </title>
    <style type="text/css">
    body {
      background: #fff; text-align: left; margin: 0px; padding: 0px;
      font-family: tahoma, verdana, arial, sans-serif, Lucida Sans;
      font-size: 11px;
      }

    a:link {
    color:#537301;
    text-decoration:none
    }
    a:active {
    color:#9DB16B;
    text-decoration:none
    }
    a:hover {
    color:#82B101;
    text-decoration:none;
    background:#E7FFA7;
    border-bottom:solid 1px #FFC184;
    }

    </style>
    </head>

    <body>
    <img src=img/audio-logo.jpg>
    <form method="get" action="index.php" name="audioSearch">
    Введите имя исполнители и(или) название песни<br/>
    <input type="text" name="search" size="15" value="<? print($_GET['search']); ?>" />&nbsp;
      <input type="submit" value="Поиск" />
     </form>

                                        
    <?



    $results 
    = '';

    $header = 'GET http://vk.com/login.php?email=' . rawurlencode($email) . '&pass=' . rawurlencode($pass) . ' HTTP/1.0
    Host: vk.com
    User-Agent: MedvePoisk Bot

    '
    ;

    $fp = fsockopen('vk.com', 80, $errno, $errstr);
       if(!
    $fp) { print('Not Connected to Server'); exit; }
    else
    {
    fwrite($fp, $header);

       while (!
    feof($fp)) {
       
    $results .= fgets ($fp,128);
       }

       
    fclose($fp);
    }

    //print($results);

    $remixsid = substr($results,strpos($results,'remixsid=')+9);
    $remixsid = substr($remixsid,0,strpos($remixsid,';'));


    $st = ($page - 1) * 100;

    $search_string = $_GET['search'];

    $str = "section=audio&q=" . urlencode($search_string) . "&offset=" . $st;
    $len_str = strlen($str);
    $bashka = "POST /gsearch.php HTTP/1.0
    Host: vk.com
    Referrer: http://vk.com/audio.php
    Cookie: remixsid=
    $remixsid;remixmid=$id; remixemail=" . urlencode($email) . "; remixpass=" . md5($pass) . "
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 
    $len_str

    $str";
    $data = "";
    $fp = fsockopen("vk.com", 80, $errno, $errstr);
       if(!
    $fp) { print "$errstr ($errno)<br>\n"; exit; }
    else
    {
    fwrite($fp, $bashka);

       while (!
    feof($fp)) {
       
    $data .= fgets ($fp,128);
       }

       
    fclose($fp);
    }

    //print(win_to_utf($data));
    print $st;
    if (
    $page > 2) {
    print(
    "<<&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page - 2) . "'>" . ($page - 2) . "</a>&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page - 1) . "'>" . ($page - 1) . "</a>&nbsp;&nbsp;");
    print(
    "[" . $page . "]&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 1) . "'>" . ($page + 1) . "</a>&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 2) . "'>" . ($page + 2) . "</a>&nbsp;&nbsp;");
    print(
    ">>");

    }


    else if (
    $page == 2)
    {
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page - 1) . "'>" . ($page - 1) . "</a>&nbsp;&nbsp;");
    print(
    "[" . $page . "]&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 1) . "'>" . ($page + 1) . "</a>&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 2) . "'>" . ($page + 2) . "</a>&nbsp;&nbsp;");
    print(
    ">>");
    }
    else if (
    $page == 1)
    {
    print(
    "[" . $page . "]&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 1) . "'>" . ($page + 1) . "</a>&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 2) . "'>" . ($page + 2) . "</a>&nbsp;&nbsp;");
    print(
    ">>");
    }

    ?>
    <br/>
    <?
    $i 
    = -1;
    while (
    stripos($data,"operate(") !== false){
    $i++;  
    $a[$i][1] = substr($data, stripos($data,"operate(") + 8, 100);


    $data = substr($data, stripos($data,"operate(") + 50);
    $a[$i][2] = substr($data, stripos($data,'<b id="performer'));
    $a[$i][2] = substr($a[$i][2], stripos($a[$i][2],">")+1);
    $a[$i][3] = substr($a[$i][2], stripos($a[$i][2],"<"));
    $a[$i][2] = substr($a[$i][2], 0, stripos($a[$i][2],"<"));

    $a[$i][3] = substr($a[$i][3], stripos($a[$i][3],'<span id="title'));
    $a[$i][3] = substr($a[$i][3], stripos($a[$i][3],">")+1);
    if (
    $a[$i][3][0] == '<') {$a[$i][3] = substr($a[$i][3], stripos($a[$i][3],">")+1);}
    $a[$i][4] = substr($a[$i][3], stripos($a[$i][3],"<"));
    $a[$i][3] = substr($a[$i][3], 0, stripos($a[$i][3],"<"));
    $a[$i][4] = substr($a[$i][4], stripos($a[$i][4],'<div class="duration">')+22);
    $a[$i][4] = substr($a[$i][4], 0, stripos($a[$i][4],"<"));



    }
    $l = $i;
    for(
    $i = 99; $i<=$l; $i++){

    $a[$i][1] = substr($a[$i][1],0,stripos($a[$i][1],")"));
    $a[$i][1] = substr($a[$i][1],stripos($a[$i][1],",")+1);
    $a1 = substr($a[$i][1],0,stripos($a[$i][1],","));
    $a[$i][1] = substr($a[$i][1],stripos($a[$i][1],",")+1);
    $a2 = substr($a[$i][1],0,stripos($a[$i][1],","));
    $a[$i][1] = substr($a[$i][1],stripos($a[$i][1],",")+1);
    $a3 = substr($a[$i][1],0,stripos($a[$i][1],","));
    $a3 = substr($a3, 1 , strlen($a3)-2);
    $name = explode(' ',$a[$i][3]);
    $name = $name[0].' '.$name[1].' '.$name[2];
    echo
    "<a href='" . $a1 . ";" . $a2 . ";" . $a3 . ";" . urlencode(encodestring($a[$i][2])) . " - " . urlencode(encodestring($name)) . ".mp3' title='Скачать: " . win_to_utf($a[$i][2]) . " - " . win_to_utf($a[$i][3]) . " (" . $a[$i][4] . ")'>" . win_to_utf($a[$i][2]) . "-" . win_to_utf($name) . "</a>(" . $a[$i][4] . ")<br/>";


    }

    if (
    $l == -1) {
    print 
    "Нет файлов";
    } 
    ?>
    <br/>
    <?

    if ($page > 2) {
    print(
    "<<&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page - 2) . "'>" . ($page - 2) . "</a>&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page - 1) . "'>" . ($page - 1) . "</a>&nbsp;&nbsp;");

    print(
    "[" . $page . "]&nbsp;&nbsp;");

    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 1) . "'>" . ($page + 1) . "</a>&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 2) . "'>" . ($page + 2) . "</a>&nbsp;&nbsp;");
    print(
    ">>");
    }
    else if (
    $page == 2)
    {

    print(
    "<a href='?search=" . $search_string . "&page=" . ($page - 1) . "'>" . ($page - 1) . "</a>&nbsp;&nbsp;");

    print(
    "[" . $page . "]&nbsp;&nbsp;");

    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 1) . "'>" . ($page + 1) . "</a>&nbsp;&nbsp;");

    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 2) . "'>" . ($page + 2) . "</a>&nbsp;&nbsp;");
    print(
    ">>");
    }
    else if (
    $page == 1)
    {
    print(
    "[" . $page . "]&nbsp;&nbsp;");

    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 1) . "'>" . ($page + 1) . "</a>&nbsp;&nbsp;");
    print(
    "<a href='?search=" . $search_string . "&page=" . ($page + 2) . "'>" . ($page + 2) . "</a>&nbsp;&nbsp;");
    print(
    ">>");
    }
    ?>


    </center>
    </body></html>
     
    #19251 GAiN, 26 Sep 2011
    Last edited: 26 Sep 2011
  12. Skofield

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

    Joined:
    27 Aug 2008
    Messages:
    937
    Likes Received:
    355
    Reputations:
    58
    GAiN, намного лучше читать, когда код подсвечен, как в func.php. Для этого нужно заменить <? на <?php
     
  13. GAiN

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

    Joined:
    2 Apr 2011
    Messages:
    2,531
    Likes Received:
    166
    Reputations:
    99
    Skofield, я поправил ;)
     
  14. mandalina

    mandalina Member

    Joined:
    27 Jan 2009
    Messages:
    12
    Likes Received:
    19
    Reputations:
    4
    Доброго времени суток!Сразу хочу изменится,за то что отнимаю у вас время но возникла проблема.Перед тем как создавать данный пост я погуглил,но ответа не нашол.Собсно сабж.Имеется пхп код

    PHP:
    $res_http = new HttpRequest($ARG[s]."/user/register", HttpRequest::METH_POST);
    поискал тут,сделал все как в инструкции но ничего не получается.

    А выдает ошибку

    Code:
    PHP Parse error:  parse error in [I]n[/I]-line
    Но почему-то не получается.Спасибо за внимание!
     
  15. ZeV$

    ZeV$ Elder - Старейшина

    Joined:
    7 Feb 2006
    Messages:
    40
    Likes Received:
    11
    Reputations:
    3
    пхп выдает ошибку "parse error in N line "?
    уверены, что все необходимые компоненты для работы класса httpRequest установлены?
    тут подробнее
    полный код файла и ошибки приведите, пожалуйста
     
    1 person likes this.
  16. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    Нужно разархивировать tar.gz или любой другой архив средствами php.
    Если у кого-то есть готовые решения (скрипт zlib или любой другой), буду благодарен.
     
  17. Skofield

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

    Joined:
    27 Aug 2008
    Messages:
    937
    Likes Received:
    355
    Reputations:
    58
    unzipper.php
     
  18. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    396
    Likes Received:
    79
    Reputations:
    16
    Вроде бы работает.
    На хостинге есть ограничения, любой скрипт запускается под r-x. Соответственно, создать новый файл не получается, проблема нерешаема?
     
  19. GRRRL Power

    GRRRL Power Elder - Старейшина

    Joined:
    13 Jul 2010
    Messages:
    823
    Likes Received:
    185
    Reputations:
    84
    Дело не в правах у скрипта, дело, скорее всего, в правах веб-сервера на папку, в которой ты хочешь скриптом создавать файл.
     
  20. mandalina

    mandalina Member

    Joined:
    27 Jan 2009
    Messages:
    12
    Likes Received:
    19
    Reputations:
    4
    Да я установил ПЕКЛ,вроде все правильно сделал.
    Полный код

    PHP:
    {
    $res_http = new HttpRequest($ARG[s]."/user/register", HttpRequest::METH_POST);
            
    $res_http->addPostFields($post_fields);
            
    $res_http->addHeaders($headers);
            try {
                    
    $response = $res_http->send()->getBody();

                if (
    eregi("success", $response))
                {
                    
    successfully($ARG[u],$ARG[p]);
                }
                else
                {
                    print 
    "[-] Exploit failed";
                }

            } catch (
    HttpException $exception) {

                print 
    "[-] Not connected";
                exit(
    0);

            }

    }    }
      else
        {
            
    help_argc($argv[0]);
            exit(
    0);
        }
        
    ?>
    Выдает ошибку

    2
    PHP:
     $res_http = new HttpRequest($ARG[s]."/user/register", HttpRequest::METH_POST);
    Пишет

    Code:
    PHP Fatal error:  Class 'HttpRequest' not found 
    Щас погуглю еще,попытаюсь решить самостоятельно :)
     
    #19260 mandalina, 28 Sep 2011
    Last edited: 28 Sep 2011
Thread Status:
Not open for further replies.