• Почему не парсятся все div здесь?

    turintomsk
    @turintomsk
    готов не согласиться, 6 объявлений: попробуйте сделать файл, вида:
    <?php
    require_once 'simple_html_dom.php';
    $link = 'https://www.avito.ru/moskva/predlozheniya_uslug/transport_perevozki/pe$
    $html = file_get_html($link);
    
    $items = $html->find('div.js-catalog_before-ads > div.item');
    foreach ($items as $article) {
        print_r($article->innertext);
        echo "\n";
    }

    и запустить, выводит 6 элементов.
  • Можно как то одним запросом сделать это?

    turintomsk
    @turintomsk
    Что же, в этом случае у Вас в любом случае будет 2 действия от пользователя:
    1) запрос на восстановление, при этом пользователю выдаётся одноразовый код, который записывается в поле `code`.
    2) после подтверждения (email/POST/etc.): необходимо заменить текущий пароль пользователя на новый и оповестить пользователя.
    Генерацию пароля можно реализовать на Ваше усмотрение в любом месте.
    В этом случае, я бы предложил добавить время генерации кода (`code`) и переписать запрос на следующий:
    UPDATE `users` SET `password` = `temp_password`, `code` = NULL WHERE `code` = :code

    Если решите добавить `code_created` то читайте про функцию DATEDIFF: https://dev.mysql.com/doc/refman/5.5/en/date-and-t...