qq_43412960 2019-08-23 09:19 采纳率: 78.6%
浏览 341
已采纳

这是一个.net的比较高级的问题

我想做购物网站,想做这样一个功能。用户模糊查询后,能显示所查所有商品的图片和名字 。
这个咋弄呢?我只能做到用户查完整名字,显示一个图片 和商品名字。图片说明

另外有个大佬帮我写了二进制流读取数据库图片的功能
第一个网页是起始网页
图片说明

对应后台

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.Data.SqlClient;
using System.Data.SQLite;
public partial class Default2 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        string name = TextBox1.Text;
        var img = FileUpload1.FileBytes;
        var datapath = Server.MapPath("~/App_Data/");
        SQLiteConnection conn = new SQLiteConnection("data source=" + datapath + "db.db3;version=3;");
        conn.Open();
        SQLiteCommand cmd = new SQLiteCommand();
        cmd.CommandText = "INSERT INTO tb(img,name) VALUES(@im,@nam)";
        SQLiteParameter param1 = new SQLiteParameter("@nam", DbType.String, name.Length, ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, name);
        SQLiteParameter param = new SQLiteParameter("@im", DbType.Binary, img.Length, ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, img);

        cmd.Parameters.Add(param);
        cmd.Parameters.Add(param1);

        cmd.Connection = conn;
        cmd.ExecuteNonQuery();
        Response.Redirect("showimg.aspx");
    }
    protected void TextBox1_TextChanged(object sender, EventArgs e)
    {

    }
}

第二个显示网页 showing.aspx (最后图是全屏显示的)

我在查询这,根据姓名模糊查询,企图读多个图片,报错!

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.Data.SqlClient;
using System.Data.SQLite;
public partial class showing : System.Web.UI.Page
{

     protected void Page_Load(object sender, EventArgs e)
    {
        var datapath = Server.MapPath("~/App_Data/");
        SQLiteConnection conn = new SQLiteConnection("data source=" + datapath + "db.db3;version=3;");
        conn.Open();
        SQLiteCommand cmd = new SQLiteCommand();
        cmd.CommandText = "SELECT * FROM tb     where  name='%11%'  ORDER BY id DESC  ";
        cmd.Connection = conn;
        var reader = cmd.ExecuteReader();
        reader.Read();

          Response.ContentType = "image/jpeg";
          Response.OutputStream.Write((byte[])reader["img"], 0, ((byte[])reader["img"]).Length);


        Response.End();
    }


}

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-08-23 09:32
    关注

    sql = "select * from table where 商品名字 like %'" + 关键字 + "%'";

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 有内推吗,云计算linux运维方向
  • ¥30 sort cuteSV.vcf by bcftools用IGV可视化出现报错
  • ¥100 SOS!对STK中导出的天体图像进行质心提取有没有人做过啊
  • ¥15 python 欧式距离
  • ¥15 运行qteasy报错
  • ¥15 遗传算法解决有工序顺序约束的大规模FJSP问题
  • ¥15 企业消防水炮塔设计方案
  • ¥20 WORKBENCH网格划分
  • ¥60 急招师兄远程解决下载NPCAP的BUG!
  • ¥15 关于#51单片机#的问题:51单片机LM1602的数据只能显示一个字符,在使用矩形键盘送数据的时候不能显示出来而是在显示初始位置上,达不到密码锁的效果