আমার মনে আছে <input type="password" />
এরকম একটি উপায় দেখে ব্রাউজারটি ব্যবহারকারীকে পাসওয়ার্ড সংরক্ষণ করতে অনুরোধ করবে না । তবে আমি ফাঁকা আঁকছি এইচটিএমএল বৈশিষ্ট্য বা জাভা স্ক্রিপ্টের কিছু কৌশল আছে যা এটি করবে?
আমার মনে আছে <input type="password" />
এরকম একটি উপায় দেখে ব্রাউজারটি ব্যবহারকারীকে পাসওয়ার্ড সংরক্ষণ করতে অনুরোধ করবে না । তবে আমি ফাঁকা আঁকছি এইচটিএমএল বৈশিষ্ট্য বা জাভা স্ক্রিপ্টের কিছু কৌশল আছে যা এটি করবে?
উত্তর:
ব্যবহার করার চেষ্টা করুন autocomplete="off"
। যদিও প্রতিটি ব্রাউজার এটি সমর্থন করে কিনা তা নিশ্চিত নয়। এমএসডিএন ডক্স এখানে ।
সম্পাদনা : দ্রষ্টব্য: বেশিরভাগ ব্রাউজার এই বৈশিষ্ট্যের জন্য সমর্থন বাদ দিয়েছে। দেখুন সব আধুনিক ব্রাউজার সঙ্গে "বন্ধ করুন" সামঞ্জস্যপূর্ণ স্বয়ংসম্পূর্ণ =?
এটি যুক্তিযুক্তভাবে এমন একটি বিষয় যা ওয়েব সাইট ডিজাইনারের চেয়ে ব্যবহারকারীর হাতে ছেড়ে দেওয়া উচিত।
<input type="password" autocomplete="off" />
আমি কেবল এটির হিসাবে যুক্ত করতে চাই আমার মনে হয় এটি খুব বিরক্তিকর এবং কাটিয়ে উঠতে কোনও ঝামেলা। আমি এটি ব্যবহারের বিরুদ্ধে দৃ strongly়ভাবে প্রস্তাব দিচ্ছি কারণ এটি সম্ভবত আপনার ব্যবহারকারীদেরকে আরও বাড়িয়ে তুলবে।
পাসওয়ার্ডগুলি এমআরইউতে ইতিমধ্যে সঞ্চিত নেই এবং সঠিকভাবে কনফিগার করা সর্বজনীন মেশিনগুলি ব্যবহারকারীর নামটিও সংরক্ষণ করবে না।
আমি অন্যভাবে সমাধান করেছি solved আপনি এটি চেষ্টা করতে পারেন।
<input id="passfld" type="text" autocomplete="off" />
<script type="text/javascript">
// Using jQuery
$(function(){
setTimeout(function(){
$("input#passfld").attr("type","password");
},10);
});
// or in pure javascript
window.onload=function(){
setTimeout(function(){
document.getElementById('passfld').type = 'password';
},10);
}
</script>
#অন্য উপায়
<script type="text/javascript">
function setAutoCompleteOFF(tm){
if(typeof tm =="undefined"){tm=10;}
try{
var inputs=$(".auto-complete-off,input[autocomplete=off]");
setTimeout(function(){
inputs.each(function(){
var old_value=$(this).attr("value");
var thisobj=$(this);
setTimeout(function(){
thisobj.removeClass("auto-complete-off").addClass("auto-complete-off-processed");
thisobj.val(old_value);
},tm);
});
},tm);
}catch(e){}
}
$(function(){
setAutoCompleteOFF();
});
</script>
// আপনাকে অ্যাট্রিবিউট স্বতঃপূরণ = "অফ" যুক্ত করতে হবে বা আপনি ইনপুট বাক্সে ক্লাসে আউটো-সম্পূর্ণ-অফ করতে পারেন এবং উপভোগ করতে পারবেন
উদাহরণ:
<input id="passfld" type="password" autocomplete="off" />
OR
<input id="passfld" class="auto-complete-off" type="password" />
আমি নিম্নলিখিতটি চেষ্টা করেছিলাম এবং মনে হয় এটি কোনও ব্রাউজারে কাজ করে:
<input id="passfld" type="text" autocomplete="off" />
<script type="text/javascript">
$(function(){
var passElem = $("input#passfld");
passElem.focus(function() {
passElem.prop("type", "password");
});
});
</script>
টাইমআউট কৌশলগুলি ব্যবহারের চেয়ে এই উপায়টি অনেক বেশি নিরাপদ কারণ এটি গ্যারান্টি দেয় যে ব্যবহারকারী যখন ফোকাস করে তখন ইনপুট ফিল্ডটি পাসওয়ার্ডে আসবে।
সুরক্ষার সমস্যা হিসাবে, পুরো ক্ষেত্রের বিষয়ে সুরক্ষা পরামর্শক আপনাকে যা বলবেন তা এখানে (এটি একটি প্রকৃত স্বাধীন সুরক্ষা নিরীক্ষার থেকে):
এইচটিএমএল স্বতঃপূরণ সক্ষম করা - এইচটিএমএল ফর্মগুলিতে পাসওয়ার্ড ক্ষেত্রগুলি স্বতঃপূরণ সক্ষম করেছে। বেশিরভাগ ব্রাউজারে এইচটিএমএল ফর্মগুলিতে প্রবেশ করা ব্যবহারকারীর শংসাপত্রগুলি মনে রাখার সুবিধা রয়েছে।
আপেক্ষিক ঝুঁকি: কম
প্রভাবিত সিস্টেম / ডিভাইস: ও https: // * ** * *** /
আমি এটির সাথেও একমত যে এটির যে কোনও ক্ষেত্রে সত্যিকারের ব্যক্তিগত ডেটা রয়েছে cover আমি মনে করি যে কোনও ব্যক্তিকে সর্বদা তাদের ক্রেডিট কার্ডের তথ্য, সিভিসি কোড, পাসওয়ার্ড, ব্যবহারকারীর নাম ইত্যাদির জন্য টাইপ করতে বাধ্য করা ঠিক আছে যখনই site সাইটটি সুরক্ষিত রাখতে হবে এমন কোনও কিছুতে অ্যাক্সেস করতে চলেছে [সর্বজনীন বা আইনী আনুগত্যের প্রয়োজনীয়তা]। উদাহরণস্বরূপ: ক্রয় ফর্ম, ব্যাংক / creditণ সাইট, কর সাইট, মেডিক্যাল ডেটা, ফেডারেল, পারমাণবিক, ইত্যাদি - স্ট্যাক ওভারফ্লো বা ফেসবুকের মতো সাইটগুলি নয় ।
অন্যান্য ধরণের সাইটগুলি - যেমন কাজের সময়ে এবং বাইরে কাজ করার জন্য টাইমস্টার অনলাইন - এটি বোকা, যেহেতু আমি সর্বদা কর্মক্ষেত্রে একই পিসি / অ্যাকাউন্ট ব্যবহার করি, যে কারণে আমি সেই সাইটের শংসাপত্রগুলি সংরক্ষণ করতে পারি না - আশ্চর্যজনকভাবে আমি আমার Android এ পারি তবে কোনও আইপ্যাডে নয়। ভাগ করা পিসিগুলি এমনকি খুব খারাপ হবে না যেহেতু অন্য কারও জন্য আটকানো / আউট করা সত্যিই কিছু না করে তবে আপনার সুপারভাইজারকে বিরক্ত করে। (তাদের ভিতরে যেতে হবে এবং ভ্রান্ত পাঞ্চগুলি মুছে ফেলতে হবে - পাবলিক পিসিগুলিতে সংরক্ষণ না করার জন্য কেবল নির্বাচন করুন)।
<input type="password" placeholder="Enter New Password" autocomplete="new-password">
আপনি এখানে যান।
এখানে সেরা উত্তর, এবং সবচেয়ে সহজ! আপনার input
ক্ষেত্রের সামনে একটি অতিরিক্ত পাসওয়ার্ড ক্ষেত্র রাখুন এবং সেট করুন display:none
, যাতে ব্রাউজারটি যখন এটি পূরণ করে, এটি এমন কোনও ক্ষেত্রে কাজ করে input
যা আপনার যত্ন নেই।
এই পরিবর্তন:
<input type="password" name="password" size="25" class="input" id="password" value="">
এটি:
<input type="password" style="display:none;">
<input type="password" name="password" size="25" class="input" id="password" value="">
display:none
আমার পক্ষে কাজ করে না (ক্রোম 61 ওএসএক্স), তবে এটি করে:<input type="password" style="position: absolute; top: -1000px;">
এছাড়াও পড়ুন এই উত্তরটি যেখানে তিনি এই সহজ সমাধান সর্বত্র কাজ করে ব্যবহার করছে (এছাড়াও সাফারি মোবাইলের জন্য ফিক্স দেখুন):
<input type="password" readonly onfocus="this.removeAttribute('readonly');"/>
আপনি JQuery ব্যবহার করতে পারেন, আইডির মাধ্যমে আইটেমটি নির্বাচন করুন:
$("input#Password").attr("autocomplete","off");
বা টাইপ করে আইটেমটি নির্বাচন করুন:
$("input[type='password']").attr("autocomplete","off");
বা এছাড়াও:
আপনি খাঁটি জাভাস্ক্রিপ্ট ব্যবহার করতে পারেন:
document.getElementById('Password').autocomplete = 'off';
আপনি নীচের মত এটি ব্যবহার করতে পারেন
$('#Password').attr("autocomplete", "off");
setTimeout('$("#Password").val("");', 2000);
স্বতঃসিদ্ধ = বন্ধ হিসাবে দেখা হচ্ছে করা হয়েছে, আমি আরও সাম্প্রতিক সমাধানের পরামর্শ দিই।
আপনার পাসওয়ার্ড ক্ষেত্রটিকে একটি সাধারণ পাঠ্য ক্ষেত্রে সেট করুন এবং CSS ব্যবহার করে "ডিস্ক" দিয়ে আপনার ইনপুটটি মাস্ক করুন। কোডটি দেখতে এমন হওয়া উচিত:
<input type="text" class="myPassword" />
input .myPassword{
text-security:disc;
-webkit-text-security:disc;
-mox-text-security:disc;
}
দয়া করে নোট করুন যে এটি ফায়ারফক্স ব্রাউজারগুলিতে প্রপঞ্চভাবে কাজ করতে পারে না এবং একটি অতিরিক্ত ওয়াকারআউন্ডাউন্ড প্রয়োজন needed এটি সম্পর্কে এখানে আরও পড়ুন: https://stackoverflow.com/a/49304708/5477548 ।
সমাধানটি এই লিঙ্কটি থেকে নেওয়া হয়েছিল , তবে এসও "নো-হটলিঙ্কগুলি" মেনে চলার জন্য আমি এটিকে এখানে সংক্ষেপে বলেছি।
বেশিরভাগ প্রধান ব্রাউজারগুলির ক্ষেত্রে, ব্রাউজারটি যেভাবে জমা দেয় তা ভেবে ভ্রান্তকে যেভাবে রূপ দেয় সেগুলির বাইরে কোনও ইনপুট থাকে এবং কোনও ফর্মের সাথে সংযুক্ত না থাকে। এই ক্ষেত্রে, আপনাকে আপনার লগইনের জন্য খাঁটি জেএস বৈধতা ব্যবহার করতে হবে এবং আপনার পাসওয়ার্ডগুলির এনক্রিপশনও প্রয়োজনীয় হবে।
আগে:
<form action="..."><input type="password"/></form>
পরে:
<input type="password"/>
আমি ফায়ারফক্স এবং ক্রোমে নিম্নলিখিত কাজগুলি পেয়েছি।
<form ... > <!-- more stuff -->
<input name="person" type="text" size=30 value="">
<input name="mypswd" type="password" size=6 value="" autocomplete="off">
<input name="userid" type="text" value="security" style="display:none">
<input name="passwd" type="password" value="faker" style="display:none">
<!-- more stuff --> </form>
এগুলি সব ফর্ম বিভাগের মধ্যে রয়েছে। "ব্যক্তি" এবং "মাইপসডব্লুড" আপনি যা চান তা হ'ল তবে ব্রাউজারটি "ইউজারিড" এবং "পাসডাব্লুড" একবারে সংরক্ষণ করবে এবং কখনই পরিবর্তন হয় না। আপনার যদি সত্যিই প্রয়োজন না হয় তবে আপনি "ব্যক্তি" ক্ষেত্রটি সরিয়ে ফেলতে পারেন। সেক্ষেত্রে আপনারা যা চান তা হ'ল "মাইপসডাব্লু" ক্ষেত্র, যা আপনার ওয়েব পৃষ্ঠার ব্যবহারকারীদের জন্য পরিচিত কোনও উপায়ে পরিবর্তন করতে পারে।
স্বয়ংসম্পূর্ণতা বন্ধ করতে আমি ফায়ারফক্স, প্রান্ত এবং ইন্টারনেট এক্সপ্লোরার পেতে পারি তার একমাত্র উপায় হ'ল আমার ফর্ম বিবৃতিতে স্বতঃপূরণ = "মিথ্যা" যুক্ত করা যেমন:
<form action="postingpage.php" autocomplete="false" method="post">
এবং আমাকে আমার ফর্ম ইনপুটটিতে স্বতঃপূরণ = "বন্ধ" যুক্ত করতে হবে এবং পাঠ্যের ধরণটি পছন্দ করতে হবে:
<input type="text" autocomplete="off">
দেখে মনে হচ্ছে এই এইচটিএমএল কোডটি ব্রাউজারগুলির সাথে মানক করা দরকার। ফর্মের ধরন = পাসওয়ার্ডটি সংশোধন করা উচিত যাতে এটি ব্রাউজার সেটিংসকে ওভাররাইড করে। আমার একমাত্র সমস্যা হ'ল আমি আমার ইনপুট মুখোশটি হারিয়েছি। তবে উজ্জ্বল দিক থেকে বিরক্তিকর "এই সাইটটি নিরাপদ নয়" ফায়ার ফক্সে প্রদর্শিত হচ্ছে না।
আমার জন্য, এটি কোনও বড় বিষয় নয় যেহেতু ব্যবহারকারী ইতিমধ্যে প্রমাণীকৃত এবং এটিতে আমার ব্যবহারকারীর নাম এবং পাসওয়ার্ড অংশ