Задать вопрос
  • Как Google узнает Mac-адрес компьютера?

    @Us59
    Veritas23, можете на почту написать мне?) Есть пару вопросов касательно сего дела
    spoiler
    s811645@gmail.com
  • Как получить Iframe с DOMDocument?

    @Us59 Автор вопроса
    A N, проблема в том, что iframe генерируется js скриптами, и когда я вывожу var_dump в браузере он успешно генерируется, а если я просто сохраняю html результат в файл, то мы не видим iframe потому что его не сгенерировали js скрипты, и чтобы он появился нужно выполнять javascripts и потом уже вытаскивать iframe src.
    Этот вопрос обсуждаю уже тут
  • Как получить Iframe с DOMDocument?

    @Us59 Автор вопроса
    A N, Как их использовать, если loadHTML не загружает html... и при обращении к атрибутам он просто выдает, мол вы обращаетесь к пустоте..
  • Как получить Iframe с DOMDocument?

    @Us59 Автор вопроса
    A N, я взял онлайн php создал переменную $html =' сюда засунул большой кусок html и script кода';
    $html = preg_replace("'<script[^>]*?>.*?</script>'si","", $result);

    var_dump($text);
    и вижу нужный html.

    По факту в скрипте получаю через curl запрос данные html также делаю preg_replace и далее..:
    $dom = new DOMDocument();
    $dom->loadHTML($html);
    var_dump($dom);

    и вар dump выводит мне фигню вот эту:
    spoiler
    object(DOMDocument)#3 (34) {
      ["doctype"]=>
      string(22) "(object value omitted)"
      ["implementation"]=>
      string(22) "(object value omitted)"
      ["documentElement"]=>
      string(22) "(object value omitted)"
      ["actualEncoding"]=>
      string(5) "utf-8"
      ["encoding"]=>
      string(5) "utf-8"
      ["xmlEncoding"]=>
      string(5) "utf-8"
      ["standalone"]=>
      bool(true)
      ["xmlStandalone"]=>
      bool(true)
      ["version"]=>
      NULL
      ["xmlVersion"]=>
      NULL
      ["strictErrorChecking"]=>
      bool(true)
      ["documentURI"]=>
      NULL
      ["config"]=>
      NULL
      ["formatOutput"]=>
      bool(false)
      ["validateOnParse"]=>
      bool(false)
      ["resolveExternals"]=>
      bool(false)
      ["preserveWhiteSpace"]=>
      bool(true)
      ["recover"]=>
      bool(false)
      ["substituteEntities"]=>
      bool(false)
      ["nodeName"]=>
      string(9) "#document"
      ["nodeValue"]=>
      NULL
      ["nodeType"]=>
      int(13)
      ["parentNode"]=>
      NULL
      ["childNodes"]=>
      string(22) "(object value omitted)"
      ["firstChild"]=>
      string(22) "(object value omitted)"
      ["lastChild"]=>
      string(22) "(object value omitted)"
      ["previousSibling"]=>
      NULL
      ["attributes"]=>
      NULL
      ["ownerDocument"]=>
      NULL
      ["namespaceURI"]=>
      NULL
      ["prefix"]=>
      string(0) ""
      ["localName"]=>
      NULL
      ["baseURI"]=>
      NULL
      ["textContent"]=>
      string(984) "Sign In
    
    
        
        
        
        
            
        
        
            
            
                
            
            
                
            
            
        
    
        
        
        
        
            
        
        
        
        
    
    
    
    	
    	
    
        
    
    
    
        
    
    
            @media only screen and (min-device-width: 481px) {
                .wrapper {
                    margin-bottom: -66px;
                    padding-bottom: 66px;
                }
            }
    
            @media only screen and (max-device-width: 480px) {
                .wrapper {
                    margin-bottom: -122px;
                    padding-bottom: 122px;
                }
            }
        
            
                    
    
    
    
    
                
                
                    
    
                    
                        
                            Privacy Policy
                        
                        
                            Terms of Use
                        
                        
                    
                
            
    "
    }
  • Как получить Iframe с DOMDocument?

    @Us59 Автор вопроса
    A N, loadHTML просто нив какую не грузит html теги, даже в самом начале которые.
  • Как получить Iframe с DOMDocument?

    @Us59 Автор вопроса
    A N, была мысль удалить через preg_replace, но удаляется ВСЕ содержимое. т.е в начале есть script и в конце. он берет script начальный и удаляет все до самого конца. включая html.
    Пример:
    <div>
    какой то текст
    </div>
    <script>Код JS</script>
    <div>
    какой то текст
    </div>
    <div>
    какой то текст
    </div>
    <div>
    какой то текст
    </div>
    <script>Код JS</script>

    Т.е он удаляет все средние div.
    Видимо, мне нужен правильный preg_replace который удалит только внутренности script и циклом очистит все scripts.
  • Как получить Iframe с DOMDocument?

    @Us59 Автор вопроса
    A N, и что это дает? Отключает предупреждения и ошибки? Ну не знаю, вставил ваш код, как показывало предупреждения так и показывает.
    $dom = new DOMDocument();
    $dom->loadHTML($result, LIBXML_NOWARNING | LIBXML_NOERROR);
    var_dump($dom);


    вар дамп не отображает html текста, только js как я понимаю.
    5cf509e2e4242023828679.png
  • Как получить Iframe с DOMDocument?

    @Us59 Автор вопроса
    A N, в итоге все равно неясно, они предлагают отключить ошибки? - Не помогает.

    А как обрабатывать - я не нашел примеров никаких, только
    if (!$doc->load('file.xml')) {
        foreach (libxml_get_errors() as $error) {
            // обработка ошибок здесь
        }
    
        libxml_clear_errors();
    }

    обработка ошибок здесь.. как? примеров не нашел.

    Вот одна из ошибок которая возникает насколько я понимаю:
    5cf4f5eb7a3f7854438728.png
    И как я ее могу исправить?
  • Как получить Iframe с DOMDocument?

    @Us59 Автор вопроса
    В онлайн инструментах, когда я загружаю html теги ручками и удаляю script все вот такое работает:
    $dom = new DOMDocument();
    $dom->loadHTML($html);
    $xpath = new DOMXpath($dom);
    foreach($xpath->query('//iframe') as $iframe) {
        echo $iframe->getAttribute('src');
    }

    На практике в моем скрипте - нет, по всей видимости неправильно загружается html в $dom->loadHTML($html);
    Возможно его нужно обрабатывать как-то перед добавлением? Скорее всего не нравится что я загружаю туда еще скрипты помимо html...
  • Как делать запись html текста в БД?

    @Us59 Автор вопроса
    Denis, тема не дубль, вопрос в ней в основном касательно того, как мне сформировать переменную для передачи в ф-цию)
  • Как передать параметры в IN?

    @Us59 Автор вопроса
    FanatPHP, вот, теперь немного понятней стало.
  • Как передать параметры в IN?

    @Us59 Автор вопроса
    FanatPHP, все примеры которые дали показывают как это делается именно с массивом, при этом там точно также можно было просто подставить в sql строку цифры нужные. Зачем массив использовать?

    Я не знаю про PDO поэтому и спрашиваю. Возможно в моем случае просто не нужно передавать параметры, а просто вставить нужные цифры в sql строчке и все? Эти цифры 4 и 5 всегда одни, они не меняются и не от чего не зависят в моем случае.
  • Как передать параметры в IN?

    @Us59 Автор вопроса
    Rsa97 , я не могу понять, получается я могу просто взять и подставить в sql StatusId IN (4, 5)"
    Без implode... зачем это делать через массив?)
  • Как делать запись html текста в БД?

    @Us59 Автор вопроса
    sim3x, если в mysqli есть тоже самое что и в PDO то каков смысл использования PDO?
  • Как делать запись html текста в БД?

    @Us59 Автор вопроса
    sim3x, критикуешь - предлагай.
  • Как делать запись html текста в БД?

    @Us59 Автор вопроса
    Я не использую PDO и не использовал никогда, а ваш ответ как раз ссылается на этот метод.
    Как выводится текст - мне НЕ ИЗВЕСТНО, я этого не вижу и не знаю, я лишь вижу как в БД информация записана, и я хочу записывать ее точно также.

    В PDO пишут что нужно использовать знаки вопроса ?? а затем передавать переменную, я хз для чего это, но я не использую PDO, поэтому мне нужно ответ для моего случая, либо придти к тому, что без PDO в моем случае никак.
  • Как делать запись html текста в БД?

    @Us59 Автор вопроса
    Konata Izumi, так в итоге можно так делать??) права root. Запросов может быть много, до 50-100 в минуту.
  • Как передать переменную содержащую Html и выполнить SQL запрос?

    @Us59 Автор вопроса
    irishmann, Я использую для подключение mysql.
    Вот код:
    spoiler
    class Script {
        private $DB;
    
        public function __construct($DB_SERVER, $DB_USER, $DB_PASS, $DB_BASE)
        {
            $this->DB = new mysqli($DB_SERVER, $DB_USER, $DB_PASS, $DB_BASE);
        }
        
        function FunctionName ()
        {
            //....
        }
    }
    $object = new Script($DB_SERVER, $DB_USER, $DB_PASS, $DB_BASE);
    $request = $object->FunctionName();


    Я почитал про PDO, но так и не понял, зачем оно нужно?)
  • Как передать переменную содержащую Html и выполнить SQL запрос?

    @Us59 Автор вопроса
    FanatPHP, ну бред бредом, но как-то хранится же эта инфа, причем в достаточно большой БД)
  • Как передать переменную содержащую Html и выполнить SQL запрос?

    @Us59 Автор вопроса
    irishmann, библиотеку? наверное никакую не использую. Я не очень опытный юзер в плане всего. Как я понял, моя ошибка заключается в том, что в sql запросе нельзя подставлять параметры? Нужно делать переменную подставляя данные, а затем уже вызывать
    $this->DB_DO->query(тут вставлять готовую переменную которую сформировал выше);

    По поводу библиотеки, для чего ее используют? я немного понимаю что это, но для чего оно мне? Чтобы не писать ф-ции которые уже есть в готовой библиотеке?