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

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

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

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

    Joined:
    15 Jun 2007
    Messages:
    574
    Likes Received:
    86
    Reputations:
    11
    допустим есть такая строка
    dfjhвароа@#!@

    как лучше регуляркой вытащить все символы?

    такой вариант катит [a-zA-z0-9_а-яА-я]+[^$]+

    но может есть что проще?
    \S+ должен же пройти?
     
  2. svesve

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

    Joined:
    15 Jun 2007
    Messages:
    574
    Likes Received:
    86
    Reputations:
    11
    как вариант получить кол-во писем
    $n = imap_num_msg($my_box);

    и проверить письмо $n - оно и есть последнее =)
     
    1 person likes this.
  3. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    хз как лучше
    а вот так, как раотает
    PHP:
    <pre>
    <?php
    preg_match_all
    ("|[^a-zA-Z0-9а-яА-Я]|","dfjhвароа@#!@",$out);
    print_r($out);
    ?>
    Code:
    Array
    (
        [0] => Array
            (
                [0] => @
                [1] => #
                [2] => !
                [3] => @
            )
    
    )
    ===========
    Ммммм, работает
     
    #11643 Ponchik, 10 Sep 2009
    Last edited: 10 Sep 2009
  4. Neoveneficus

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

    Joined:
    10 Apr 2008
    Messages:
    235
    Likes Received:
    126
    Reputations:
    23
    PHP:
    imap_search($mailbox,'NEW FROM "user" TO "user"');
    или
    PHP:
    imap_search($mailbox,'RECENT FROM "user" TO "user"');
    Функция возвращает массив idшников писем. Выбирай последнее и смотри. Здесь есть список всех флагов:
    http://www.php.net/manual/en/function.imap-search.php
     
  5. FireFenix

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

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    Если нужно именно регуляркой..... то
    PHP:
    <?php

    $var 
    'qwert!@#%^&*(<>?123152';

    preg_match_all('/./ims'$var$match);

    print_r($match);

    ?> 
    Если же нужно просто символы, то строка как бы массив символов
    PHP:
    <?php

    $var 
    'qwert!@#%^&*(<>?123152';

    for(
    $i 0$i strlen($var); $i++)
    {
        echo 
    $var[$i] . '<br>';
    }

    ?>
    Или как бэ обращение к символу строки
    PHP:
    <?php

    $var 
    'qwert!@#%^&*(<>?123152';

    for(
    $i 0$i strlen($var); $i++)
    {
        
    //Разница в скобочках :)
        
    echo $var{$i} . '<br>';
    }

    ?>
     
    1 person likes this.
  6. svesve

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

    Joined:
    15 Jun 2007
    Messages:
    574
    Likes Received:
    86
    Reputations:
    11
    а если вытащить надо всю строку целиком??
    н-р: qwert!@#%^&*(<>?123152

    то?
     
  7. FireFenix

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

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    PHP:
    <?php

      $var 
    'qwert!@#%^&*(<>?123152'

      
    preg_match('/.*/ims'$var$match);

      
    print_r($match);

    ?>
     
  8. Ponchik

    Ponchik Хлебо-булочное изделие

    Joined:
    30 Aug 2005
    Messages:
    687
    Likes Received:
    807
    Reputations:
    311
    Neoveneficus, да не там всёравно может быть много писем
    А какой функцией imap отметить уже прочтёное письмо как не прочтёное
     
  9. Neoveneficus

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

    Joined:
    10 Apr 2008
    Messages:
    235
    Likes Received:
    126
    Reputations:
    23
    PHP:
    <?php
    $mbox 
    imap_open("{imap.example.org:143}""username""password")
         or die(
    "can't connect: " imap_last_error());

    $status imap_setflag_full($mbox"2,5""\\Seen");

    echo 
    gettype($status) . "\n";
    echo 
    $status "\n";

    imap_close($mbox);
    ?>
     
    1 person likes this.
  10. Excalibur

    Excalibur New Member

    Joined:
    4 Sep 2009
    Messages:
    9
    Likes Received:
    1
    Reputations:
    0
    почему
    PHP:
    echo intval(042);
    будет 34???
     
  11. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Восьмеричная система счисления
     
    1 person likes this.
  12. Excalibur

    Excalibur New Member

    Joined:
    4 Sep 2009
    Messages:
    9
    Likes Received:
    1
    Reputations:
    0
    т.е. все что начинаются нулём без запятой восьмеричные?
     
  13. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Да. Здесь про целочисленный тип данных подробнее: http://ru2.php.net/manual/en/language.types.integer.php
     
  14. AVIRA

    AVIRA New Member

    Joined:
    12 Aug 2009
    Messages:
    7
    Likes Received:
    0
    Reputations:
    0
    здраствуйте у меня вот такой вопрос явот новенькая в этом и не ясно вот можно ли написать такой скрипт для подмены реферер чтоб показывал куда приходит клик не ip хоста где установлен скрипт а ip юзера который кликнул по ссылке на скрипт по подмене реферер.это возможно? если у кого имеется такой подскажите пожалуйста.....
     
  15. alexey-m

    alexey-m Elder - Старейшина

    Joined:
    15 Jul 2009
    Messages:
    518
    Likes Received:
    100
    Reputations:
    37
    Есть скрипт по расшифровке паролей, но есть проблема:
    Когда он запущен на виртуальном сервере работает все нормально, но когда заливаеш на хост, то начинаются проблемы =( конкретнее идет обрезание декодируемой строки (причём строка может быть из символов с кодом от 00 до FF) ...что в свою очередь ведет к неверному результату...
    В чем может быть дело, кто может помочь?
     
  16. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    alexey-m Господь вам поможет. Без кода - любой диалог невозможен
     
    _________________________
  17. superboy4

    superboy4 Banned

    Joined:
    17 Jul 2007
    Messages:
    151
    Likes Received:
    19
    Reputations:
    -8
    PHP:
    //инициализация сеанса
    $ch curl_init();
    //установка необходимых параметров
    curl_setopt($chCURLOPT_URL'http://vkontakte.ru/login.php');
    curl_setopt($chCURLOPT_POST1);
    curl_setopt($chCURLOPT_POSTFIELDS'[email protected]&pass=112');
    curl_setopt($chCURLOPT_HEADER0);//Включение/выключение вывода http-заголовков
    curl_setopt($chCURLOPT_USERAGENT'Opera/9.80 (Windows NT 6.1; U; ru) Presto/2.2.15 Version/10.00');
    curl_setopt($chCURLOPT_FOLLOWLOCATION1);
    curl_setopt($chCURLOPT_RETURNTRANSFER1);//вернуть результат
    curl_setopt($chCURLOPT_COOKIEFILE'cookiefile');
    curl_setopt($chCURLOPT_COOKIEJAR'cookiefile');
    //загрузка страницы и выдача её браузеру
    $result curl_exec($ch);
    echo 
    $result;
    //завершение сеанса и освобождение ресурсов
    curl_close($ch);
    А как теперь вытащить данные Имя, фамилия, пол, город, университет которые заполнил пользователь?
    Покажите плиз, напримере одного.

    Искал подобный пример по выборке данных в книге Котеров. Костарев php5 => нехера там нету.
     
    #11657 superboy4, 11 Sep 2009
    Last edited: 11 Sep 2009
  18. superboy4

    superboy4 Banned

    Joined:
    17 Jul 2007
    Messages:
    151
    Likes Received:
    19
    Reputations:
    -8
    HTML:
     <td class="label">Пол:</td>
         <td class="data">
          <div class="dataWrap">
           <a href='/gsearch.php?from=people&c[sex]=1'>женский</a>
          </div>
         </td>
    Вот ,например, как вытащить какого пола человек?
     
  19. SQLHACK

    SQLHACK Остались только слоны

    Joined:
    27 Sep 2006
    Messages:
    437
    Likes Received:
    372
    Reputations:
    407
    2superboy4
    preg_match("#\<a[\s]*href='\/gsearch\.php\?from=[^&]*\&c\[sex\]=[0-1]'\>([^<]+)\<\/a\>#i", $content, $match);

    результат в $match[1];
     
    _________________________
    1 person likes this.
  20. alexey-m

    alexey-m Elder - Старейшина

    Joined:
    15 Jul 2009
    Messages:
    518
    Likes Received:
    100
    Reputations:
    37
    Вот он код расшифровки:
    PHP:
    <?php

    $par1 
    $_REQUEST['par1'];

    function 
    decrypt($var2)
    {
        
    $ex 0xA8C3;
        
    $c '';
        
    $count strlen($var2);
        
        for (
    $i 0$i<$count$i++)
        { 
          
    $ch ord($var2[$i]);
          
    $c $c.chr((($ch ^($ex >> 0x04))));
          
    $ex = (int)(($ex $ch) * 0x1B5F) + 0x03E9;    
            }
          return 
    $c;
    }

    $var1 decrypt(base64_decode($par1));
    echo 
    'par1: $var1';

    ?>
     
Thread Status:
Not open for further replies.