比较两个文本框的值,并在asp.net的会话中验证它们

时间:2016-09-02 05:58:11

标签: javascript c# jquery asp.net

我编写代码以在页面加载时生成验证码。这是代码。

 protected void Page_Load(object sender, EventArgs e)
{


        Bitmap objBMP = new System.Drawing.Bitmap(60, 20);
        Graphics objGraphics = System.Drawing.Graphics.FromImage(objBMP);
        objGraphics.Clear(Color.Green);
        objGraphics.TextRenderingHint = TextRenderingHint.AntiAlias;
        Font objFont = new Font("Arial", 10, FontStyle.Italic);
        string randomStr = "";
        int[] myIntArray = new int[5];
        int x;
        Random autoRand = new Random();
        for (x = 0; x < 5; x++)
        {

            myIntArray[x] = System.Convert.ToInt32(autoRand.Next(0, 9));
            randomStr += (myIntArray[x].ToString());

        }
        Session.Add("randomStr", randomStr);
        objGraphics.RotateTransform(-7F);
        objGraphics.DrawString(randomStr, objFont, Brushes.White, 3, 3);
        Response.ContentType = "image/Gif";
        objBMP.Save(Response.OutputStream, ImageFormat.Gif);
        objFont.Dispose();
        objGraphics.Dispose();
        objBMP.Dispose();

}

现在我想在输入值和生成的验证码之间进行验证。就像

一样
if (Page.IsValid && (txtInput.Text.ToString() == Session["randomStr"].ToString()))

这里我使用了四个文本框保存了query.of用户。

 public static string SaveEnquiry(string name, string email, string contact, string comments, string Company, string items, string ip,string captcha)
{
    string StrReturn = "";
    try
    {
        UserContactUs objUserContactUs = new UserContactUs();
        string userCmt = "User Comment:" + comments; ;
        int result = objUserContactUs.insertContactUs(name, contact, email, userCmt, GetUser_IP());
        if (result > 0)
        {
            string mesageRec = name + " has enquired for " + ". Contact : " + contact + ", Email: " + email+ ". His Cmt: " + comments ;
            //SendSMSToAdmin(mesageRec);
            //SendSMSToUser(contact.TrimStart('0'));
            StrReturn = "1#Thanks, for your interest.We will get back to you soon";


        }
        else
        {
            StrReturn = "0#Your enquiry is not saved. Please try Again!";
        }
    }
    catch (Exception ex)
    {
        StrReturn = "0#" + ex.Message;
    }
    return StrReturn;
}

现在我想要的是,如果两个字段(即验证码图像和输入文本框)不相等,则通过显示消息无效验证码来刷新验证码图像。

这是我的联系表格。

<div class="col-sm-2">
                    <img height="50" id="EnquiryCaptcha" alt="" style="border:inset;" src="InsertEnquiry.aspx" width="130">
                </div>
                <div class="col-sm-15">
                    <input type="text" name="txtInput" id="txtInput" placeholder="Captcha*" style="margin-top:auto; border:groove;">
                </div>
                <!--end-->
                <button class="border-button " data-animation="fadeInUp" data-animation-delay="1000" type="button" id="btnsubmit" onclick="InsertEnquiry('contactForm')" name="submit">Send Message</button>

0 个答案:

没有答案