PDA

View Full Version : Help DataGrid và Search



nthctu
11-07-2003, 18:14
Xin các bạn chỉ mình vừa phân trang trong ASP.Net vừa SEARCH.
Mình muốn hiển thị tất cả thông tin lên Datagrid. Nhưng vì thông tin hiển thị quá nhiều nên bắt buộc phải phân trang và cho người ta SEARCH luôn tại đó. Nhưng sao nó báo lổi hoài.
Mình đã phân trang được nhưng khi mình cho một textbox để SEARCH thông tin thì nó lại báo lổi. Nếu trở về trang đầu tiên thì SEARCH bình thường, nếu ở trang thứ 2 trở đi mà SEARCH thì nò báo lổi.Nếu bỏ phân trang thì câu SQL đó hoạt động hoàn toàn đúng.

White_Rose
11-07-2003, 23:25
Nói đi nói lại cái quan trọng nhất là souce code của bạn thì lại chẳng thấy đâu cả.

1011
12-07-2003, 09:01
Dùng QueryString.
Hãy lưu các key search trong các tham số của querystring để giữ lại các giá trị được nhập vào lúc search.

Ví dụ:
ta cần tìm Name và Address trong trang listmember.aspx chẳng hạn.

Trong sự kiện cmdSearch_Click sẽ viết thế này:
...
Name = txtName.Text
Address = txtAddress.Text
Response.Redirect("listmember.aspx?name=" & Name & "&addr=" & Address)
...

Trong hàm Page_Load viết như sau:
...
'Lấy tham số
Dim Name, Address As String
Name = Request.QueryString("name")
Address = Request.QueryString("addr")
'Để an toàn, hãy xử lý SQL injection ở đây
'Xây dựng chuỗi điều kiện
Dim strCond As String
strCond = WHERE ... Name = '" & Name & "' AND Address = '" & Address & "'"

'Goi ham FillDataGrid(chuoi_dieu_kien)
If Not Page.IsPostBack() Then
FillDataGrid(strCond)
End If
...

'Định nghĩa hàm FillDataGrid(tham_so)

Mình đã gặp lỗi này, đây là cách giải quyết của mình. Huynh nào có cách hay hơn chỉ cho đệ dzới.