所以基本上它是一个图像上传器和图像查看器项目。
我可以将图片上传到本地文件夹,只需将图片网址保存在数据库中,看起来像
现在接下来,用户应该能够根据所选的palbum和pcat查看图像。 palbum =专辑名称。 pcat = Public,Private等(忽略第一个pcat是动物)。
现在在第1页上,我的代码将是:
protected void btn_view_Click(object sender, EventArgs e)
{
Response.Redirect("viewimage.aspx?album='"+DropDownList_album.SelectedValue+"'&cat='"+DropDownList_category.SelectedValue+"'");
}
在第2页上,我已经应用了转发器,并且只想根据查询显示这些图片。
protected void Page_Load(object sender, EventArgs e)
{
string album = Request.QueryString["album"];
string cat = Request.QueryString["cat"];
SqlConnection con = new SqlConnection(" *hiding this* ");
con.Open();
string cmd = "select * from Pics where palbum='" + Request.QueryString["album"].ToString() + "' and pcat='" + Request.QueryString["cat"].ToString() +"'"; // have tried replacing select purl with select * but same problem.
SqlDataAdapter adp = new SqlDataAdapter(cmd, con);
DataTable dt = new DataTable();
adp.Fill(dt);
Repeater1.DataSource = dt;
Repeater1.DataBind();
}
但每次我尝试使用不同的语法时,我不会得到一个空白的屏幕,转发器中没有图像或此错误:
答案 0 :(得分:1)
根据SQL Server参数的不同,如果我没记错{@ 1}}参数,则不接受双引号。
你有一个隐藏的问题,可能很麻烦,称为SQL注入。 Yous应该使用参数化查询完全消除这两个问题:
SqlConnection con = new SqlConnection(“隐藏此”); con.Open();
quote_identifier
答案 1 :(得分:0)
实际上我忘了将ItemTemplate标签放在Repeater中,因此我没有得到输出。抱歉的家伙