• Переключение классов по времени?

    bingo347
    @bingo347 Куратор тега JavaScript
    Crazy on performance...
    if (hours === 10 || (hours === 11 && minutes < 30)) {
      // 1
    } else if ((hours === 11 && minutes >= 30) || hours === 12) {
      // 2
    }


    Но проще вычислить даты для контрольных точек и сравнивать текущее время с ними:
    function createDate(hours, minutes) {
      const d = new Date();
      d.setHours(hours);
      d.setMinutes(minutes);
      return d;
    }
    
    const time1 = createDate(10, 0).getTime();
    const time2 = createDate(11, 30).getTime();
    const time3 = createDate(13, 0).getTime();
    const now = Date.now();
    if (now >= time1 && now < time2) {
      // 1
    } else if (now >= time2 && now < time3) {
      // 2
    }


    Ну и так же стоит учитывать, что считать это все будет в часовом поясе пользователя, если же нужны вычисления независимые от часового пояса, то стоит использовать методы setUTCHours и setUTCMinutes со смещениями нужного часового пользователя относительно UTC (Лондона) ну или getUTCHours/getUTCMinutes для первого варианта.
    Ответ написан
    Комментировать
  • Не отправляется форма с сайта?

    Max_Cohen
    @Max_Cohen
    Программист, который не программирует
    Возможно такое, что у хостера есть правило: можно отправлять письма только от отправителя, который зарегистрирован в веб-почте хостинга. Т.е. сперва надо зарегистрировать пользователя почты. Например: no-reply@ваш_домен.com. Потом в заголовках отправляемой письма указать эти данные.

    $to = 'nobody@example.com';
    $subject = 'the subject';
    $message = 'hello';
    $headers = 'From: NO-REPLY@ваш_домен.com' . "\r\n" .
        'Reply-To: NO-REPLY@ваш_домен.com' . "\r\n";
    
    mail($to, $subject, $message, $headers);
    Ответ написан
    Комментировать