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

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

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

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

    Joined:
    2 Jun 2008
    Messages:
    35
    Likes Received:
    1
    Reputations:
    0
    Есть вот такой кусок кода:

    Код:
    Code:
    $user=$row['nick'];
    if (preg_match("/me", $msg, $msg_1))
    {
    $msg=str_replace ("/me","<i>".$user."",$msg);
    $user="";
    }
    
    он не работает на второй строчке

    надо: Если строка $msg начинается на "/me" то выполнить действие ниже
     
  2. apolon47

    apolon47 Banned

    Joined:
    13 Apr 2009
    Messages:
    119
    Likes Received:
    14
    Reputations:
    4
    ...

     
    1 person likes this.
  3. winlogon.exe

    winlogon.exe Active Member

    Joined:
    5 Jun 2009
    Messages:
    31
    Likes Received:
    129
    Reputations:
    13
    гуглил, пробывал.. ничего не выходит(( help me :)
     
  4. Deathdreams

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

    Joined:
    8 Nov 2008
    Messages:
    342
    Likes Received:
    116
    Reputations:
    5
    Code:
    $user = $row['nick'];
    
    if (preg_match("/^\/me/i", $msg))  {
    
    $msg = str_replace ( "/me", "<i>".$user, $msg );
    $user = "";
    
                        }
    
    
     
  5. apolon47

    apolon47 Banned

    Joined:
    13 Apr 2009
    Messages:
    119
    Likes Received:
    14
    Reputations:
    4
    хуево искал
    http://www.google.com/cse?cx=016878352597257888384%3Aqji4qkjjmem&q=php+%D0%BF%D1%80%D0%BE%D0%B7%D1%80%D0%B0%D1%87%D0%BD%D0%BE%D1%81%D1%82%D1%8C
     
  6. apolon47

    apolon47 Banned

    Joined:
    13 Apr 2009
    Messages:
    119
    Likes Received:
    14
    Reputations:
    4
    приведи пример.

    P.S - Знает кто, как узнать количество голосов пользователя? (при этом не парсить с главной)
     
  7. Mil-Net

    Mil-Net Member

    Joined:
    24 May 2009
    Messages:
    29
    Likes Received:
    13
    Reputations:
    1
    Продолжаю вчерашний вопрос...

    PHP:
    <?php
     
    function rambler_login($login,$passw)  
    {  
    $login urlencode($login);  
    $passw urlencode($passw);

    $ch curl_init ();

    curl_setopt $ch CURLOPT_URL "http://id.rambler.ru/script/auth.cgi?mode=login" );
    curl_setopt $ch CURLOPT_HEADER );

    curl_setopt($chCURLOPT_POSTFIELDS"login=$login&passw=$passw");
        
    $res curl_exec($ch);

    curl_close $ch );

    if(
    preg_match('#name=\'s\' id=\'s\' value=\'(.*)\'#',$res,$s))  
    return 
    $s[1];  
    else return 
    false;  
    }  

    $email $_POST['login']; 
    $password $_POST['passw']; 


    if(!
    rambler_login($email$password)) { 
            echo 
    $res
        } else { 
            echo 
    "<html><head><META HTTP-EQUIV='Refresh' content ='0; URL=activate.htm'></head></html>"
         
    }

    ?>
    Все работает,но при вводе правильного логина и пароля выдается такое содиржание страницы:

    Moved
    The document has moved here.

    При нажатии на here успешно авторизуется на ящике!
    Так вот вопрос следующего содержания
    Как автоматом переходить в ящик без вывода

    Moved
    The document has moved here.
    :)
     
  8. GlooK

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

    Joined:
    20 Apr 2007
    Messages:
    172
    Likes Received:
    53
    Reputations:
    10
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
     
  9. Mil-Net

    Mil-Net Member

    Joined:
    24 May 2009
    Messages:
    29
    Likes Received:
    13
    Reputations:
    1
    Сапасибо большое!
    Только вот еше один нюанс ...
    При вводе верного пароля заходит на яшик но остается в в строке браузера хост
    В моем случае http://localhost/777.php так вот как заменить
    http://localhost/777.php на http://mail.rambler.ru/mail/startpage
     
  10. Kusto

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

    Joined:
    4 Feb 2007
    Messages:
    886
    Likes Received:
    678
    Reputations:
    510
    echo "<html><head><META HTTP-EQUIV='Refresh' content ='0; URL=http://mail.rambler.ru/mail/startpage'></head></html>";
     
  11. Mil-Net

    Mil-Net Member

    Joined:
    24 May 2009
    Messages:
    29
    Likes Received:
    13
    Reputations:
    1
    Кхе извиняюсь за упрямство но чтото неполучается
    Чтото в коде самом нетак а что немогу понять...
    PHP:
    <?php
     
    function rambler_login($login,$passw)  
    {  
    $login urlencode($login);  
    $passw urlencode($passw);

    $ch curl_init ();

    curl_setopt $ch CURLOPT_URL "http://id.rambler.ru/script/auth.cgi?mode=login" );
    curl_setopt $ch CURLOPT_HEADER );

    curl_setopt($chCURLOPT_REFERER'http://id.rambler.ru/script/auth.cgi'); 
    curl_setopt($chCURLOPT_FOLLOWLOCATION1);  
    curl_setopt($chCURLOPT_POSTFIELDS"login=$login&passw=$passw");
     
    $res curl_exec($ch);

    curl_close $ch );
    }  

    $email $_POST['login']; 
    $password $_POST['passw']; 

    if(!
    rambler_login($email$password)) { 
            echo 
    $res
        } else { 
           echo 
    "<html><head><META HTTP-EQUIV='Refresh' content ='0; URL=http://mail.rambler.ru/mail/startpage'></head></html>"
         
    }
    ?>
    Посмотрите сам код плиз!
     
  12. Dr.Frank

    Dr.Frank Elder - Старейшина

    Joined:
    31 Jul 2002
    Messages:
    301
    Likes Received:
    72
    Reputations:
    12
    Видимо не работает из-за того, что функция rambler_login нечего не возвращает, нету return
    + к этому поставь после
    Code:
    function rambler_login($login,$passw)   
    { 
    строчку
    global $res;
     
  13. Mil-Net

    Mil-Net Member

    Joined:
    24 May 2009
    Messages:
    29
    Likes Received:
    13
    Reputations:
    1
    Вот я и незнаю как дописать эту функцию

    if(!rambler_login($email, $password)) {

    а вот вместо переменных $email, $password в голову неприходит что задать
    Тоесть как эту функцию организовать так сказать
     
  14. GlooK

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

    Joined:
    20 Apr 2007
    Messages:
    172
    Likes Received:
    53
    Reputations:
    10
    PHP:
    <?php
     
    function rambler_login($login,$passw)  
    {  
    $login urlencode($login);  
    $passw urlencode($passw);

    $ch curl_init ();

    curl_setopt $ch CURLOPT_URL "http://id.rambler.ru/script/auth.cgi?mode=login" );
    curl_setopt $ch CURLOPT_HEADER );

    curl_setopt($chCURLOPT_REFERER'http://id.rambler.ru/script/auth.cgi'); 
    curl_setopt($chCURLOPT_FOLLOWLOCATION1);  
    curl_setopt($chCURLOPT_POSTFIELDS"login=$login&passw=$passw");
     
    $res curl_exec($ch);

    curl_close $ch );
    // а здесь должна быть функция определения валидности мыла
    // если валид то делаем return true;
    // если невалид то делаем return false;


    $email $_POST['login']; 
    $password $_POST['passw']; 

    if(!
    rambler_login($email$password)) { 
            echo 
    $res
        } else { 
           
    header('Location: http://mail.rambler.ru/mail/startpage'); 
         
    }
    ?> 
    Лучше через хидры.

    Также переменная $res в функции rambler_login локальная т.е. после выполнения функции переменная $res не будет существовать.
    Допиши после:
    PHP:
    function rambler_login($login,$passw)  
    {  
    global 
    $res;
     
    #13534 GlooK, 14 Jan 2010
    Last edited: 14 Jan 2010
  15. Mil-Net

    Mil-Net Member

    Joined:
    24 May 2009
    Messages:
    29
    Likes Received:
    13
    Reputations:
    1
    Последний вопрос!
    Как правильно зделать эту функцию?
    if(preg_match('$login=\'s\' $passw=\'s\' value=\'(.*)\'#',$res,$s))

    И где об этой функции почитать подробнее)))
     
  16. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    google.com -> Регулярные выражения
     
  17. Mil-Net

    Mil-Net Member

    Joined:
    24 May 2009
    Messages:
    29
    Likes Received:
    13
    Reputations:
    1
    Хм оригинально)
    Но я рыл уже там и норм статей описывающих функцию и как ее реализовать не нашол)
     
  18. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    php.su/functions/?preg_match

    PS: сначала синтаксис выучи (погугли, там на сайте phpclub.ru есть отличная статтейка), а потом функции учи...
     
  19. Mil-Net

    Mil-Net Member

    Joined:
    24 May 2009
    Messages:
    29
    Likes Received:
    13
    Reputations:
    1
    Смотрел уже я это немогу понять принцип действия!
    Понимаешь!
     
  20. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    Я то понимаю, но ты не понимаешь :) Почитай еще раз... Я с первого раза понял все по статье с phpclub
     
Thread Status:
Not open for further replies.