5
Answers

problem with CaptchaControl

Dipa Ahuja

Dipa Ahuja

15y
7.3k
1
hi.. m using CaptchaControl in createuserwizard control.. bt it just passed ok even though i entered wrong text

here is my code:

Default.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit.HTMLEditor"
    TagPrefix="cc2" %>
    <%@ Register Assembly="MSCaptcha" Namespace="MSCaptcha" TagPrefix="cc2" %>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server" />
       <table id="Table2" width="100%" cellpadding="0" cellspacing="0">
<tr>     
<td valign="bottom" align="center" >
<FONT size="+2"><b>New User</b></FONT></td> </tr>
</table>
    <br /><br />
        
      
<asp:CreateUserWizard ID="CreateUserWizard1" runat="server" 
  Font-Names="Verdana" 
  BackColor="#E3EAEB"
  Font-Size="0.8em"  
  BorderWidth="1px" 
  BorderColor="#E6E2D8" 
  BorderStyle="Solid"  
  CompleteSuccessText="The account has been successfully created." 
  UnknownErrorMessage="The account was not created. Please try again."
  OnCreatedUser="CreateUserWizard1_CreatedUser" Width="450px" OnFinishButtonClick="CreateUserWizard1_FinishButtonClick"> 

<WizardSteps>

<asp:CreateUserWizardStep ID="CreateUserWizardStep1" runat="server" Title="Step 1: Basic User Information">
    <ContentTemplate>

<table style="font-size: 10pt; font-family: Verdana" border="0" width="450">
<tr>
    <td style="font-weight: bold; color: white; background-color: #6b696b" align="center" colspan="2">
        Create Your UserID
    </td>
</tr>
<tr>
<%-- user id --%>
<td align="right" style="width: 153px">
  <asp:Label ID="UserNameLabel" runat="server" Text="User ID" AssociatedControlID="UserName"/>
</td>
<td>
    <asp:TextBox ID="UserName" runat="server"/>
    <asp:RequiredFieldValidator ID="UserNameRequired" runat="server" 
    ToolTip="User Name is required."
    ErrorMessage="User Name is required." Text="*" 
    ValidationGroup="CreateUserWizard1" ControlToValidate="UserName"/>    
</td>
</tr>

<tr>
<%-- password --%>

    <td align="right" style="width: 153px">
    <asp:Label ID="PasswordLabel" runat="server" Text="Password:" AssociatedControlID="Password"/>
    </td>
    <td>
    <asp:TextBox ID="Password" runat="server" TextMode="Password" TargetControlID="Password" />
    <cc1:PasswordStrength ID="PasswordStrength1" 
    runat="server" TextStrengthDescriptions="Very Poor;Weak;Average;Strong;Excellent"
    PreferredPasswordLength="6" 
    StrengthIndicatorType="Text" 
    TargetControlID="Password"/> 
    <asp:RequiredFieldValidator ID="PasswordRequired" runat="server" 
    ToolTip="Password is required."
      Text="*" ErrorMessage="Password is required." 
      ValidationGroup="CreateUserWizard1" 
      ControlToValidate="Password"/>      
</td>
</tr>

<tr>
<td align="right" style="width: 1
    
    53px">
    <asp:Label ID="ConfirmPasswordLabel"
     Text="Re-Type Password:" runat="server" AssociatedControlID="ConfirmPassword"/>
</td>
<td>
    <asp:TextBox ID="ConfirmPassword" runat="server" TextMode="Password"/>
    <asp:CompareValidator ID="CompareValidator1" runat="server"
     ErrorMessage="Password not matched" Text="*" ControlToCompare="ConfirmPassword" 
     ControlToValidate="Password"  ValidationGroup="CreateUserWizard1"/>
</td>
</tr>
<tr>
<%-- email --%>

    <td align="right" style="width: 153px; height: 15px">
     <asp:Label Text="Email:" ID="EmailLabel" runat="server" AssociatedControlID="Email"/>
    </td>
    <td style="height: 15px">
        <asp:TextBox ID="Email" runat="server"/>
        
        <asp:RegularExpressionValidator ID="RegularExpressionValidator1" 
            runat="server" ControlToValidate="email"
            ErrorMessage="Email Addr Invalid" Font-Size="Smaller" Text="Invalid format"
            ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"/>
            
        <asp:RequiredFieldValidator ID="EmailRequired" 
        runat="server" ToolTip="Email is required." Text="*"
        ErrorMessage="Email is required" ValidationGroup="CreateUserWizard1" 
        ControlToValidate="Email"/>
     </td>
