2011-01-21 62 views
14

Hi trong php tôi sẽ thực hiện biểu mẫu với hành động để cho phép nói trang process.php và trong trang đó tôi sẽ lấy giá trị bài đăng và sử dụng mysql_query sẽ thực hiện chèn. bây giờ tôi bị mất, tôi đang cố gắng tạo một từ và làm một inserstion trong ASP.net với sql server 2008 bằng cách sử dụng visual studio 2010.ASP.net sử dụng biểu mẫu để chèn dữ liệu vào bảng máy chủ sql

tôi đã xác định một sql db trong thư mục App_Data. về cơ bản những gì tôi cần (trừ khi có cách nào tốt hơn) là:

  1. làm cách nào để có được giá trị bài đăng.
  2. làm cách nào để chèn chúng vào db.

cảm ơn.

+1

bạn có thể tìm thấy tài nguyên này hữu ích: http://www.asp.net/general/ video # Xây dựng% 20Web% 20Ứng dụng% 20với% 20ASP.NET% 203.5% 20 và% 20Microsoft% 20Visual% 20Web% 20Developer% 202008 – Greg

Trả lời

15

Có rất nhiều mã mẫu trực tuyến về cách thực hiện việc này.

Dưới đây chỉ là một ví dụ về cách để làm điều này: http://geekswithblogs.net/dotNETvinz/archive/2009/04/30/creating-a-simple-registration-form-in-asp.net.aspx

bạn xác định các hộp văn bản giữa các thẻ sau:

<form id="form1" runat="server"> 

bạn tạo textbox của bạn và xác định họ runat = "server "như vậy:

<asp:TextBox ID="TxtName" runat="server"></asp:TextBox> 

xác định nút để xử lý lôgic của bạn như vậy (thông báo onclick):

<asp:Button ID="Button1" runat="server" Text="Save" onclick="Button1_Click" /> 

trong mã phía sau, bạn xác định những gì bạn muốn máy chủ để làm gì nếu người dùng nhấp chuột vào nút bằng cách định nghĩa một phương thức có tên

protected void Button1_Click(object sender, EventArgs e) 

hoặc bạn chỉ có thể nhấp đúp chuột vào trong chế độ xem thiết kế.

Đây là một mẫu rất nhanh chóng mã để chèn vào một bảng trong trường hợp nút bấm (codebehind)

protected void Button1_Click(object sender, EventArgs e) 
{ 
    string name = TxtName.Text; // Scrub user data 

    string connString = ConfigurationManager.ConnectionStrings["yourconnstringInWebConfig"].ConnectionString; 
    SqlConnection conn = null; 
    try 
    { 
      conn = new SqlConnection(connString); 
      conn.Open(); 

      using(SqlCommand cmd = new SqlCommand()) 
      { 
       cmd.Conn = conn; 
       cmd.CommandType = CommandType.Text; 
       cmd.CommandText = "INSERT INTO dummyTable(name) Values (@var)"; 
       cmd.Parameters.AddWithValue("@var", name); 
       int rowsAffected = cmd.ExecuteNonQuery(); 
       if(rowsAffected ==1) 
       { 
         //Success notification 
       } 
       else 
       { 
         //Error notification 
       } 
      } 
    } 
    catch(Exception ex) 
    { 
      //log error 
      //display friendly error to user 
    } 
    finally 
    { 
      if(conn!=null) 
      { 
       //cleanup connection i.e close 
      } 
    } 
} 
2

đơn giản, làm cho một trang asp đơn giản với các nhà thiết kế (chỉ dành riêng cho đầu) Cho phép nói rằng cơ thể là một cái gì đó như thế này:

<body> 
    <form id="form1" runat="server"> 
    <div> 
     <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> 
     <br /> 
     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
    </div> 
    <p> 
     <asp:Button ID="Button1" runat="server" Text="Button" /> 
    </p> 
    </form> 
</body> 

Great, bây giờ mọi đối tượng asp LÀ một đối tượng. Vì vậy, bạn có thể truy cập nó trong mã CS của asp. Mã CS của asp được kích hoạt bởi các sự kiện (chủ yếu). Lớp học có thể sẽ kế thừa từ System.Web.UI.Page

Nếu bạn vào tệp cs của trang asp, bạn sẽ thấy một khoảng trống được bảo vệ Page_Load (đối tượng người gửi, EventArgs e) ... Đó là sự kiện tải, bạn có thể sử dụng để điền dữ liệu vào các đối tượng của bạn khi trang tải.

Bây giờ, hãy vào nút trong nhà thiết kế của bạn (Button1) và xem các thuộc tính của nó, bạn có thể thiết kế hoặc thêm sự kiện từ đó. Chỉ cần thay đổi chế độ xem sự kiện và tạo phương thức cho sự kiện.

Nút là một web control Button Thêm một sự kiện Click vào nút gọi nó Button1Click:

void Button1Click(Object sender,EventArgs e) { } 

Bây giờ khi bạn nhấp vào nút, phương pháp này sẽ được gọi. Vì ASP là đối tượng được định hướng, bạn có thể coi trang đó là lớp thực tế và các đối tượng sẽ giữ dữ liệu hiện tại thực tế.

Vì vậy, nếu ví dụ bạn muốn truy cập các văn bản trong TextBox1 bạn chỉ cần gọi cho đối tượng đó trong mã C#:

String firstBox = TextBox1.Text; 

Trong cùng một cách bạn có thể di chuyển đối tượng khi sự kiện xảy ra.

Bây giờ bạn có dữ liệu người dùng đã đăng trong hộp văn bản, bạn có thể sử dụng các kết nối C# SQL thông thường để thêm dữ liệu vào cơ sở dữ liệu của bạn.

Các vấn đề liên quan