Showing posts with label JavaScript. Show all posts
Showing posts with label JavaScript. Show all posts

Friday, October 23, 2015

Generate Random Strings Using ASP/VBScript


Generate Random Strings Using ASP/VBScript

This is a simple yet highly customizable function that allows you to generate random strings using VBScript that you can use in your ASP/VBScript applications. The random strings can be used for various purposes, including:

  • Login Systems
    • Random password for new registrations
    • Random password for users requesting password reset
  • Referral Codes
  • Promotional Codes
  • Primary Keys for tables where using integers as primary keys is not desirable

It generates an 8 character long random string that contains 1 digit:

<%
function RandomString()

    Randomize()

    dim CharacterSetArray
    CharacterSetArray = Array(_
        Array(7, "abcdefghijklmnopqrstuvwxyz"), _
        Array(1, "0123456789") _
    )

    dim i
    dim j
    dim Count
    dim Chars
    dim Index
    dim Temp

    for i = 0 to UBound(CharacterSetArray)

        Count = CharacterSetArray(i)(0)
        Chars = CharacterSetArray(i)(1)

        for j = 1 to Count

            Index = Int(Rnd() * Len(Chars)) + 1
            Temp = Temp & Mid(Chars, Index, 1)

        next

    next

    dim TempCopy

    do until Len(Temp) = 0

        Index = Int(Rnd() * Len(Temp)) + 1
        TempCopy = TempCopy & Mid(Temp, Index, 1)
        Temp = Mid(Temp, 1, Index - 1) & Mid(Temp, Index + 1)

    loop

    RandomString = TempCopy

end function
%>
Sample Output
jogwafs2
uuwigi6r
cj3gpdbn
7ifmzdhq
yvceae4x
qm8dxhik
4kyhyevr
evk9hmcb

For better readability and ease of customization, I have split the CharacterSetArray definition on to multiple lines. This code relies on VBScript Arrays and the following functions:

  • Randomize()
  • Rnd()
  • Int()
  • Len()
  • Mid()

Customization

With minor changes to the CharacterSetArray, you can customize the length and characters of the generated strings.

Complex password that contains 1 digit and 1 symbol
<%
function RandomString()

    Randomize()

    dim CharacterSetArray
    CharacterSetArray = Array(_
        Array(6, "abcdefghijklmnopqrstuvwxyz"), _
        Array(1, "0123456789"), _
        Array(1, "!@#$+-*&?:") _
    )

    dim i
    dim j
    dim Count
    dim Chars
    dim Index
    dim Temp

    for i = 0 to UBound(CharacterSetArray)

        Count = CharacterSetArray(i)(0)
        Chars = CharacterSetArray(i)(1)

        for j = 1 to Count

            Index = Int(Rnd() * Len(Chars)) + 1
            Temp = Temp & Mid(Chars, Index, 1)

        next

    next

    dim TempCopy

    do until Len(Temp) = 0

        Index = Int(Rnd() * Len(Temp)) + 1
        TempCopy = TempCopy & Mid(Temp, Index, 1)
        Temp = Mid(Temp, 1, Index - 1) & Mid(Temp, Index + 1)

    loop

    RandomString = TempCopy

end function
%>
Sample Output
zb5&bxjr
pd$8lrlu
yljmoq:5
$xsaxc6r
sf!n3mho
tpg+t4pr
@zykc1pb
ln3ep-vk

Even more complex password that contains 1 upper-case character, 1 digit and 1 symbol

<%
function RandomString()

    Randomize()

    dim CharacterSetArray
    CharacterSetArray = Array(_
        Array(5, "abcdefghijklmnopqrstuvwxyz"), _
        Array(1, "ABCDEFGHIJKLMNOPQRSTUVWXYZ"), _
        Array(1, "0123456789"), _
        Array(1, "!@#$+-*&?:") _
    )

    dim i
    dim j
    dim Count
    dim Chars
    dim Index
    dim Temp

    for i = 0 to UBound(CharacterSetArray)

        Count = CharacterSetArray(i)(0)
        Chars = CharacterSetArray(i)(1)

        for j = 1 to Count

            Index = Int(Rnd() * Len(Chars)) + 1
            Temp = Temp & Mid(Chars, Index, 1)

        next

    next

    dim TempCopy

    do until Len(Temp) = 0

        Index = Int(Rnd() * Len(Temp)) + 1
        TempCopy = TempCopy & Mid(Temp, Index, 1)
        Temp = Mid(Temp, 1, Index - 1) & Mid(Temp, Index + 1)

    loop

    RandomString = TempCopy

end function
%>
Sample Output
cg9hm$Yy
Mmp&j1kp
kipww7H+
?oVjny9b
Qjq5lgi-
sd:7Elnp
*kaxgl4Z
xqjc5jN!

Referral code containing mix of digits and upper-case characters

<%
function RandomString()

    Randomize()

    dim CharacterSetArray
    CharacterSetArray = Array(_
        Array(4, "ABCDEFGHIJKLMNOPQRSTUVWXYZ"), _
        Array(4, "0123456789") _
    )

    dim i
    dim j
    dim Count
    dim Chars
    dim Index
    dim Temp

    for i = 0 to UBound(CharacterSetArray)

        Count = CharacterSetArray(i)(0)
        Chars = CharacterSetArray(i)(1)

        for j = 1 to Count

            Index = Int(Rnd() * Len(Chars)) + 1
            Temp = Temp & Mid(Chars, Index, 1)

        next

    next

    dim TempCopy

    do until Len(Temp) = 0

        Index = Int(Rnd() * Len(Temp)) + 1
        TempCopy = TempCopy & Mid(Temp, Index, 1)
        Temp = Mid(Temp, 1, Index - 1) & Mid(Temp, Index + 1)

    loop

    RandomString = TempCopy

