Задать вопрос
  • Как отслеживать и выводить обновления базы данных?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Есть ли другие способы как реализовать мою задумку или оптимизировать уже имеющийся?

    Да цельный воз и маленькая тележка.

    Обычно у каждой записи в БД имеется поле, в котором регистрируется штамп времени создания и/или последнего обновления записи. Так что всего и делов - запомнить, когда последний раз обращались к БД, и в следующий раз запросить те записи, что изменены позже. MySQL позволяет получать штамп времени с точностью до микросекунды.

    Или уж совсем по-простому. В каждой таблице держим синтетический первичный ключ-автоинкремент, и по аналогичной схеме запоминаем, каким было максимальное значение при предыдущем обращении.
    Ответ написан
    Комментировать
  • Как отслеживать и выводить обновления базы данных?

    AshBlade
    @AshBlade Куратор тега C#
    Просто хочу быть счастливым
    1. Здесь, скорее всего нужны триггеры. На SO есть похожий вопрос - https://stackoverflow.com/questions/26418412/how-t...
    2. В данном случае, тебе нужно использовать больше чем 1 СУБД. Предлагаю такой вариант:
    - MySQL - для хранения всех сообщений
    - Redis - для очереди событий

    Алгоритм такой:
    1. Кто-то отправляет сообщение
    2. Сохраняешь сообщение в БД
    3. Публикуешь событие "сообщение добавлено"
    4. Все подписавшиеся отправляют это сообщение своим клиентам

    Получение истории - при первом подключении (это уже SELECT)

    Т.е. тут без активного опроса.
    P.S. если сервер только 1, то и какая-нибудь inmemory очередь сообщений сойдет.

    3. SignalR твою проблему не решит - это просто фреймворк поверх вебсокета (рекомендую использовать его, т.к. облегчает многие задачи). Твоя проблема кроется скорее в слое хранения, т.к. mysql (как и любая другая реляционная СУБД) плохо заточена под event-driven архитектуру, скорее запрос-ответ.
    Ответ написан
    1 комментарий
  • Как вывести ссылку в переменную asp dot net core?

    @Voland69
    Никаких сторонних библиотек не нужно, надо достать HttpRequest из HttpContext, там есть все необходимые свойства.
    Ответ написан
    Комментировать
  • Как вывести ссылку в переменную asp dot net core?

    Текущий url проще через js вывести на фронте. Зачем это делать на стороне бэка?
    Если нужно на стороне бэка узнать, какой адрес запросил клиент, то это в HttpContext можно посмотреть, но ты там не увидишь anchor - та часть, которая после #
    Ответ написан
    Комментировать
  • Как вывести ссылку в переменную asp dot net core?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    Метод расширения GetDisplayUrl() у Request объекта (если это MVC)

    [ApiController]
    [Route("[controller]")]
    public class SampleController : ControllerBase
    {
        [HttpGet("")]
        public IActionResult GetPath()
        {
            return Ok( Request.GetDisplayUrl() );
        }
    }
    Ответ написан
    Комментировать
  • Что я делаю не так в PHPMailer?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    smtp.gmail.com - не работает там по умолчанию старый способ авторизации через плайн текст логина и пароля. Давно не проверял. Может еще остались настройки, чтобы его включить, а может совсем отказались.
    Ответ написан
    Комментировать
  • Что я делаю не так в PHPMailer?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    Комментировать
  • Как убрать кнопку скачать из аудио html?

    black1277
    @black1277
    Вольный стрелок
    Никак нельзя убрать. Это дефолтный интерфейс тега audio, который неизменяем и выглядит по разному в каждом браузере. Единственный способ - написать собственный интерфейс, используя web-audio api
    Ответ написан
    Комментировать
  • Как убрать кнопку скачать из аудио html?

    SlavaMaxwell
    @SlavaMaxwell
    Frontend разработчик
    Вариант наложить на элемент тега audio блочный элемент того же цвета, белого и визуально он будет скрыт
    Ответ написан
    Комментировать
  • Как убрать кнопку скачать из аудио html?

    Okujava-script
    @Okujava-script
    Веб-программист с абсолютным слухом и композитор
    Это реализация скрытия значка звук и меню из трёх точек для Хрома и Оперы с наложением:
    <style>
    .contayner{
    	position: absolute;
    }
    audio{
    	position: absolute;
    	width: 400px;
    }
    #zaslonka{
    	position: absolute;
    	width: 60px;
    	height: 32px;
    	top: 11px;
    	background: rgb(241, 243, 244);
    }
    </style>
    <center>
    <div class=contayner>
    	<audio id=audio src='http://tolmatux.strana.de/audio/sol.mp3' controls></audio>
    	<div id=zaslonka></div>
    </div>
    <script>
    zaslonka.style.left = parseInt(window.getComputedStyle(audio).width) - 73 + 'px';
    </script>

    Но с помощью консоли всё равно можно это обойти и скачать.
    Ответ написан
    Комментировать
  • Почему в таблицу mysql не добавляется форма за смайлами (эмодзи)?

    nefone
    @nefone
    Junior PHP разработчик
    Нужно посмотреть ошибку, которая у вас возникает при выполнения запроса к базе данных.

    Для этого изменить ваш код на этот:
    <?php
    require_once 'connect.php';
    
    $h = $_POST['smail'];
    var_dump($_POST['smail']);
    
    if (!mysqli_query($connect, "INSERT INTO `soobchenie` (`id`, `otpravit`, `nku`, `avu`, `nkchata`, `forma`, `time`, `prosmotr`) VALUES (NULL, '$h', 'g', 'l', 'l', 'l', 'l', 'l')") {
        printf("Ошибка при добавлении в базу данных: %s\n", mysqli_error($connect));
    }
    ?>

    Также следует убедиться, что в файле "connect.php" у вас действительно создается подключение к базе данных.
    Ответ написан
    Комментировать