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

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

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

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    [stranger] после $uniq->execute(); сделайте $uniq->store_result();
     
    _________________________
    1 person likes this.
  2. Col345

    Col345 New Member

    Joined:
    4 Sep 2011
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Такое возможно одновременный
    запуск сразу нескольких ехе. файлов с разных IP адресов на одном сервере.
     
  3. DeepBlue7

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

    Joined:
    2 Jan 2009
    Messages:
    359
    Likes Received:
    50
    Reputations:
    12
    Есть текстовый файл, с содержанием типа

    Code:
    16¶†%¦‡;%ў“µ*¶¬
    Необходимо: считать только число стоящие в самом начале файла

    PHP
     
  4. -=Zhenek=-

    -=Zhenek=- Elder - Старейшина

    Joined:
    31 Dec 2007
    Messages:
    271
    Likes Received:
    77
    Reputations:
    1
    Пытаюсь написать авторегер для джино.. Но столкнулся с проблемой..

    PHP:
    $kfName $_SERVER['DOCUMENT_ROOT'].'/moduls/cookie.txt';

    function 
    ccurl ($url,$post) {
    $ch curl_init($url);
    curl_setopt  ($chCURLOPT_HEADERtrue);
    curl_setopt ($chCURLOPT_RETURNTRANSFER1);
    curl_setopt($chCURLOPT_POSTFIELDS$post);
    $header = array(
             
    "Accept    Accept    text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
             
    "Accept-Language    ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3",
             
    "Accept-Charset    windows-1251,utf-8;q=0.7,*;q=0.7",
             
    "Accept-Encoding    gzip, deflate");
    curl_setopt($chCURLOPT_HTTPHEADER,$header);
    curl_setopt ($ch CURLOPT_REFERER"http://www.jino.ru");
    curl_setopt($chCURLOPT_USERAGENT"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)");
    curl_setopt($chCURLOPT_TIMEOUT20);
    curl_setopt($chCURLOPT_COOKIEJAR$kfName);
    curl_setopt($chCURLOPT_COOKIEFILE$kfName);
    $result curl_exec($ch);
    //curl_exec($ch); // выполняем запрос curl
    curl_close($ch);
    $url="";$post="";
    return 
    $result;
    }
    echo 
    $kfName;
    ccurl("http://www.jino.ru/buy/registration.html","");
    То есть открываем страницу регистрации, нам должны выдать куки.. Но фаил с ними не создается(
    И уже с этими куками я буду запрашивать капчу..
    Но даже при запросе капчи так :

    PHP:
    ccurl("http://www.jino.ru/rcaptcha.php","");
    в ответ приходит просто Error (т.к нет кук, но даже если беру их из чарлез и передаю все равно не принимает)

    Хотя вроде посылаю все как говорит charles
     
    #19324 -=Zhenek=-, 8 Oct 2011
    Last edited: 8 Oct 2011
  5. Skofield

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

    Joined:
    27 Aug 2008
    Messages:
    960
    Likes Received:
    392
    Reputations:
    58
    DeepBlue7
    preg_match("#^\d+#", $str, $match);
    print_r($match);
     
  6. qaz

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

    Joined:
    12 Jul 2010
    Messages:
    1,551
    Likes Received:
    173
    Reputations:
    75
    Такого рода вопрос, нужно курлом отправить пост данный содержащие двойные коычки, как ето сделать?

    PHP:
    $text 'tnj   gggggg  [url="fffffff"]fffff[/url] ';





    $cur=curl_init();       
    curl_setopt($curCURLOPT_URL'Такойто урл ');    
    curl_setopt($cur,CURLOPT_USERAGENT,"Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.8.131 Version/11.10");    
    curl_setopt($cur,CURLOPT_COOKIEJAR,'cookie.txt');       
    curl_setopt($cur,CURLOPT_COOKIEFILE,'cookie.txt');      
    curl_setopt($cur,CURLOPT_RETURNTRANSFER,1);       
    curl_setopt($curCURLOPT_POST1);         
    curl_setopt($curCURLOPT_POSTFIELDS"Post=$text&add_sent=yes&add_tracking=1");    
     
    curl_exec($cur);   
    curl_close($cur); 
     
  7. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    qaz ну вы вроде как все сами написали. Проблема скорее в квадратных скобках и знаке равенства - передаваемые данные обрабатывайте с помощью http://php.net/urlencode

    DeepBlue7
    PHP:
    echo intval(file_get_contents('file.txt'));
     
    _________________________
    #19327 Gifts, 8 Oct 2011
    Last edited: 8 Oct 2011
  8. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    qaz, экранируй.
    PHP:
    "Post=$text&add_sent=yes&add_tracking=1&quote=\""
    У меня такой вопрос:
    Открываю cURL'ом страницу, на ней пара редиректов, мне нужно отправить на страницу POST запрос, а дальше просто следовать редиректам.
    1) Как сделать подобное, не извращаясь и не составляя много запросов?
    2) Как получить результат именно второго запроса (редиректа)?
     
    #19328 AnGeI, 8 Oct 2011
    Last edited: 8 Oct 2011
  9. Konqi

    Konqi Green member

    Joined:
    24 Jun 2009
    Messages:
    2,251
    Likes Received:
    1,148
    Reputations:
    886
    PHP:
    curl_setopt($curlCURLOPT_FOLLOWLOCATIONtrue);
     
    _________________________
  10. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    Не все так просто :)
    Надо отправлять разные данные, первый get по https, второй post по http.
     
  11. НTL

    НTL Elder - Старейшина

    Joined:
    26 Jan 2008
    Messages:
    715
    Likes Received:
    205
    Reputations:
    -26
    Как удалить символы (Сердечки, звездочки, палочки и т.д. все что делается через "alt + цифры")
     
  12. #Wolf#

    #Wolf# Elder - Старейшина

    Joined:
    26 Mar 2008
    Messages:
    375
    Likes Received:
    166
    Reputations:
    16
    Проще пропустить через регулярку, и удалить все кроме [A-Z][А-Яё](опционально)[0-9][\.,|] и т.д
     
  13. НTL

    НTL Elder - Старейшина

    Joined:
    26 Jan 2008
    Messages:
    715
    Likes Received:
    205
    Reputations:
    -26
    А как же арабские, китайские и другие буквы?
     
  14. SHiNiGaMi

    SHiNiGaMi Banned

    Joined:
    3 Jan 2010
    Messages:
    382
    Likes Received:
    55
    Reputations:
    15
    Через "alt + цифры" делается все.
    Как вариант:
    Code:
    Кроме этого, классы символов можно обозначать так:
     [[:alnum:]] - все алфавитно-цифровые символы [a-zA-Z0-9]
     [[:alpha:]] - все алфавитные символы [a-zA-Z]
     [[:blank:]] - символ табуляции и пробел [\t ] 
     [[:cntrl:]] - все управляющие символы
     [[:digit:]] - все десятичные цифры [0-9]
     [[:graph:]] - все печатные символы, за исключением пробела
     [[:lower:]] - все строчные буквы [a-z]
     [[:upper:]] - все прописные буквы [A-Z]
     [[:print:]] - все печатные символы
     [[:punct:]] - все знаки препинания [\.,;:-]
     [[:space:]] - все пустые символы
     [[:xdigit:]] - все шестнадцатиричные цифры
    
     
  15. НTL

    НTL Elder - Старейшина

    Joined:
    26 Jan 2008
    Messages:
    715
    Likes Received:
    205
    Reputations:
    -26
    Понятно. Очень жаль. Тогда нужно оставить
    Пробую так:
    Code:
    $String = preg_replace("#[^\\xC0-\\xFF\\s]#",'',$String);
    Все символы превращаются в ??? (Это как пример). Еще google выдает:
    Входная строка в кодировке UTF-8
     
  16. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    Посоветуйте проверенный класс для работы с SSH
    протоколом.
     
  17. НTL

    НTL Elder - Старейшина

    Joined:
    26 Jan 2008
    Messages:
    715
    Likes Received:
    205
    Reputations:
    -26
    Посмотри это http://lt.php.net/manual/ru/ref.ssh2.php
     
    2 people like this.
  18. FollowMe

    FollowMe Banned

    Joined:
    26 Sep 2011
    Messages:
    9
    Likes Received:
    2
    Reputations:
    0
    iconv перекодируй в win-1251
     
  19. НTL

    НTL Elder - Старейшина

    Joined:
    26 Jan 2008
    Messages:
    715
    Likes Received:
    205
    Reputations:
    -26
    Не вариант.

    Составил такое выражения:
    Code:
    	$String = preg_replace("/[^	\\x30-\\x39,
    
    					\\x41-\\x5A, 
    					\\x61-\\x7A,
    								
    					\\xD0\\x90-\\xD0\\x9F,
    					\\xD0\\xA0-\\xD0\\xAF,
    					\\xD0\\x81,
    					
    					\\xD0\\xB0-\\xD0\\xBF,
    					\\xD1\\x80-\\xD1\\x8F,
    					\\xD1\\x91,
    					
    					\\x21,
    					\\x23-\\x26,
    					\\x3F,
    					\\x2A,
    					\\x28-\\x29,
    					\\x7B,\\x7D,
    					\\x5B,\\x5D,
    					\\x5F,
    					\\x2D,
    					\\x2C,
    					\\x2E,
    					\\x20
    					]*/",'',$String);
    
    Но что то еще не совсем ровно работает. Лишние символы превращаются в ???. Из "нн" получается "??? ???н". МБ это из за denwer'а?
     
    #19339 НTL, 9 Oct 2011
    Last edited: 9 Oct 2011
  20. AnGeI

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

    Joined:
    8 Dec 2008
    Messages:
    395
    Likes Received:
    79
    Reputations:
    16
    Нужно получить определенное количество заголовков и остановить редиректы.
    PHP:
    curl_setopt($cCURLOPT_FOLLOWLOCATIONtrue);
    curl_setopt($cCURLOPT_MAXREDIRS5);
    Делаю так, но если в CURLOPT_MAXREDIRS указано значение меньшее, чем число максимальных редиректов - они не выводятся. Как поступить, чтобы выполнилось число редиректов CURLOPT_MAXREDIRS и потом их вывести (в идеале вывести последний)?
     
    #19340 AnGeI, 10 Oct 2011
    Last edited: 10 Oct 2011
Thread Status:
Not open for further replies.