end function
%>
Sample Output
9HL284CB
OTH357O8
DY6W32J0
4KI134MJ
QP190HE9
KDU35A67
PY03F3S2
3EBV871R

Wednesday, February 18, 2015

Stylish Multiple Checkbox Select/Deselect Using JQuery

Almost all the user interfaces that I have created had this functionality of selecting multiple items from a list to process them or delete them. Although its very very easy to implement this functionality in Javascript, using jQuery for this is real fun. I will show you a simple implementation of adding multiple checkbox select and deselect functionality to any webpage. We will have a table with some data in it and checkbox in each row. There will be a select all checkbox in the header of the table. If user select/deselect the selectall checkbox, all the checkbox in table will get selected or deselected accordingly. Now one more thing we would like here to add is, suppose user select all the checkbox one by one then the selectall checkbox should be automatically gets selected. And if user click selectall first and then unchecks any of the checkbox, then the selectall also should be unchecked automatically.


Files to Add



 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="http://fronteed.com/iCheck/icheck.js"></script>
<link href="http://fronteed.com/iCheck/skins/square/green.css" rel="stylesheet">
     

CODE:




refer for more detail: http://fronteed.com/iCheck/


Monday, January 12, 2015

Check Special Character in File folder name using regular expression


In Javascript:

function checkFolderName(str) {
    strreg = /^[\w\-]+$/
    var strregx = new RegExp(strreg);
    if (strregx.test(str)) {
        //alert("OK")
        return false
    }
    else {
        //alert("Not OK")
        return true
    }
}

function checkFileName(str) {
    var name = str.substr(0, str.lastIndexOf('.'));
    var ext = str.substr(str.lastIndexOf('.') + 1);
    ext = ext.toLowerCase();
    //alert(name);
    //alert(ext);
    strreg = /^(?!.*  )(?!.*__)(?!.*--)[\w -]+$/    //Check alphanumeric with underscore and Hyphan and two consecutive spaces,underscore,hyphen
    //strreg = /^[a-zA-Z0-9_\-]+$/          //Check alphanumeric with underscore and Hyphen
    var strregx = new RegExp(strreg);
    if ((strregx.test(name)) && (ext != "asp") && (ext != "aspx") && (ext != "dll") && (ext != "cmd") && (ext != "bat") && (ext != "exe")) {
        //alert("OK")
        return false
    }
    else {
        //alert("Not OK")
        return true
    }
}
//-->

How To use function:

if(checkFolderName(document.getElementById("abc").value))
{
    alert("Please don't use special char in Foldername.")
}

if(checkFileName(document.getElementById("abc").value))
{
    alert("Please don't use special char in File Name.")
}

</SCRIPT>

In VBScript
<%

function checkFoldername(Foldername)
    dim RegularExpressionObject: Set RegularExpressionObject = New RegExp
    dim matches: matches=""
    RegularExpressionObject.Pattern = "^[\w\-]+$"
    matches = RegularExpressionObject.Test(Foldername)
    checkFoldername = matches
    set RegularExpressionObject = nothing
end function
function checkFilename(Filename)
    arrFname = split(Filename,".")
    strExtNum = ubound(arrFname)
    strExt = lcase(arrFname(strExtNum))
 
    for i = 0 to ubound(arrFname)-1
        if strfilename = "" then
            strfilename = arrFname(i)
        else
            strfilename = strfilename&"."&arrFname(i)
        end if
    next
    strOK = false
    dim RegularExpressionObject: Set RegularExpressionObject = New RegExp
    dim matches: matches=""
    'RegularExpressionObject.Pattern = "^[\w\-]+$"
    RegularExpressionObject.Pattern = "^(?!.*  )(?!.*__)(?!.*--)[\w -]+$"
    matches = RegularExpressionObject.Test(strfilename)
    if matches and strExt<>"asp"  and strExt<>"aspx" and strExt<>"dll" and strExt<>"cmd" and strExt<>"bat" and strExt<>"exe" then
        strOK = true
    else
        strOK = false
    end if
    checkFilename = strOK
    set RegularExpressionObject = nothing
end function

function checkUploadFilename(Filename)
    arrFnameS = split(Filename,"\")
    strfnameNum = ubound(arrFnameS)
    arrFname = split(arrFnameS(strfnameNum),".")
    strExtNum = ubound(arrFname)
    strExt = lcase(arrFname(strExtNum))
 
    for i = 0 to ubound(arrFname)-1
        if strfilename = "" then
            strfilename = arrFname(i)
        else
            strfilename = strfilename&"."&arrFname(i)
        end if
    next
    strOK = false
    dim RegularExpressionObject: Set RegularExpressionObject = New RegExp
    dim matches: matches=""
    'RegularExpressionObject.Pattern = "^[\w\-]+$"
    RegularExpressionObject.Pattern = "^(?!.*  )(?!.*__)(?!.*--)[\w -]+$"
    matches = RegularExpressionObject.Test(strfilename)
    if matches and strExt<>"asp"  and strExt<>"aspx" and strExt<>"dll" and strExt<>"cmd" and strExt<>"bat" and strExt<>"exe" then
        strOK = false
    else
        strOK = true
    end if
    checkUploadFilename = strOK
    set RegularExpressionObject = nothing
end function

%>