Ravi Kant Rajput--From-Kanpur Ответов: 2

Как запретить пользователю изменять значение html textbox с помощью инструмента разработчика в браузере


Я хочу форму расчета ящика у меня есть 3 текстовых поля
1 - Количество
2 - ставка
3 - Общая сумма (это текстовое поле доступно только для чтения)
Total Amount = (Quentity * Rate) но после расчета я могу изменить значение TotalAmount с помощью элемента browser inspect.
Поэтому я хочу, чтобы пользователь не мог изменить значение текстового поля, я использую MVC Razor.

aarif moh shaikh

вы можете отключить правый клик браузеров

ZurdoDev

Это не поможет. Пользователь все еще может нажать F12 или использовать другие браузеры.

2 Ответов

Рейтинг:
12

Sisir Patro

Привет,

Вы можете отключить щелчок правой кнопкой мыши и кнопку F12, чтобы предотвратить эту проблему.
Следуйте приведенным ниже ссылкам.

1.) Отключить щелчок правой кнопкой мыши
2.) Отключить кнопку F12

Спасибо,
Сисир Патро


Ravi Kant Rajput--From-Kanpur

Привет,

В Asp.net мы не сталкиваемся с этим типом проблем, но в настоящее время я переключаюсь в mvc razor мы сталкиваемся с большим количеством проблем безопасности в mvc . пожалуйста, предложите мне, что я хочу создать простую форму расчета с помощью бритвы.

[no name]

Насчет бритвы я не уверен. Если вы справитесь с этим с помощью javascript или jquery, я думаю, что это будет работать для всех.

Ravi Kant Rajput--From-Kanpur

Благодарю Вас Сэр

[no name]

Добро пожаловать, дорогая... :)

Richard Deeming

Отключение контекстного меню и клавиши F12 никому не помешает пользоваться инструментами разработчика!

Во-первых, есть и другие комбинации клавиш для вызова инструментов. Например, в Firefox, Ctrl+Сдвиг+К

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

[no name]

Да, я согласен. Мы должны позаботиться обо всех возможных комбинациях в коде явно. Я уже обновил это для пользователя.

Рейтинг:
0

F-ES Sitecore

Вы не можете остановить людей, использующих инструменты разработки и т. д., решение вашей проблемы заключается в правильном использовании html и http. Если вы хотите, чтобы поле "общая сумма" было тем, которым вы управляете, а не пользователь, то это то, что вы делаете. Покажите его в виде метки или текста, а не текстового поля. В ваших действиях формы, когда вы хотите получить общую сумму, вы вычисляете ее из суммы * количества.


Ravi Kant Rajput--From-Kanpur

Спасибо за ответ

Но я хочу вычислить значение по событию изменения текстового поля и по щелчку кнопки отправки мы хотим сохранить его в базе данных

F-ES Sitecore

You can re-calculate on the change events of the textbox if you want, but update the html of the label rather than the value of a textbox. The value you actually use should be calculated from the quantity and amount, and you shouldn't represent the amount as a textbox either. You should be submitting a quantity (textbox), a product ID (or whatever it is you're adding) and in your action you get the amount from the ID and multiply that by the given quantity and that is your total. Never trust data that comes from the client....that is how you secure your site. Not by disabling F12 or right-clicks or by adding reams of javascript that hackers will disable anyway.

Richard Deeming

+50 за это! :)