</tr>
</table>

</ContentTemplate>
    </asp:CreateUserWizardStep>


<asp:WizardStep ID="WizardStep1" runat="server" Title="next3">
Identify the Word:<br />
    <cc2:CaptchaControl ID="CaptchaControl1" runat="server" 
    BackColor="White" CaptchaChars="ACDEFGHJKLNPQRTUVXYZ2346789"
        CaptchaMinTimeout="3" FontColor="Black" LineColor="Black" 
        NoiseColor="Black" /><br />
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
    &nbsp;<br />
</asp:WizardStep>

<asp:CompleteWizardStep ID="CompleteWizardStep1" runat="server">

</asp:CompleteWizardStep>

</WizardSteps>

<TitleTextStyle Font-Bold="True" BackColor="#1C5E55" ForeColor="White"/>
    <SideBarStyle BackColor="#1C5E55" Font-Size="0.9em" VerticalAlign="Top" />
    <SideBarButtonStyle ForeColor="White" />
    <ContinueButtonStyle BackColor="White" BorderColor="#C5BBAF" BorderStyle="Solid"
        BorderWidth="1px" Font-Names="Verdana" ForeColor="#1C5E55" />
    <NavigationButtonStyle BackColor="White" BorderColor="#C5BBAF" BorderStyle="Solid"
        BorderWidth="1px" Font-Names="Verdana" ForeColor="#1C5E55" />
    <HeaderStyle BackColor="#666666" BorderColor="#E6E2D8" BorderStyle="Solid" BorderWidth="2px"
        Font-Bold="True" Font-Size="0.9em" ForeColor="White" HorizontalAlign="Center" />
    <CreateUserButtonStyle BackColor="White" BorderColor="#C5BBAF" BorderStyle="Solid"
        BorderWidth="1px" Font-Names="Verdana" ForeColor="#1C5E55" />
    <StepStyle BorderWidth="0px" />
    <StepNavigationTemplate>
        <asp:Button ID="StepPreviousButton" runat="server" BackColor="White" BorderColor="#507CD1"
            BorderStyle="Solid" BorderWidth="1px" CausesValidation="False" CommandName="MovePrevious"
            Font-Names="Verdana" ForeColor="#284E98" Text="Previous" />
        <asp:Button ID="StepNextButton" runat="server" BackColor="White" BorderColor="#507CD1"
            BorderStyle="Solid" BorderWidth="1px" CommandName="MoveNext" Font-Names="Verdana"
            ForeColor="#284E98" Text="Next" />
    </StepNavigationTemplate>
</asp:CreateUserWizard>


.CS

 public void CreateUserWizard1_CreatedUser(object sender, EventArgs e)
    {

       
        ProfileCommon p = (ProfileCommon)ProfileCommon.Create(CreateUserWizard1.UserName, true);

        p.Country = ((DropDownList)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("Country")).SelectedValue;
        p.Gender = ((DropDownList)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("Gender")).SelectedValue;
        p.FirstName = ((TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("txtfname")).Text;
        p.Email = ((TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("Email")).Text;
        p.LastName = ((TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("txtlname")).Text;
        //p.Address = ((TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("txtaddr")).Text;
        p.BirthDate = Convert.ToDateTime(((TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("txtbdate")).Text);
        // p.City = ((TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("city")).Text;
        //  p.PostCode = ((TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("txtpcode")).Text;
        //  p.State = ((TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("txtstat")).Text;
        if (((TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("txtPictureURL")).Text == null)
        {
            p.uimage = "";
        }
        else
        {
            p.uimage = ((TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("txtPictureURL")).Text;
        }
        //// Save the profile - must be done since we explicitly created this profile instance

        p.Save();

       

    }


protected void CreateUserWizard1_FinishButtonClick(object sender, WizardNavigationEventArgs e)
    {

        TextBox t = (TextBox)CreateUserWizard1.WizardSteps[1].FindControl("TextBox1");
        CaptchaControl1.ValidateCaptcha(t.Text);

        if (!CaptchaControl1.UserValidated)
        {
            System.Windows.Forms.MessageBox.Show("You Have Entered wrong word");
            return;
            t.Focus();
        }

    }


Answers (5)
0
Sam Hobbs

Sam Hobbs

NA 28.7k 1.3m 15y
0
Amit Choudhary

Amit Choudhary

NA 27.7k 3m 15y
hi friend,

Please give more details about it how you want to read. if you want to read HTML file you can read it as XML file  programmatically and if you want to read it using like javascript then you can identify the table by giving it an id. and read the rows.

Please mark as answer if it helps.