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

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

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

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    preg_replace если по маске

    str_replace - если массив замен, например:

    PHP:

    $mashar 
    = array("***""мудак""пизд""пидар","пидор","ебан","ебал""ебат""гандон""муди""еби""ебу", *****, "мудач""хуя""хую""ебли""ебон""мудл""пидр""хуле""хули""ебет""ебёт""ебла""ебыв""ёбыв""ёбну""ебну""ёбин""ебин""ёбан""зае#ало четать диезы""Хуй""Мудак""Пизд""Пидар""Пидор","Ебан","Ебал""Ебат""Гандон""Муди""Еби""Ебу""Бля""Мудач""Хуя""Хую""Ебли""Ебон""Мудл""Пидр""Хуле""Хули""Ебет""Ебёт""Ебла""Ебыв""Ёбыв""Ёбну""Ебну""Ёбин""Ебин""Ёбан""Зае#ало четать диезы""хуе" );

    $zashar = array("х#й""м#дак""п#зд""п#дар","п#дор","е#ан","е#ал""е#ат""г#ндон""м#ди""е#и""е#у""б#я""м#дач""х#я""х#ю""е#ли""е#он""м#дл""п#др""х#ле""х#ли""е#ет""е#ёт""е#ла""е#ыв""ё#ыв""ё#ну""е#ну""ё#ин""е#ин","ё#ан""я - дура""Х#й""М#дак""П#зд""П#дар","П#дор","Е#ан","Е#ал""Е#ат""Г#ндон""М#ди""Е#и""Е#у""Б#я""М#дач""Х#я""Х#ю""Е#ли""Е#он""М#дл""П#др""Х#ле""Х#ли""Е#ет""Е#ёт""Е#ла""Е#ыв""Ё#ыв""Ё#ну""Е#ну""Ё#ин""Е#ин","Ё#ан""я - дура""х#е");

    $content str_replace($mashar$zashar$content);

     
  2. Jes

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

    Joined:
    16 Apr 2007
    Messages:
    370
    Likes Received:
    391
    Reputations:
    34
    несилен в php , регуляркой вытаскиваю текст из страницы печатать в файл...

    Code:
    if(preg_match_all('|<div class="itm vac_cat_res">(.*)<div class="pusher"></div>|s', $data,$regs))  
    
    fputs ( $File, $regs[1][0]);
    
    а) по непонятной (мне) причине вместо массива все сливается в один элемент ( хотелось бы каждое совпадение в отдельный)

    б)
    пробовал join , складывал строки , выдает тоже самое
     
  3. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    Jes, регулярки в соседней теме)
    А по сабжу, дай код, который отпарсить надо, напишу регулярку)
     
  4. Chaak

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

    Joined:
    1 Jun 2008
    Messages:
    1,059
    Likes Received:
    1,067
    Reputations:
    80
    PHP:
    if(preg_match_all('|<div class="itm vac_cat_res">(.*)<div class="pusher"></div>|s'$data,$regs))  

    $File fopen('file.txt''at');

         
    fputs $Fileimplode("\r\n"$regs[1]));
    fclose($File);
     
  5. Jes

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

    Joined:
    16 Apr 2007
    Messages:
    370
    Likes Received:
    391
    Reputations:
    34
    я дурак xD
    все заработало ))))

    у меня $File внутри др функции открывается и я его как global записать забыл )))
     
    #9065 Jes, 16 Mar 2009
    Last edited: 16 Mar 2009
  6. PandoraBox

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

    Joined:
    6 May 2007
    Messages:
    262
    Likes Received:
    176
    Reputations:
    7
    кто знает как оптиимизировать
    PHP:
    <?php

    /*
        Test logo :)
        Copyright (c) 2009, Denis aka Pandora.
    */

        
    error_reporting(0);

        function 
    micro_time() {
            
    $temp explode(" "microtime());
            return 
    bcadd($temp[0], $temp[1], 6);
        }

        
    $time_start micro_time();

        
    $now time();
        
    $min_timeout time() - (60 15);

        
    $images = array('image1.jpg''image2.jpg''image3.jpg''image4.jpg');
        
    $temp_file "C:\logo_time";

        
    $file_time = @fileatime($temp_file);
        
    $image_loc = @file($temp_file);

        if (!
    file_exists($temp_file) || !isset($file_time))
        {
            
    $f fopen($temp_file"w+");
            
    fwrite($f, (isset($image_loc[0]) ? $image_loc[0] : $images[0]));
            
    fclose($f);
            
    touch($temp_file);
        }
        elseif ((
    $file_time >= $min_timeout) && isset($file_time))
        {
            
    $image_set $images[0];
            
    $count_images count($images)-1;
            
    $i=0;
            foreach (
    $images as $image)
            {
                if (
    $image == $image_loc[0] && ($i $count_images))
                {
                    
    $image_set $images[$i+1];
                    break;
                }
                
    $i++;
            }
            unset(
    $images$count_images);
            
    $f fopen($temp_file"w+");
            
    fwrite($f, (isset($image_set) ? $image_set $images[0]));
            
    fclose($f);
            
    touch($temp_file$min_timeout$min_timeout);
        }
        unset(
    $temp_file$image_loc$file_time$images$now$min_timeout);
        
    $time_stop micro_time();
        
    $time_overall bcsub($time_stop$time_start6);
        echo 
    "<p>Execution time - $time_overall Seconds</p>";

    ?>
     
  7. max_rebel

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

    Joined:
    18 Oct 2007
    Messages:
    460
    Likes Received:
    31
    Reputations:
    0
    Пытаюсь вывести дату так:

    но чтобы увидеть что время поменялось надо обновить страницу =(( Как сделать чтоб видно было что цыфферки бегут на часах?
     
  8. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    Яваскриптом сделай как тут
    http://www.elated.com/res/File/articles/development/javascript/creating-a-javascript-clock/clock.html
     
    _________________________
  9. max_rebel

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

    Joined:
    18 Oct 2007
    Messages:
    460
    Likes Received:
    31
    Reputations:
    0
    А на php это можно сделать? или полюбому прдётся подключать JS? я в нём нихера не понимаю =(
     
  10. Zitt

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

    Joined:
    7 May 2006
    Messages:
    736
    Likes Received:
    268
    Reputations:
    59
    есть например file.jpeg
    как получить только file ?? имя файла до первой точки...
     
  11. pento

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

    Joined:
    3 Jul 2006
    Messages:
    126
    Likes Received:
    24
    Reputations:
    -1
    http://ru.php.net/basename
     
  12. diznt

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

    Joined:
    31 Jan 2008
    Messages:
    432
    Likes Received:
    164
    Reputations:
    -19
    Интересует конструкция php функции которая выводит все что у меня в таблице (была идея цикл for + вывод из бд но опять же не известно скоко данных в таблице)
     
  13. Byrger

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

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    Как после каждого 21 сивола в переменной $a вставить <br /> ?
     
  14. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    PHP:
    for ($i=0;$i<strlen($a);$i++) {
      
    $s++;
      
    $res.=$a{$i};
      if (
    $s==21) {$res.="<br />";$s=0;}
    }
    echo 
    $res;
    ололололо кодеры блять
    scrat
     
    #9074 Pashkela, 17 Mar 2009
    Last edited by a moderator: 17 Mar 2009
  15. scrat

    scrat кодер

    Joined:
    8 Apr 2007
    Messages:
    625
    Likes Received:
    541
    Reputations:
    3
    str_split
     
    1 person likes this.
  16. Jazz

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

    Joined:
    27 Sep 2008
    Messages:
    80
    Likes Received:
    2
    Reputations:
    -1
    создал форму...самбит и текст...и базу...
    задача такая:в окно вводиться число(4 значения)и если его нет в таблици то оно заносится в неё(таблицу)(и редирект на форму)если оно есть, то выдать сообщение что есть такое...
    не знаю как лучше объяснить...вот начал,но не получаеться
    вот что есть

    тут проблема-MATCH (rr) AGAINST('$text')
    <?
    $db = mysql_connect("localhost","bloguser","12345");
    mysql_select_db ("win" ,$db);


    if (isset($_POST['text'])) {$text = $_POST['text']; }
    if (isset($_POST['submit'])) {$submit = $_POST['submit']; }



    $result = mysql_query(" SELECT rr FROM win WHERE MATCH (rr) AGAINST('$text')",$db);


    if (!$result)
    {
    echo "<p>Запрос на выборку данных из базы не прошел. <br> <strong>Код ошибки:</strong></p>";
    exit(mysql_error());
    }




    if (mysql_num_rows($result) > 0){

    $myrow = mysql_fetch_array($result);

    echo "111111111111";
    }
    else
    {
    echo "<p>Информация по Вашему запросу на блоге не найдена.</p>";

    }


    echo $myrow['rr'];
    ?>

    помогите плиз...
     
    #9076 Jazz, 17 Mar 2009
    Last edited: 17 Mar 2009
  17. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    http://dev.mysql.com/doc/refman/5.0/en/fulltext-query-expansion.html
     
  18. Jazz

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

    Joined:
    27 Sep 2008
    Messages:
    80
    Likes Received:
    2
    Reputations:
    -1
    Pashkela спс...хоть ктото ответил...)в англиском не шарю...есть уже пример этой функции,но у меня не работает...уже чё токо не делал(((даже копипастом все имена переносил...а как вы решили бы такую задачу?
     
  19. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Зачем тебе такие сложности? Объясни, что ты хочешь сделать толком, если просто забить фразу и выцепить по ней какие-то данные из твоей БД, то задачу просто можно конкретизировать
     
  20. -=Static=-

    -=Static=- Banned

    Joined:
    12 Nov 2006
    Messages:
    201
    Likes Received:
    40
    Reputations:
    0
    Видимо как-то так

    PHP:
    <?php
    $db 
    mysql_connect("localhost","bloguser","12345"); 
    mysql_select_db ("win" ,$db); 

    $text = isset($_POST['text']) ? intval($_POST['text']) : 0// так как известно что это число
    $result mysql_query('SELECT rr FROM win WHERE text='.$text) or (die("Ошибка: ".mysql_error())); 

    if(
    $row mysql_fetch_assoc($result)) {
        echo 
    $row["rr"];
    } else {
        echo 
    "<p>Информация по Вашему запросу на блоге не найдена.</p>"
    }
     
Thread Status:
Not open for further replies.