Задать вопрос
Профиль пользователя заблокирован сроком с 24 марта 2024 г. и навсегда по причине: систематические нарушения пункта 5.2 правил сервиса
  • Как сделать функцию ping?

    @My1Name Автор вопроса
    Что вы скажите по поводу EventSource? - Я в итоге сделал через этот интерфейс, однако, не знаю как это скажется на производительности... Каждые 10 сек. обновляется поле "date" в БД.
    Написано
  • Как удалить запись в таблице MySQL по трём параметрам?

    @My1Name Автор вопроса
    Ипатьев,
    Как я писал выше, ответ с использованием суррогатного ключа не существует

    Почему INSERT IGNORE по UNIQUE INDEX работает без проблем? Оно же делает фактически тоже самое...

    В крайнем случае, создают дополнительное поле, которое содержит комбинированную информацию по нескольким полям ("суррогатный ключ"). И тогда это поле может выступать как PRIMARY KEY. Однако, мне этот вариант не очень нравится... Ключ под это поле нужно как-то сжимать. И я думаю MySQL это знает лучше меня.

    Например, если у меня два поля типа INT (long) а третье CHAR, то чтоб их скомбинировать (тупо) нужно создать поле VARCHAR как минимум в три раза больше :/
    Написано
  • Как удалить запись в таблице MySQL по трём параметрам?

    @My1Name Автор вопроса
    Vitsliputsli,
    Первичный ключ есть всегда

    Что вы подразумеваете под первичным ключом?
    Говорите пожалуйста языком программирования. Я сам философ не хуже вас... Вы имеете ввиду PRIMARY KEY, UNIQUE KEY или что вы подразумеваете?
    Написано
  • Как сделать функцию ping?

    @My1Name Автор вопроса
    Я в начале так и сделал :) А точней - наоборот: Клиент что либо делает и сообщает "I'm alive". Если в течение 10 мин. ничего не сказал, значит offline.

    SetTimeout, думаю будет более правильное решение.
    Написано
  • Как сделать функцию ping?

    @My1Name Автор вопроса
    Спасибо.
    Написано
  • Как удалить запись в таблице MySQL по трём параметрам?

    @My1Name Автор вопроса
    Ипатьев, правильный ответ, а точней ход мыслей, написал Everything_is_bad. Но, ответ с использованием суррогатного ключа - он (или она) так и не написал.
    Написано
  • Как удалить запись в таблице MySQL по трём параметрам?

    @My1Name Автор вопроса
    Vitsliputsli,
    Тогда обращайтесь к этой записи по primary key

    нету primary key в этой таблице. Есть дубликаты...

    не выдумывайте искусственных проблем, постройте обычную БД в соответствии с реляционной теорией

    Это вы выдумываете.

    Либо суррогатный ключ, как уже предлагали


    Ваши предложения остались в рамках вашей теории. К данному вопросу нет ни одного ответа.
    Написано
  • Как удалить запись в таблице MySQL по трём параметрам?

    @My1Name Автор вопроса
    Vitsliputsli, Проектируется большая БД (в теори, высоконагруженная частотой запросов) с множеством разных таблиц. Необходимо оптимизировать скорость доступа к одной записи.
    Написано
  • Как удалить запись в таблице MySQL по трём параметрам?

    @My1Name Автор вопроса
    Akina,
    Удалять по ключу - несуществующее понятие.

    но ведь MySQL создаёт ещё одно поле, если мы создаём UNIQUE KEY... К нему можно как-то обратиться? Типа:
    DELETE FROM table WHERE key VALUES(col1, col2, col3)
    ??
    Написано
  • Как удалить запись в таблице MySQL по трём параметрам?

    @My1Name Автор вопроса
    Ипатьев, как сгруппировать три параметра в один UNIQUE KEY и потом удалять по этому ключу ?
    Написано
  • Как удалить запись в таблице MySQL по трём параметрам?

    @My1Name Автор вопроса
    Everything_is_bad,
    ORDER BY type=val_3

    что это значит?

    Сортировать по "type"
    Написано
  • Как удалить запись в таблице MySQL по трём параметрам?

    @My1Name Автор вопроса
    Everything_is_bad,
    UNIQUE INDEX key (col1, col2, col3)
    Как написать запрос на удаление?)
    Написано
  • Есть ли программа для поиска по словам в файлах сайта?

    @My1Name
    Поисковый червь. Он обходит сайт по ссылкам или инструкциям в robots.txt / sitemap.xml

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

    @My1Name Автор вопроса
    Спасибо! Это как-раз то, что я хотел узнать.
    Написано
  • Как заменить все ссылки в тексте?

    @My1Name Автор вопроса
    Спасибо.
    Jsoup - достаточно большая библиотека. Не хочется добавлять её в проект из-за таких банальностей... Я немного оптимизировал и убрал лишнее в том, что тут написал, и остановился на этом.
    Написано
  • Как инициализировать функцию event внутри функции?

    @My1Name Автор вопроса
    ProjectSoft,
    С делегированием просто ищете блок родитель от кнопки и передаёте его

    Это конечно здорово, если это одна ветка комментариев. А если есть ответвления "ответ к комментарию", то искать родительский блок уже будет сложнее. Ответы тоже подгружаются... Кроме того, никаких кнопок изначально нет. Есть только блок "комментарии". И даже он появляется по мере загрузки ленты. То есть, этот блок у каждого поста свой.

    onclick="options(this)". Эту функцию просто убрать

    Это усложняет поиск и передачу данных относящихся к конкретному комментарию. В this, кроме опций меню, оборачивается сам комментарий и вся необходимая информация.

    На чистом JS это чуть сложнее, а вот на jQuery это очень просто. Вы же используете jQuery судя по коду?

    Да, я пишу на jQuery. Но от этого ни чуть не легче :)

    Где .block_cmments .edit та самая кнопка на которой у вас висит функция onclick="options(this)"

    Эти блоки грузятся по мере прокручивания ленты. Их нет после события DOMContentLoaded. Однако, эта конструкция:
    $(document).on('click',  '.block_cmments', function(e){
    	e.preventDefault();
    	let obj = e.target;
    	obj.closest(".glyphicon-pencil") && edit(obj);
    	obj.closest(".glyphicon-remove-circle") && remove(obj);
    	obj.closest(".translate") && translate(obj);
    });

    выглядит вполне жизнеспособной... Я её немного подправил под мои нужды и она работает.
    Написано
  • Как инициализировать функцию event внутри функции?

    @My1Name Автор вопроса
    ProjectSoft, красиво, но ведь оно не будет работать до тех пор, пока мы не повесим "слушатель" click на this блок. Если я ошибаюсь, поправьте меня пожалуйста.

    Чтоб было более понятно, речь идёт о системе комментариев в соц.сети.: Вы крутите ленту и прицепить document.addeventlistener на какой-то конкретный блок нельзя (комментарии подгружаются). При этом с каждым блоком нужно как-то взаимодействовать...

    Такое решение:
    const events = $._data($(obj)[0], 'events');
    решает эту проблему. Сначала пользователь "активирует" комментарий/меню, цепляя слушатель на this блок (например, нажимая на выпадающее меню ... ), а со второго клика делает нужные манипуляции. Далее проверяем this if(events==null) "меню активировано или нет?".
    Написано
  • Как сделать кнопку «play» как в YouTube?

    @My1Name Автор вопроса
    Прикольно.
    У меня эта кнопка на столько маленькая и не значительная, что я не стал заморачиваться с закруглениями и сделал её тупо квадратной.

    HTML
    <div class="play play-r">►</div>

    CSS
    .play { 
      background: red;
      border-radius: 4.5px;
      color: #FFFFFF;
      height: 1.6em;
      text-align: center;
      margin-left: 5px;
      margin-top: 3px;
      width: 2.2em;
    }
    .play-r {
      font-size: 7pt;
      opacity: 0.85;
      padding-left: 1px;
      padding-top: 1px;
    }

    Я даже не вынес в отдельный блок - класс play-r со свойством прозрачности для треугольника)) Если честно, то я обратил внимание на выпуклость кнопки только после того, как задал вопрос.
    Написано
  • Как инициализировать функцию event внутри функции?

    @My1Name Автор вопроса
    Нашёл такое вот решение:
    function options(obj){
    const events = $._data($(obj)[0], 'events');
    if(events==null)
    $(obj).click(function (event){
    ....

    работает со второго клика.
    Написано