asp.netでmysqlとリンクしている検索エンジンを作成しようとしています。ユーザーが単語/数字を入力して検索を押して、その特定の単語を含むデータベース検索エンジン。 asp.netを使用してMySqlからデータを取得する
最初の読み込みページで私はデータベースから完全なデータを取得しています(必要に応じて)exmpleより "尊敬"を検索してボタン検索(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を削除すると便利でしたが、私のページはまだリロードされていません。 –