首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Request.form返回空

Request.form返回空
EN

Stack Overflow用户
提问于 2013-05-23 01:41:37
回答 3查看 1.5K关注 0票数 0

我有这个注册用户的代码:

代码语言:javascript
复制
public partial class signup : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write(Request.Form["username"]+"SSS");
        Page.Validate();
        if (Request.Form["submit"] != null && Page.IsValid) {
            register1();
        }

    }

    public void register1()
    {

      string sql = "INSERT INTO [userinfo] ([username], [password], [email]) VALUES (N'" + Request.Form["username"] + "', N'" + Request.Form["password"] + "', N'" + Request.Form["email"] + "')";
      Response.Write(sql);
      Database.UpdateData(sql);
      //Response.Redirect("Default.aspx");
    }

它在我的数据库中填满了空行,我试着简单地打印Request.form,结果却是空的,我把名字弄对了,这是怎么回事?

下面是html页面:

代码语言:javascript
复制
<div class="grid_6">
    <header class="grid_6 push_3 alpha">
        <h2>הרשמה
        </h2>
    </header>
    <!--   -->
    <div class="grid_6 push_3 block alpha">

        <div class="grid_6 form_block alpha  omega">
            <label>שם משתמש</label>
        </div>

        <div class="grid_6 form_block alpha  omega">
            <input type="text" id="username" name="username" required pattern="^\S{4,}$" runat="server"  />
            <span class="form_hint">שם משתמש צריך להכיל לפחות 4 תווים</span>
            <asp:RegularExpressionValidator ID="valUsername" ControlToValidate="username" ValidationExpression="^\S{4,}$"
                ValidationGroup="First" EnableClientScript="false" CssClass="form_hint" Style="display: inline;" ErrorMessage="שם משתמש צריך להכיל לפחות 4 תווים" runat="server" />
        </div>


        <div class="grid_6 alpha omega  form_block">
            <label>סיסמא</label>
        </div>



        <div class="grid_6 form_block alpha  omega">
            <input type="password" id="password" name="password" title="סיסמא צריכה להכיל לפחות 6 תווים" required pattern="^\S{6,}$" runat="server" />
            <span class="form_hint">סיסמא צריכה להכיל לפחות 6 תווים</span>
            <asp:RegularExpressionValidator ID="valPassword" ControlToValidate="password" ValidationExpression="^\S{6,}$"
                ValidationGroup="First" EnableClientScript="false" CssClass="form_hint" Style="display: inline;" ErrorMessage="סיסמא צריכה להכיל לפחות 6 תווים" runat="server" />
        </div>




        <div class="grid_6 alpha omega  form_block">
            <label>וודא סיסמא</label>
        </div>

        <div class="grid_6 form_block alpha  omega">
            <input type="password" id="password2" required pattern="^\S{6,}$" runat="server" /> 
            <span class="form_hint" id="pass2_hint">סיסמאות לא תואמות</span>
            <asp:CompareValidator ID="valPasswords"
                ControlToValidate="password" ControlToCompare="password2" Type="String"
                ValidationGroup="First" EnableClientScript="false"  CssClass="form_hint" Style="display:inline;" Text="סיסמאות לא תואמות"
                runat="server" />
        </div>


        <div class="grid_6 alpha omega  form_block">
            <label>כתובת אימייל</label>
        </div>

        <div class="grid_6 form_block alpha  omega">
            <input id="email" name="email" type="text" required pattern="[^@]+@[^@]+\.[a-zA-Z]{2,6}" runat="server"/>
            <span class="form_hint">התבנית התקינה לאימייל: &nbsp;test@test.com</span>
            <asp:RegularExpressionValidator ID="valEmail" ControlToValidate="email" ValidationExpression="[^@]+@[^@]+\.[a-zA-Z]{2,6}"
                ValidationGroup="First" EnableClientScript="false" CssClass="form_hint" Style="display:inline;" ErrorMessage="אימייל לא תקין" runat="server" />
        </div>





        <div class="grid_6 alpha omega  form_block">
            <label>וודא כתובת אימייל</label>
        </div>

        <div class="grid_6 form_block alpha  omega">
            <input id="email2" type="text" required pattern="[^@]+@[^@]+\.[a-zA-Z]{2,6}" runat="server"/>
            <span class="form_hint" id="email2_hint">כתובות אימייל לא תואמות</span>
            <asp:CompareValidator ID="valEmails"
                ControlToValidate="email" ControlToCompare="email2" Type="String"
                ValidationGroup="First" EnableClientScript="false"  CssClass="form_hint" Style="display:inline;" Text="כתובות אימייל לא תואמות"
                runat="server" />
        </div>

        <div class="grid_6 form_block alpha  omega">
            <input name="submit" type="submit" ValidationGroup="First" onclick="return validateForm()" value="שלח" />
        </div>

    </div>
</div>
<div class="grid_3 pull_6" id="ad">
</div>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-05-22 05:55:08

因为“接受”的答案没有提供实际的答案。这就是我在为自己研究答案时所做的工作。

在asp文本框中使用runat="server"时,请尝试:

代码语言:javascript
复制
request.form(name.uniqueID)
票数 1
EN

Stack Overflow用户

发布于 2013-05-23 01:52:40

我认为你需要一个<form runat="server">元素来包装你的输入。

票数 1
EN

Stack Overflow用户

发布于 2013-05-23 02:05:26

不要紧,问题解决了,显然,当使用具有服务器“runat=”属性的输入时,从cs代码访问的方法是不同的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16698319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档