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

Discussion in 'PHP' started by Kaimi, 7 May 2015.

  1. Octavian

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

    Joined:
    8 Jul 2015
    Messages:
    506
    Likes Received:
    101
    Reputations:
    25
    ПОЧЕМУ НЕ РАБОТАЛ МОИ ВАРИАНТ
     
  2. Тот_самый_Щуп

    Тот_самый_Щуп Reservists Of Antichat

    Joined:
    23 Mar 2017
    Messages:
    265
    Likes Received:
    173
    Reputations:
    119
    Подскажите, на PHP технически реально ли отрезолвить айпишник домена через определенные DNS серверы?
    Речь идет о децентрализованных доменных зонах, получить текущий айпишник такого домена (А запись для него) реально через определенные DNS серверы, но не могу найти информацию, как на php такое можно реализовать.
    Сразу оговорюсь, просьба не предлагать решение основанные на системных командах линукса. (system,passthru,exec и так далее)
     
  3. LStr1ke

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

    Joined:
    29 Jul 2009
    Messages:
    801
    Likes Received:
    145
    Reputations:
    73
    https://pear.php.net/package/Net_DNS2/
    https://netdns2.com/
     
  4. Octavian

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

    Joined:
    8 Jul 2015
    Messages:
    506
    Likes Received:
    101
    Reputations:
    25
    Такая конструкция выдает неожиданный результат
    В IF поподает true но echo 1; не выводится
    Code:
    if(count($searchDB->fetchAll()) > 0){
        foreach($searchDB as $valueBd){
            echo 1;
        }
    } 
     
  5. LStr1ke

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

    Joined:
    29 Jul 2009
    Messages:
    801
    Likes Received:
    145
    Reputations:
    73
    Code:
    if($searchDB->rowCount() > 0){
        foreach($searchDB->fetchAll() as $valueBd){
            echo 1;
        }
    }
    
     
    Octavian likes this.
  6. Octavian

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

    Joined:
    8 Jul 2015
    Messages:
    506
    Likes Received:
    101
    Reputations:
    25
    Как уместить последние 2 строки в 1?
    Code:
    $sql5 = "SELECT * FROM product WHERE name_".$lang." LIKE CONCAT('%', :q , '%')";
    $searchDB = $pdo->prepare($sql5);
    $searchDB->bindValue(':q',$_GET['q']);
    $searchDB->execute();
    $result = $searchDB->fetchAll();
     
  7. The0rist

    The0rist New Member

    Joined:
    6 Nov 2017
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    PHP:
    $result $searchDB->execute()->fetchAll();
    Собственно, с верхними строчками можно проделывать тот же трюк и запилить все в одну строку (но по правилам лучше делать каждый новый вызов цепочки с новой строки, так как легче читать и дебажить).
     
  8. Octavian

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

    Joined:
    8 Jul 2015
    Messages:
    506
    Likes Received:
    101
    Reputations:
    25
    Code:
    <?php
    $openMail = file_get_contents('https://win.mail.ru/cgi-bin/auth?Login=nicoara.octavian&Password=123456&Domain=mail.ru');
    print_r($openMail);
    ?>
    Почему при вводе валидных данных я получаю страницы входа
     
  9. joelblack

    joelblack Reservists Of Antichat

    Joined:
    6 Jul 2015
    Messages:
    244
    Likes Received:
    450
    Reputations:
    145
    Попробуй через Curl c CURLOPT_FOLLOWLOCATION в true, так как тебе 302 статус приходит.
    И не забудь указать путь до файла,куда будут сохраняться куки
    PHP:
    <?php
    $url
    ="https://win.mail.ru/cgi-bin/auth?Login=login&Password=pass&Domain=mail.ru";
    $agent'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';

    $ch curl_init();
    curl_setopt($chCURLOPT_COOKIEJAR'C:\ospanel\domains\localhost\cookie.txt');
    curl_setopt($chCURLOPT_USERAGENT$agent);
    curl_setopt($chCURLOPT_URL,$url);
    curl_setopt($chCURLOPT_FOLLOWLOCATIONtrue);
    curl_exec($ch);

    ?>
     
  10. Octavian

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

    Joined:
    8 Jul 2015
    Messages:
    506
    Likes Received:
    101
    Reputations:
    25
    Нехочет
     
  11. crlf

    crlf Green member

    Joined:
    18 Mar 2016
    Messages:
    683
    Likes Received:
    1,513
    Reputations:
    460
    PHP:
    <?php
    $ch 
    curl_init();
    curl_setopt($chCURLOPT_URL'https://win.mail.ru/cgi-bin/auth?Login=user&Password=pass&Domain=mail.ru');
    curl_setopt($chCURLOPT_COOKIEJAR'./.curlcookie');
    curl_setopt($chCURLOPT_COOKIEFILE'./.curlcookie');
    curl_setopt($chCURLOPT_FOLLOWLOCATIONtrue);
    $res curl_exec($ch);
    die(
    $res);
    ?>
     
  12. joelblack

    joelblack Reservists Of Antichat

    Joined:
    6 Jul 2015
    Messages:
    244
    Likes Received:
    450
    Reputations:
    145
    Я тестил код,там без user-agent'a при любом раскладе не будет работать.Я дал ему рабочий оттестированный пример)
     
    Octavian likes this.
  13. crlf

    crlf Green member

    Joined:
    18 Mar 2016
    Messages:
    683
    Likes Received:
    1,513
    Reputations:
    460
    Ммм?
    [​IMG]

    А я типо от балды? :D
     
  14. Octavian

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

    Joined:
    8 Jul 2015
    Messages:
    506
    Likes Received:
    101
    Reputations:
    25
    У меня xampp стабильно выдает белаю страницу
     
  15. joelblack

    joelblack Reservists Of Antichat

    Joined:
    6 Jul 2015
    Messages:
    244
    Likes Received:
    450
    Reputations:
    145
    Конечно не от балды,просто у меня лично твой пример не работает и требует авторизации, а мой работает хорошо,поэтому написал про добавление User-Agent'a:)
    [​IMG]
     
  16. crlf

    crlf Green member

    Joined:
    18 Mar 2016
    Messages:
    683
    Likes Received:
    1,513
    Reputations:
    460
    C командной строки, без UA:
    Code:
    curl -v -H 'User-Agent:' -b ./.cookie --location 'https://win.mail.ru/cgi-bin/auth?Login=user&Password=pass&Domain=mail.ru' > /tmp/123.html
    
    Всё ок.
     
  17. Muracha

    Muracha Member

    Joined:
    30 Jul 2011
    Messages:
    153
    Likes Received:
    10
    Reputations:
    0
    Есть текстовый файл в котором много закодированных строк в base64:
    Они располагаются следующим образом(всего около 4к разной длины):
    ZGV2aWwwMDc=:[email protected]
    ZGwwMDc=:[email protected]

    Я хочу с помощью скрипта расшифровать пароли и вместо закодированной записи вписать раскодированные пароли:
    Чтобы в файл 2.txt писалось типа:
    123456:[email protected]

    Остановился на алгоритме и недокода:
    открывать файл
    читать до строки :
    расшифровывать base64
    сохранить.
    Сохранить после почтовый ящик :
    Взять следуюущую строку

    С помощью каких алгоритмов можно сделать это действие?Писать код необязательно, просто укажите вектор.
    Подстроки? Регуляики?


    Code:
    <?php
    $f = file_get_contents('/home/Documents/horse/2.txt');
    preg_match_all( '/<b>(.*)<\/b>/iUs' , $f, $matches);
    echo $matches;
    ?>
    
     
  18. Jerri

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

    Joined:
    12 Jul 2009
    Messages:
    136
    Likes Received:
    377
    Reputations:
    22
    Типа такого, не проверял, работает или нет, но вектор уж точно ясен.
    PHP:
    <?php
    $f1 
    fopen("file1.txt"'r') or die("bbb");
    $f2 fopen("file2.txt"'a+') or die("ddd");
    while(!
    feof($f1))
    {
        
    $str fgets($f1);
        
    $arr explode(':'$str1);
        
    $pass base64_decode($arr[0]);
        
    fputs($f2$pass.':'.$arr[1].'\n');
    }
    fclose($f1);
    fclose($f2);
     
    gena ryzhov and Muracha like this.
  19. Muracha

    Muracha Member

    Joined:
    30 Jul 2011
    Messages:
    153
    Likes Received:
    10
    Reputations:
    0
    Это сработало но с небольшой коррективой:
    Code:
    $arr = explode(':', $str, 2);
    Code:
    fputs($f2, $pass.':'.$arr[1]);
    При указании - цифры "1" - появляется множество нечитаемых символов и все в кучу.
    Code:
    <?php
    $f1 = fopen("/home/Documents/2.txt", 'r') or die("bbb");
    $f2 = fopen("/home/Documents/3.txt", 'a+') or die("ddd");
    while(!feof($f1))
    {
        $str = fgets($f1);
        $arr = explode(':', $str, 2);
        $pass = base64_decode($arr[0]);
        fputs($f2, $pass.':'.$arr[1]);
    }
    fclose($f1);
    fclose($f2);
    
     
  20. Vkmusangs

    Vkmusangs New Member

    Joined:
    9 Sep 2017
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Можно ли сделать так чтобы в iframe загружалась только мобильная версия сайта, независимо от того с какова устройства перешли на сайт на котором установлен iframe?