Подтвердить действие на странице как это сделать
Перейти к содержимому

Подтвердить действие на странице как это сделать

  • автор:

Почему браузер просит подтвердить действие на странице, как это убрать?

Почему браузер просит подтвердить действие на странице и как это убрать или исправить?

комментировать
в избранное
Валер­ ий 0053 [14.6K]
4 года назад

Это никак не убрать. Просто смиритесь с этим. Сейчас так делают, чтоб за вас не кликал робот на сайте, где зарабатывают на кликах. Другие сайты тоже могут требовать, такие действия для подтверждения. Это делается тоже для подтверждения, что вы не робот(не бот), чтобы считать количество посетителей, так как многие сайты зарабатывают на размещении рекламы от рекламодателя. То есть, другими словами сказать, — вы, зарабатываете сайту разместившему рекламу деньги, а в замен либо смотрите за подтверждённое действие, либо при неподтверждении не смотрите. Он(сайт) вас просто не пускает.

модератор выбрал этот ответ лучшим
в избранное ссылка отблагодарить
Cortezz [2.6K]

Может быть и так. Но на одном форуме я из-за этого бага не могу цитировать сообщения пользователей. Выделяю нужный текст, нажимаю ссылку «цитата», и тут же выскакивает окно с сообщением «подтвердить действие на странице». И как нажму ОК. — выделенное мною сразу сбрасывается. Так до бесконечности. Писал Админу, но он уверен, что такое быть не должно, и проблема в моём браузере. Я пробовал три хромо-подобных браузера — и везде одно и то же. Не хочется брать огнелиса — он для меня тяжеловесный. И как тут быть — хз. — 4 года назад

комментировать
Алекс­ 98 [60.6K]
2 года назад

Это своеобразный код браузера. У меня браузер тоже требует подтверждение некоторых действий и я просто привык к этому.

Попробуйте установить другой браузер и посмотрите на результат. Запросит ли подтверждение того действия (которое вам нужно) в другом браузере или нет.

В принципе, есть большая вероятность того что разные браузеры работают не одинаково, у меня было пару таких случаев. Так что можно испытать «Оперу» и «Гугл Хром», к примеру. Проверить их на одном и том же действии.

Как безопасно подтвердить выполнение действия на сайте (php, html, js, jquery)?

Есть страница, на которой пользователь должен выполнить определенные действия, для простоты возьмем ожидание таймера, то есть посетитель заходит на страницу и должен пробыть на ней N времени.

После выполнения задания должна появляться кнопка, при нажатии фиксируется в базе, что он выполнил задание.

Если это будет просто hidden кнопка/форма/ссылка, то ее можно выцепить из исходников страницы и обойти выполнение задания.

Как защититься от обходов?

  • Вопрос задан более трёх лет назад
  • 2731 просмотр

Комментировать
Решения вопроса 1

StivinKing

Ivan Stroykin @StivinKing

  • Пользователь зашел на страницу -> сделали запись в БД. К примеру: id пользователя и время
  • Как только пользователь нажал на кнопку делаем запрос к базе и сравниваем: время когда он нажал на кнопку и время из базы (первое минус второе). Если меньше чем нужно, выкидываем ошибку, если больше или ровно то задание выполнено

confirm ( )

Функция придёт на помощь когда лень делать красивое модальное окно.

Время чтения: меньше 5 мин

Открыть/закрыть навигацию по статье
Контрибьюторы:

  • Николай Лопин ,
  • Светлана Коробцева

Обновлено 10 апреля 2024

Кратко

Скопировать ссылку «Кратко» Скопировано

При помощи функции confirm ( ) можно вывести на экран пользователя модальное окно с текстом и кнопками «Ок» и «Отмена».

Из-за того, что окно модальное — работа с интерфейсом браузера и страницами будет заблокирована. Это неудобно, плюс может восприниматься пользователем как попытка ограничивать его свободу. Модальное окно для пользователя — окно, которое блокирует работу пользователя с браузером до тех пор, пока пользователь это окно не закроет.

Пример

Скопировать ссылку «Пример» Скопировано

☝️ Это крайне быстрый вариант кода, который взаимодействует с пользователем, но окно созданное таким образом не изменяется через CSS, а значит, использовать его лучше только для прототипирования интерфейса. В финальном варианте веб-страницы использовать модальное окно нежелательно.

Как пишется

Скопировать ссылку «Как пишется» Скопировано

confirm ( ) принимает один аргумент — это текст, который появится в модальном окне.

Результат работы confirm ( ) можно записать в переменную:

 var answer1 = confirm('Подтвердите удаление') var answer1 = confirm('Подтвердите удаление')      

Если не передать никакие аргументы, то пользователь увидит просто пустое окно с кнопками. Если появление окна следовало из какого-то действия, то пользователь может догадаться, что от него хотят. Но лучше, чтобы текст в модальном окне был написан — не надо бесить пользователей.

Как понять

Скопировать ссылку «Как понять» Скопировано

Аргумент для confirm ( ) должен быть строкой. Если это не так, то JavaScript автоматически приведёт его к строке. Такое поведение не доставляет проблем, пока аргумент является примитивом или встроенным типом, имеющим правила приведения к строке. Если же в функцию передать объект, то получится непонятно:

 confirm('Подтвердите переход на страницу')// Текст: 'Подтвердите переход на страницу' confirm(< message: 'Подтвердите переход' >)// '[object Object]' confirm('Подтвердите переход на страницу') // Текст: 'Подтвердите переход на страницу' confirm( message: 'Подтвердите переход' >) // '[object Object]'      

Результат вызова confirm ( ) — булево значение: true если нажать «Окей» и false если нажать «Отмена».

 var result = confirm('Удалить элемент?') if (result)  alert('Элемент удалён!')> else  alert('Операция прервана')> var result = confirm('Удалить элемент?') if (result)  alert('Элемент удалён!') > else  alert('Операция прервана') >      

На практике

Скопировать ссылку «На практике» Скопировано

Дока Дог советует

Скопировать ссылку «Дока Дог советует» Скопировано

�� Пример использования confirm ( ) с самостоятельно созданным диалоговым окном:

Как сделать окно подтверждения действия формы

В SaveItem SELECT 1 указываем поле Confirm — JSON с полями text, title, btnText, confirmCode, system (bit). Если он задан, то выводится окно подтверждения операции.

При подтверждении действия передается дополнительное поле Value2 в @parameters Key=confirmCode. По нему определяем, что подтвердил пользователь и выполняем действие.

CREATE PROCEDURE [dbo].[fm_watch_formConfirm_saveItem] @username nvarchar(256), @itemID int, @parameters ExtendedDictionaryParameter readonly -- необходимо обязательно перечислить все поля в форме (@fieldcode и т.д.) AS BEGIN declare @confirmCode nvarchar(128) select @confirmCode = Value2 from @parameters where [Key]='confirmCode' declare @check bit = 0 -- если 0 то значит выдаем окно подтверждения действия if(@check = 0 and isnull(@confirmCode, '')='') begin select 1 Result, ' Проверка. ' Msg, '' Confirm return end if(@confirmCode = 'code1') begin select 1 Result, 'Сохранено по подтверждению '+ @confirmCode Msg end -- 1 SELECT (Result, Msg) select 1 Result, 'Сохранено' Msg END

Если system = true, то будет использован системный confirm, а не диалоговое окно. Это актуально для случая модальной формы (иначе confirm просто закроет основную форму).

Falcon Space — функциональная веб-платформа разработки на узком стеке MS SQL/Bootstrap. Вводная по Falcon Space

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *