我試圖讓一個搜索引擎與asp.net中的mysql鏈接,我希望用戶可以鍵入一個單詞/數字並按搜索,他會看到我的所有行數據庫包含該特定字搜索引擎。使用asp.net和從MySql檢索數據
在第一個加載頁我從我的數據庫(根據需要)獲取完整數據比例如我嘗試搜索「尊重」,然後單擊按鈕搜索(Zoeken)和什麼也沒有發生。
我已經嘗試添加點擊按鈕,看看後,我按下按鈕被執行的代碼和它的作品它改變之後發生改變的標籤。
這裏是代碼:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Configuration;
using MySql.Data.MySqlClient;
namespace KnowledgebaseKNO
{
public partial class Know : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
GridLaden();
}
}
protected void GridLaden()
{
//start
if (!this.IsPostBack)
{
MySqlConnection con = new MySqlConnection("server = 127.0.0.1; user id = secret; persistsecurityinfo = True; database = knbase;pwd=secretinfo");
con.Open();
using (MySqlCommand cmd = new MySqlCommand("SELECT * FROM tblafspraken"))
{
using (MySqlDataAdapter sda = new MySqlDataAdapter())
{
cmd.Connection = con;
sda.SelectCommand = cmd;
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
}
}
//eind
}
protected void GridLadenSpecifiek()
{
string keywoord;
keywoord = txt_zoekwoord.Text;
if (!this.IsPostBack)
{
MySqlConnection con = new MySqlConnection("server = 127.0.0.1; user id = secret; persistsecurityinfo = True; database = knbase;pwd=secretinfo");
con.Open();
using (MySqlCommand cmd = new MySqlCommand("SELECT IDafspraak, NaamAfspraak,BeschrijvingAfspraak FROM tblafspraken where NaamAfspraak like '%" + keywoord + "%' or BeschrijvingAfspraak like '%" + keywoord + "%'"))
{
using (MySqlDataAdapter sda = new MySqlDataAdapter())
{
cmd.Connection = con;
sda.SelectCommand = cmd;
using (DataTable dt = new DataTable())
{
sda.Fill(dt);
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
}
}
lbl_test.Text = "Done!";
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void btn_Zoeken_Click(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
GridLadenSpecifiek();
}
}
}
}
在btn事件和特定方法中刪除IsPostBack邏輯。僅在Page_Load事件中保留 – Steve
並參數化您的查詢。現在,您的代碼很容易受到SQL注入的攻擊。 – VDWWD
Steve:刪除IsPostBack很有幫助,但我的頁面仍未重新加載。 –