Задать вопрос
  • 5V3PIN и ADDR_LED1 (Asrock) на материнской плате это одно и то же, или нет?

    @alexalexes
    Хоть бы модель материнки указали. Хотели получить ответ по особенностям подключения к материнке, но самый главный параметр указать в вопросе забыли.
    Написано
  • Как вывести подсчёт статистики из базы данных?

    @alexalexes
    Либо отдельным запросом получаете:
    select count(*) total_count
    from statistics_couter_visit as scv

    Либо добавляете еще один count без case условий в запрос по всей статистике, но убираете ограничение в where:
    select count(case when scv.date >= UNIX_TIMESTAMP(CURDATE()) then 1 end) today_count,
           count(case when scv.date >= UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 1 DAY)) and scv.date < UNIX_TIMESTAMP(CURDATE()) then 1 end) yesterday_count,
           count(case when scv.date >= UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 1 WEEK)) then 1 end) week_count,
           count(case when scv.date >= UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 1 MONTH)) then 1 end) month_count,
          count(*) total_count -- статистика за все время
    from statistics_couter_visit as scv
    -- тут нет where, выборку не урезаем, чтобы получать полный подсчет строк
    Написано
  • Как вывести подсчёт статистики из базы данных?

    @alexalexes
    $user_attendance_profile = mysql_fetch_array(mysql_query("
    SELECT * FROM 
    statistics_couter_visit 
    WHERE 
    tag='".mysql_real_escape_string($base_quest['tag'])."' AND 
    ip='".mysql_real_escape_string($ip)."' AND 
    browser='".mysql_real_escape_string($browser)."' AND 
    date >= UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL -1 DAY)) -- полночь следующего дня
    ")
    );

    1. Не нужно использовать время PHP, для MySQL предусмотрены функции curdate() и now() - от них можно получать текущую отметку времени.
    2. mysql_* функции небезопасные, их нужно заменить вдумчиво на mysqli_*. любой мамкин хакер, захотевший проанализировать на SQL-инъекции ваш сайт, найдет черный ход к вашей базе через юзер-агент браузера.
    Хоть я экранировал входные параметры через mysql_real_escape_string, но это отчасти снимает проблему инъекций. Нужно использовать подготавливаемые запросы, которые есть только в mysqli и PDO реализациях.
    Написано
  • Как вывести подсчёт статистики из базы данных?

    @alexalexes
    Не совсем корректно использовать строковый тип, чтобы записывать даты.
    Куда уместнее использовать тип timestamp или datetime.
    Я добавил второй вариант запроса, который будет работать в вашем случае.

    Из-за того, что тип поля строковый индекс будет работать молоэффективно из-за преобразования значений как целое число.
    Написано
  • Как вывести подсчёт статистики из базы данных?

    @alexalexes
    Строки при этом нужно по-другому извлекать.
    Пример с count-ами заточен под извлечение одной строки с конкретными названиями полей.
    while($row = mysql_fetch_assoc($result))
    {
      var_dump($row);
    }
    Написано
  • Как вывести подсчёт статистики из базы данных?

    @alexalexes
    Нужно выполнить команду create index в среде MYSQL, либо воспользоваться инструментарием phpmyadmin, если такой используется.
    Индекс нужен, чтобы оптимально получить все возможные выборки в тех запросах, где есть условия по этому полю.
    но пишет всё по нулям,

    Ну, тогда нужно проверять, извлекается ли что-то по простым запросам, типа:
    select * from statistics_couter_visit as scv
    И если подрезать выборку в пределах одного месяца:
    select *
      from statistics_couter_visit as scv
    where scv.date >= DATE_SUB(CURDATE(), INTERVAL 1 MONTH)
    order by scv.date
    Написано
  • Как вывести подсчёт статистики из базы данных?

    @alexalexes
    Вам, наверное, еще рановато править модули, где идет взаимодействие с СУБД, раз у вас простая модификация и просмотр результатов запроса через PHP вызывает боль.
    Изучите этот раздел справки https://www.php.net/manual/ru/ref.mysql.php
    Наверное, чтобы познакомится с результатами запроса, нужно что-то такое набросать:
    $result = mysql_query("select count(case when scv.date >= CURDATE() then 1 end) today_count,
           count(case when scv.date >= DATE_SUB(CURDATE(), INTERVAL 1 DAY) and scv.date < CURDATE() then 1 end) yesterday_count,
           count(case when scv.date >= DATE_SUB(CURDATE(), INTERVAL 1 WEEK) then 1 end) week_count,
           count(case when scv.date >= DATE_SUB(CURDATE(), INTERVAL 1 MONTH) then 1 end) month_count
    from statistics_couter_visit as scv
    where scv.date >= DATE_SUB(CURDATE(), INTERVAL 1 MONTH) -- тут ограничение по макс. окну просмотра статистики, то есть по month_count");
    if(!$result)
    {
      echo "Could not successfully run query from DB: " . mysql_error();
      exit();
    }
    $row = mysql_fetch_assoc($result);
    if ($row)
    {
        echo 'today_count: '.$row["today_count"].'; ';
        echo 'yesterday_count: '.$row["yesterday_count"].'; ';
        echo 'week_count: '.$row["week_count"].'; ';
        echo 'month_count: '.$row["month_count"].'; ';
        // следовательно, значение для $today можно получить таким образом:
       $today = $row["today_count"];
    }
    
    mysql_free_result($result);

    PS: Заменить бы тут mysql_* функции на mysqli_*, но кто-ж это будет делать.
    Написано
  • Как вывести подсчёт статистики из базы данных?

    @alexalexes
    Ну, берите поисковик и разжевывайте самостоятельно:
    - Обычный count(*)
    - count(distinct полем)
    - count(с case выражением)
    - Что такое CURDATE(), NOW()
    - DATE_SUB()
    - Математика с типами данных date и datetime (вычитание, сдвиги, вычисления всяких понедельников взад и вреред, первых дней месяцев. года и т.д., правильное вычитание месяцев, определение возраста в целых годах и т.д.)
    - Перевод типов данных времени в строку и обратно (форматирование)
    - Сравнение дат
    Написано
  • Как решить проблему с HTTP ERROR 500?

    @alexalexes
    Что в логах апача пишет, когда идет запрос с 500?
    Написано
  • Возможна ли кража куки от всех сайтов?

    @alexalexes
    А если сайт злоумышленника на https?

    У злоумышленника другой домен. Браузер не поделиться с ним куками, не предназначенными для его домена.
    Написано
  • Как настроить кнопку удаления из бд?

    @alexalexes
    Можно, но только button-вариантом кнопки:
    <button type="submit" name="action" value="delete">Удалить</button>

    input[type="submit"] вариант не гибкий, заставляет называть так же кнопку, как параметр, который она отправляет:
    <input type="submit" name="action" value="delete"/>

    Дополнительные name/value в button не дает серьезных преимуществ перед обычным скрытым полем, тем более этих полей в форме может быть не одно.
    Написано
  • ПК уходит на перезагрузку при нагрузке на видюху, в чём может быть проблема?

    @alexalexes
    Ставлю на блок питания. То, что он раньше работал на предельной мощности, но подсох какой-нибудь конденсатор, и стабильность пропала. А то что монитор поменяли - вы просто, когда кабель вставляли, тряхнули системный блок, и параметры деталей БП, которые вот-вот откиснут, изменились.

    Для точной диагностики, нужно протестировать стабильность системного блока с видеокартой по слабее, и отдельно протестировать конфиг с rx 6650 xt видеокартой, но с заведомо рабочим блоком питания, ватт на 800 с сертификатом 80 plus.
    Тогда точно можно установить причину, что отваливается.
    Естественно, этот трюк можно проделать только в условиях мастерской, когда есть все запасные блоки любой конфигурации.
    Написано
  • Как хешировать email при регистрации пользователя и проверять при восстановлении?

    @alexalexes
    При регистрации пользователя хешировать указанный email и вносить его в таком виде в БД.

    Какая цель сего действа? Предотвратить утечку фактов, что такие-то юзеры пользуются вашей системой?
    Обычно, хешированием обрабатывают пароль. Логин хранят как есть.
    Написано
  • 100 градусов в простое i7-10700kf в чем причина?

    @alexalexes
    Enot_Teo, его можно занести с другого раздела диска или с флешки при первом подключении во вновь установленной системе.
    Написано
  • 100 градусов в простое i7-10700kf в чем причина?

    @alexalexes
    Виктор, если процесс не зловредный, то он проявит нагрузку. Но, обычно, майнеры себя тушат, когда пользователь пытается проанализировать диспетчер задач. Если такое происходит при открытии диспетчера задач, то значит с софтом что-то не так.
    Написано
  • Как можно отправлять файлы с ESP32 на сервер?

    @alexalexes
    https://esp32.com/viewtopic.php?t=33977
    Можно, вместо открытия файла и чтения его по блокам, задаете сами размер file_size и подставляете нужный поток байтов вместо fread в цикле while (total_sent < file_size).
    Написано
  • Возможно ли подцепить вирус просто перейдя по рекламному баннеру на сомнительном сайте?

    @alexalexes
    Возможен. Файл вируса должен явно упасть в список загрузки, скачаться, а вы его должны запустить явно - в фоновом режиме вы такое действие не пропустите.
    ---
    Сам браузер по себе не имеет ценности как цель атаки, важно для злоумышленника, какие сессии в нем открыты, чтобы можно было бы дернуть ваши данные из какого-нибудь аккаунта. Поэтому появляются всплывающие окна, чтобы вы разрешили какое-либо действие либо с браузером, либо с акками.
    Написано
  • Как правильно добавлять столбцы в БД - в конец таблицы или логически группировать?

    @alexalexes
    doexec, делайте извлечение данных по явному имени колонки, тогда вопрос будет исчерпан.
    Написано
  • Может ли, во время чтения файла одним скриптом, другой скрипт начать записывать в этот файл новые данные?

    @alexalexes
    Что-то вы спроектировали не так, что файл стал общим разделяемым ресурсом. Подозреваю, что еще не знакомы с СУБД, поэтому костылите хранение на файлах.
    Написано