• Почему ссылка работает в хром но не работает через href в html?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Потому что символ & (как и некоторые другие символы) в HTML должен экранироваться как &

    upd: Проблема была в чём-то другом. См. комментарии.
    Ответ написан
    5 комментариев
  • Как сделать обязательное обновление игры?

    vabka
    @vabka Куратор тега C#
    Токсичный шарпист
    Ну как как.
    1. Требуешь постоянное подключение к интернету
    2. Узнаёшь со своего сервера актуальную версию
    3. Если версия не актуальная, то просто высвечиваешь на весь экран соответствующее сообщение
    Ответ написан
    2 комментария
  • Как передать ответ от сервера в JS?

    @12rbah
    Через ajax можно. Если с перезагрузкой страницы, то да можно записать в какое-нибудь поле на форме, на сервере добавить в html и на клиенте потом считать.
    результат валидации пароля от сервера(php) к клиенту
    А зачем?
    Ответ написан
    2 комментария
  • Пропадают данные при записи в JSON файл?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Внимательно оттестировать весь код и найти ошибку.
    Либо перейти от файла к нормальной базе данных.
    Ответ написан
    Комментировать
  • Из-за чего ошибка Parse error: syntax error, unexpected token "="?

    php666
    @php666
    PHP-макака
    я пытаюсь настроить обработчик платежей для freekassa.ru
    не пытайся. максимально говеный сервис.
    Ответ написан
    2 комментария
  • Из-за чего ошибка Parse error: syntax error, unexpected token "="?

    @maksam07
    Что такое <?PHP= ?
    И боги.. атрибуты в одинарные кавычки?
    Ответ написан
    4 комментария
  • Как сделать воспроизводство рандомного звука в рандомный момент?

    freeExec
    @freeExec
    Участник OpenStreetMap
    UnityEngine.Random.Range
    Сначала для времени, потом для аудиофайла
    Ответ написан
    Комментировать
  • Как перечислить все классы, реализованные через некоторый интерфейс?

    @michadimin Автор вопроса
    Спустя немного времени - нашёл такое решение

    public static IEnumerable<Type> GetInterfaceTypes<T>()
        {
            var type = typeof(T);
            var types = AppDomain.CurrentDomain.GetAssemblies()
                .SelectMany(s => s.GetTypes())
                .Where(p => type.IsAssignableFrom(p));
    
            return types;
        }


    Если вы простой обыватель и отчаянно ищите способа быстрее решить проблему, то вот пример использования:
    interface ITest1
    {
    
    }
    
    interface ITest2 : ITest1
    {
    
    }
    
    interface ITest3 : ITest2
    {
    
    }
    
    class TestClass1
    {
    
    }
    
    class TestClass2 : TestClass1
    {
    
    }
    
    static class Extensions
    {
        public static IEnumerable<Type> GetInheritedTypes<T>()
        {
            var type = typeof(T);
            var types = AppDomain.CurrentDomain.GetAssemblies()
                .SelectMany(s => s.GetTypes())
                .Where(p => type.IsAssignableFrom(p));
    
            return types;
        }
    }
    
    class Prog
    {
        public static void Main()
        {
            foreach (var i in Extensions.GetInheritedTypes<TestClass1>()) //В треугольных скобочках указывается тип, наледников которого вы хотите получить
                Console.WriteLine(i);
        }
    }
    Ответ написан
    2 комментария
  • Обработка не системной клавиши по коду в С#?

    Viji
    @Viji
    Associate DevOps Engineer
    Комментировать
  • Какой Фреймворк выбьрать и как лучше реализовать?

    ThunderCat
    @ThunderCat Куратор тега Веб-разработка
    {PHP, MySql, HTML, JS, CSS} developer
    На каком Фреймворки такое сделать, кто что посоветует с чем работать и как начать?
    Вообще пофиг, любой подойдет, такое можно и на голом пхп или питоне накалякать (да и не только на них).

    так-же, где хранить эти сылкис (имя/фирма) использовать для этого БД или какой-то есть другой способ?
    Можно в бд, есть и другие способы, например в файлах, если операция разовая - можно в памяти (редис, мемкэш), можно что-то типа как описал Владимир Коротенко, почему нет...
    Ответ написан
    Комментировать
  • Почему скрипт не хочет работать с математикой?

    GavriKos
    @GavriKos
    Ну скорее всего банально не заходит во внутрь if-а.
    И 99% что ошибка в проверках на налл - зачем они? Это проверка на пустую строку? Тогда лучше IsNullOrEmpty использовать
    Ответ написан
    4 комментария
  • Как запретить менять размер консоли в c#?

    vabka
    @vabka Куратор тега C#
    Токсичный шарпист
    Никак нельзя, тк ты не можешь гарантировать, в какой именно консоли у тебя запустится приложение.
    - Оно может быть запущено в стандартной консоли windows.
    - В Windows Terminal.
    - В ConEmu.
    - На линуксе в любом многообразии ихних терминалов.
    - Может быть запущено по SSH или вообще без рабочего стола.
    - Вообще без терминала, как часть пайпа или сервис

    Если тебе очень важно, чтобы твоё приложение выглядело как консольное, но при этом запускалось в окне фиксированного размера - делай оконное приложение, в котором бы выводился текст в нужном стиле.
    Ответ написан
    3 комментария
  • Как вывести html в .innerHTML с переносами?

    По идеи должно сработать в обратных кавычках`
    let appendEventBlock = `
        <a href="${eventDetailsUlr}" style="font-size: 16px; color: blue">${scheduledDate}</a>
        <br />
        <span>@localizator["Executor"]: ${event.executor.firstName} ${event.executor.lastName}</span>
        <span class="text-muted text-break">@localizator["Note"]: ${event.note}</span>
    `;
    document.getElementById(appendEventContainer).innerHTML += appendEventBlock;
    Ответ написан
    6 комментариев
  • Как правильней хранить и обновлять JWT для аутентификации?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Каждый JWT-токен это три блока - заголовок, полезная нагрузка и подпись. В заголовке хранится информация о самом токене (срок жизни, алгоритм подписи). Полезная нагрузка - информация приложения. Подпись - зашифрованный хэш первых двух частей. В распределённых системах выдавать токен может сервер авторизации, а использовать любой другой сервер. В таком случае подпись может быть асимметричной, закрытый ключ для подписания, открытый для проверки.

    Токены выдаются парой, рабочий + обновления.

    Рабочий токен выдаётся на короткое время (минуты - десятки минут). Внутри содержится срок окончания действия токена, идентификатор пользователя, его права, какая-то информация для минимизации обращений к БД по данному пользователю. Токен на сервере не сохраняется.

    Токен обновления выдаётся на длительное время (часы - дни). Внутри содержится срок окончания действия токена и идентификатор пользователя для автоматической аутентификации. Токен обновления (или его идентификатор, если он есть в токене) хранится в БД вместе с идентификатором пользователя.

    1. Клиент аутентифицируется/авторизуется на сервере со своим логином/паролем.
    2. Сервер генерирует пару токенов, короткоживущий рабочий и долгоживущий для обновления. Токен обновления записывается в БД.
    3. Клиент присылает запрос с рабочим токеном.
    4. Сервер проверяет токен.
    4а. Токен действительный и неистекший, сервер отвечает на запрос.
    4б. Токен действительный, но истекший, сервер сообщает о необходимости обновления токена.
    4в. Токен недействительный, сервер сообщает о необходимости входа по логину/паролю (на п.1).
    5. Клиент присылает токен обновления.
    6. Сервер проверяет токен, в том числе и в БД.
    6а. Токен обновления недействительный, сервер сообщает о необходимости входа по логину/паролю (на п.1).
    6б. Токен обновления действительный, но в БД отсутствует, сервер удаляет все токены обновления этого пользователя из БД и сообщает о необходимости входа по логину/паролю (на п.1).
    6в. Токен обновления действительный, но просроченный, сервер удаляет этот токен из БД и сообщает о необходимости входа по логину/паролю (на п.1).
    6г. Токен обновления действительный, непросроченный, в БД присутствует. Сервер удаляет этот токен из БД, генерирует новую пару, записывает новый токен обновления в БД и отправляет токены клиенту (на п.3).
    Ответ написан
    Комментировать
  • Есть ли возможность скачать с сайта учебную информацию в формате SCORM (Moodle)?

    TosterModerator
    @TosterModerator
    Модератор Хабр Q&A
    Коротко говоря - легально без разрешения хозяев сервера никак.
    Нелегально - это не тут надо выяснять. Тут поиск нелегальных вариантов запрещен.
    Ответ написан
    Комментировать
  • Как создать свой домен?

    CityCat4
    @CityCat4
    Внимание! Изменился адрес почты!
    Идете на сайт ICANN
    Подаете заявку на новый TLD
    Платите бабки, много бабок, очень много бабок. Зеленых, ессно.
    Ведете переписку, очень много деловой переписки. На языке оригинала, ессно
    Создаете необходимую инфраструктуру - Вы должны где-то хранить данные о зоне

    ПРОФИТ! (Ну, может быть...)
    Ответ написан
    Комментировать
  • Как создать свой домен?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    ICANN периодически проводит рассмотрение заявок на регистрацию доменов верхнего уровня. Стоимость такого домена порядка $200000 плюс отчисления от продаж поддоменов. Кроме этого вы должны создать и поддерживать инфраструктуру для обслуживания домена.
    Ответ написан
    3 комментария
  • Как сделать систему авторизации с помощью php?

    Denkuwus
    @Denkuwus
    15 y.o
    Тут mysqli_query() вызывается только с одним параметром, но ожидает как минимум два параметра. Для функции mysqli_query() надо подключения к серверу MySQL в качестве первого параметра и строки запроса в качестве второго параметра.
    Нужно передать соединение с сервером MySQL в качестве первого параметра функции mysqli_query(). Можно использовать переменную $mysqli для получения соединения:

    $result = mysqli_query($mysqli, "SELECT * FROM `user` WHERE `login` = '$login' OR `mail` = '$email'");
    Ответ написан
    Комментировать
  • Почему выдает ошибку?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Скорее всего на хостинге отключены short tags. Используйте нормальную нотацию <?php.
    Ответ написан
    3 комментария
  • Как починить разъем питания смарт часов?

    gbg
    @gbg Куратор тега Электроника
    Любые ответы на любые вопросы
    Место отвала не в фокусе.Нужно найти электросхему платы, какие дорожки шли на этот пятак - и все эти дорожки восстановить.
    Ответ написан
    1 комментарий