2017-06-07 10 views
0

Db names
Click on this Image to see search functionalityC#で検索機能を実装する方法は?私はあなたたちは持っている場合は、私の検索を完了するためにここに置かなければならない。

次のコードは、それを完了するために私を助け、選択クエリ[文字列sqlSelect =「」]を提案してください検索機能のためでありますコメントで述べたように任意のアイデアが..私は本当に事前に助けのおかげを必要とする私と一緒に

protected void btn_search_Click(object sender, EventArgs e) 
{ 
    string status = dd_status.SelectedValue.Trim(); 
    string address = pacinput.Text.Trim(); 
    string prop_type = string.Empty; 
    foreach (ListItem item in DropDownCheckBoxes1.Items) 
    { 
     if (item.Selected) 
     { 
      prop_type += item.Value + ","; 
     } 
    } 
    string type = prop_type.Trim(); 
    string minbed = dd_minbed.SelectedValue.Trim(); 
    string maxbed = dd_maxbed.SelectedValue.Trim(); 
    string minprice = dd_minprice.SelectedValue.Trim(); 
    string maxprice = dd_maxprice.SelectedValue.Trim(); 
    string sqlSelect = ""; 
    SqlCommand cmd = new SqlCommand(sqlSelect, con); 
    SqlDataAdapter da = new SqlDataAdapter(cmd); 
    DataTable dt = new DataTable(); 
    da.Fill(dt); 
    Session["dt"] = dt; 
    Response.Redirect("property_list.aspx"); 
} 
+0

これはあなたの宿題ですか?どちらの方法でも、SQLインジェクション防止について読むことができます。あなたのDB内のテーブル、フィールド名を知らずに、私はあなたのクエリがどのように見えるかは分かりません。 DB名を追加することを検討してください。 – Karolis

+0

はい大学プロジェクト.. – Bansi

+0

私はdbnamesの画像を追加しました。ページを更新することでチェックアウトしてください – Bansi

答えて

0

を共有してください、常にSQLインジェクションを防ぐために、パラメータ化クエリを使用してください。あなたの実際の質問に来て、あなたは全体の結果セットを与えるクエリ文字列から始める必要があります。さらに、ユーザー入力ごとにフィルタを入れてクエリを拡張します。

var sql = new StringBuilder(); 

//This will select all records from your table 
sql.Append("SELECT FROM YOUR TABLE WHERE 1=1"); 

// Check your conditions here 
if (dd_status.SelectedValue != null) //Or some other condition 
    sql.Append(" AND STATUS = @status"); 
// ... and so on for each filter 

//Finally with your sql command add necessary parameters 
using (SqlCommand cmd = new SqlCommand(sql.ToString(), conn)) 
{ 
    if (dd_status.SelectedValue != null) 
     cmd.Parameters.AddWithValue("@status", dd_status.SelectedValue); 
    // ... and so on for each filter 
} 
+0

すべてのフィールドが選択されている場合は、 – Bansi

+0

すべてのパラメータとその値を追加するだけで確認する必要はありません。 [This](https://stackoverflow.com/questions/13600179/parameterized-sql-query-asp-net-c-sharp) –

+0

if(statusFilter)???を参照してください。 – Bansi

関連する問題