2015-07-22 35 views
0

設置本地服務器後,我想從HTML pageSQL server發送數據。我正在使用C#,ASP.NET。但問題是,當我使用post方法時,它只是顯示空白結果,而沒有正確地將string輸入發送到我的mssql服務器。HTML to SQL在使用POST方法時發送數據

下面是我的Write.aspx文件,它主要是通過 HTML文本輸入需要來自用戶的信息的一部分。我用POST方法來應對Write_Check.aspx信息(實際上在後面的代碼,Write_Check.aspx.cs

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns = "http://www.w3.org/1999/xhtml"> 
<head> 
    <title>Title</title> 
    <script language = "javascript"> 
    </script> 
</head> 
<body> 
    <form id = "form1" method = "post" action = "Write_Check.aspx"> 
     <center> 
      <table width = "100%" border = "0" cellpadding = "2" cellspacing = "3"> 
       <tbody><tr align = "left"> 
        <td colspan = "3"> 
         <h2>Write Article</h2> 
        </td> 
       </tr> 
       <tr align = "left"> 
        <td width = "100px"> 
         Writer 
        </td> 
        <td width = "600px"> 
         <input type = "text" id = "writername" name = writer_name /> 
        </td> 
       </tr> 

和我Write_Check.aspx只是一條線。

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

這是我的Write_Check.aspx.csCWebBase只是db連接方法的一個集合,所以我可以很容易地將它用於其他cs文件。

using System; 
using System.Data; 
using System.Configuration; 
using System.Collections; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 

public partial class Save_Check : CWebBase 
{ 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     string name, password, title, content; 
     //find form name 
     name = Request.Form["writer_name"]; 
     password = Request.Form["password_check"]; 
     title = Request.Form["title_check"]; 
     content = Request.Form["content_check"]; 

     CDatabase _db = new CDatabase(); 

     string sql = "INSERT INTO dbo.article (writerName, passwords, title, content) values('" 
      + name + "','" + password + "','" + title + "','" + content + "')"; 

     _db.ExecuteSQL(sql); 
     _db.Dispose(); 

     Response.Redirect("List.aspx"); 

    } 
} 

我不知道爲什麼我在這裏使用的post方法正常工作。

+0

這Save_Check不Write_Check,它是一個錯字? – Zippy

+0

哦,是的,這是一個錯字。對不起。 – jooShin

+0

您忘記爲表單添加runat =「server」標記。查看[w3教程](http://www.w3schools.com/aspnet/aspnet_forms.asp)瞭解更多信息。 – Zippy

回答

1

好的,所以,從我所看到的你實際上沒有提交表單(不是你已經發布的代碼中)。
爲了查看代碼後面的值,您必須通過單擊按鈕(或其他任何您想要的)來提交表單。
例如:

<form id="form1" runat="server"> 
//data to submit 
<asp:Button id="button1" Text="Click me!" runat="server" OnClick="submit" /> 
</form> 

表格後提交,您可以檢查就像你試過值:
​​

相關問題