मैं डेटा वैज्ञानिक हूं और एक एमएल मॉडल को वेब एप्लिकेशन के रूप में तैनात करने की आवश्यकता है। मैं इनपुट डेटा प्राप्त करने और लाइव भविष्यवाणी के लिए इसे एमएल मॉडल में पास करने के लिए एचटीएमएल का उपयोग करने के लिए काम कर रहा हूं। इस एमएल मॉडल के लिए इनपुट में से एक 5 अंकों का कोड है। कोड इस सूची [19827, 87198, 18288, ....] में से एक की तरह पूर्वनिर्धारित कोड में से एक होना चाहिए, जिसमें 1000 अद्वितीय मान शामिल हैं। उपयोगकर्ता को ऐसा कोड दर्ज करना चाहिए। मैं उपयोगकर्ता को बताना चाहता हूं कि इनपुट कोड मान्य है या नहीं। मैं निम्नलिखित पंक्ति का उपयोग कर रहा हूं:

<input type="number" name="code" placeholder="code" min="10000" max="99999" step="1" pattern="\d+"/><br>

लेकिन यह इनपुट को उपरोक्त सूची तक सीमित नहीं करता है। उदाहरण के लिए, यदि उपयोगकर्ता 22222 जैसा कोड दर्ज करता है और यदि वह सूची में नहीं है तो वेब ऐप को उपयोगकर्ता को बताना चाहिए कि यह मान्य नहीं है। मैं इसे बहुत ही कुशल और पेशेवर तरीके से कैसे कर सकता हूं?

1
Nimar 30 अक्टूबर 2020, 20:20

2 जवाब

सबसे बढ़िया उत्तर

संपादित करें: विकल्पों को लोड करने के लिए जोड़ा गया जावास्क्रिप्ट।

उपयोगकर्ता इनपुट को सीमित करने के लिए आप डेटालिस्ट का उपयोग कर सकते हैं, जैसे:

<label>Choose an ML code from this list:
<input list="codes" name="myCode" />
</label>
<datalist id="codes"> 
</datalist>

पृष्ठ के लोड होने पर पृष्ठ के <head> भाग में Javascript विकल्प लोड करता है:

<script>
function loadDoc() {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
      myFunction(this);
    }
  };
  xhttp.open("GET", "codes.xml", true);
  xhttp.send();
}
function myFunction(xml) {
  var i;
  var xmlDoc = xml.responseXML;  
  var x = xmlDoc.getElementsByTagName("Code");
  var options = "";
  for (i = 0; i <x.length; i++) { 
    options += '<option value="' +
    x[i].childNodes[0].nodeValue +
    '">';
  }
  document.getElementById("codes").innerHTML = options;
}
document.onload(loadDoc);
</script>

इस उदाहरण में, आपके पास HTML फ़ाइल के समान फ़ोल्डर में एक XML डेटा फ़ाइल होगी। वैकल्पिक रूप से, आप डेटाबेस से कोड लोड कर सकते हैं। ऐसा करने के लिए सी #, पीएचपी, पायथन, आदि जैसी भाषा में लिखे गए कुछ सर्वर-साइड कोड की आवश्यकता होगी।

उदाहरण कोड.एक्सएमएल फ़ाइल:

<?xml version="1.0" encoding="UTF-8"?>
<codes>  
  <code>19827</code>
  <code>87198</code>
  <code>18288</code>
  <code>19555</code>
  <code>21456</code>
  <code>99874</code>
<!-- etc. -->  
</codes>

पहले की तरह, आपको इनपुट को सत्यापित करने के लिए कुछ अतिरिक्त जावास्क्रिप्ट की भी आवश्यकता होगी।

1
RobJarvis 30 अक्टूबर 2020, 21:48

आप इसे HTML के साथ नहीं बना सकते क्योंकि HTML एक मार्कअप भाषा है। आपको इसे PHP या पायथन के साथ बनाना चाहिए। फ्रंटएंड में, आपको इनपुट स्टैटिक बनाना चाहिए और बैकएंड में, आप इसे डायनामिक बना सकते हैं।

पायथन में कोड:

passcodes = ['1234' , '6523' , '8390'] #You can change this.

user_passcode = input("Enter your passcode: ")

if user_passcode in passcodes :
    print("password is true")
else :
    print("password is false")
0
Yasin Ghasemi 30 अक्टूबर 2020, 21:17