Ben düzgün PHP.js strpbrk işlevini kullanıyor muyum?

1 Cevap php

Aşağıdaki JS işlevi vardır:

function validatePass()
{
	var oldPass = document.getElementById("oldpass").value;
	var newPass1 = document.getElementById("newpass1").value;
	var newPass2 = document.getElementById("newpass2").value;
	if(strpbrk(newPass1,"abcdefghijklmnopqrstuvwxyz") != false)
	{
		document.getElementById("ContainsAtLeastOneLowercaseLetter").innerHTML = "<span id=\"green\">Met</span>";
	}
	else
	{
		document.getElementById("ContainsAtLeastOneLowercaseLetter").innerHTML = "<span id=\"red\">Not Met</span>";
	}
	if(strpbrk(newPass1,"ABCDEFGHIJKLMNOPQRSTUVWXYZ") != false)
	{
		document.getElementById("ContainsAtLeastOneUppercaseLetter").innerHTML = "<span id=\"green\">Met</span>";
	}
	else
	{
		document.getElementById("ContainsAtLeastOneUppercaseLetter").innerHTML = "<span id=\"red\">Not Met</span>";
	}
	if(strpbrk(newPass1,"1234567890") != false)
	{
		document.getElementById("ContainsAtLeastOneNumber").innerHTML = "<span id=\"green\">Met</span>";
	}
	else
	{
		document.getElementById("ContainsAtLeastOneNumber").innerHTML = "<span id=\"red\">Not Met</span>";
	}
}

NewPass1 kabul edilebilir veriler içeriyorsa, bu kod PHP.js fonksiyonu strpbrk belirlemek için bir çağrı yapar. PHP, strpbrk haystack char_list içinde karakter herhangi içerip içermediğini görmek için arar. Ancak, bu JS uygulanmasında, bu karakterlerin tümünü arar. Nasıl ben istiyorum şekilde davranır yapabilirsiniz?

TIA.

1 Cevap

Ben regex yerine strpbrk kullanarak öneririm.

function validatePass()
{
    var oldPass = document.getElementById("oldpass").value;
    var newPass1 = document.getElementById("newpass1").value;
    var newPass2 = document.getElementById("newpass2").value;
    if(/[a-z]/.test(newpass1))
    {
            document.getElementById("ContainsAtLeastOneLowercaseLetter").innerHTML = "<span id=\"green\">Met</span>";
    }
    else
    {
            document.getElementById("ContainsAtLeastOneLowercaseLetter").innerHTML = "<span id=\"red\">Not Met</span>";
    }
    if(/[A-Z]/.test(newpass1))
    {
            document.getElementById("ContainsAtLeastOneUppercaseLetter").innerHTML = "<span id=\"green\">Met</span>";
    }
    else
    {
            document.getElementById("ContainsAtLeastOneUppercaseLetter").innerHTML = "<span id=\"red\">Not Met</span>";
    }
    if(/[0-9]/.test(newpass1))
    {
            document.getElementById("ContainsAtLeastOneNumber").innerHTML = "<span id=\"green\">Met</span>";
    }
    else
    {
            document.getElementById("ContainsAtLeastOneNumber").innerHTML = "<span id=\"red\">Not Met</span>";
    }
}