public static void DelImg(string tabid,string csid)
{
string urlstr = "";
MySqlConnection constr = new MySqlConnection("server=localhost;User Id=user;password=psd;Database=data;CharSet=utf8");
DataSet dss = new DataSet();
string sqll = "select urls from imgurl where " + tabid + " = " + csid;
MySqlCommand cmd = new MySqlCommand(sqll, constr);
constr.Open();
MySqlDataReader dr = cmd.ExecuteReader();
if (!dr.Read())
return;
dr.Read();
urlstr = dr["urls"].ToString();
dr.Close();
constr.Close();
string[] list = urlstr.Split('∮');
for (int i = 0; i < list.Length; i++)
{
string sql = "select * from imgurl where MATCH (urls) AGAINST ('+" + list[i] + "' in boolean mode)";
MySqlDataAdapter da = new MySqlDataAdapter(sql, constr);
da.Fill(dss);
if (dss.Tables[0].Rows.Count == 1)
{
string delFile =HttpContext.Current.Server.MapPath("~/") + list[i].Replace("/","\\");
File.Delete(delFile);
}
}
}
用户在发表文章时有时要上传图片,服务器的图片越来越多,
我想实现在删除文章的同时,检查文章中的图片是否被其他文章链接。
如果没有就删掉。如果同时也被其他文章链接了,就暂时不能删。
我在写入数据库时把一篇文章所用的img的url放在一个单独的数据库里了。
现在我想到的办法就是以上代码。
先查到该文章的所用img的URL,
然后如果多图就sblit分开,
然后根据每个url到数据库在搜索,判断有没有其他文章也在引用这个图片,如果没有才删。
可是这样岂不是要操作数据库N次吗?
所以想问大家有没有简单的办法。
解决方案 »
- 求一正则表达式
- 这种图片切换 的 效果 是如何 实现的 ?
- 【分享】将页面的数据转化为实体类,实现的不优雅,也请大虾帮改改。谢谢~
- 请教,关于GridView中超链接的问题
- 高手,帮我解释一下这种情况产生的原因,主要是LoadViewState方法?
- asp.net2.0中用dataset读xml文档为什么中文读不出来呢,英文就可以!
- 关于Excel.Excel.Application的问题,急啊!!!
- vs.net程序会生成各种文件,小弟初血,头大!!
- 急:通常所说的缓存(cache),是在客户端还是在服务器端,还是两者都有?请详解!:)
- 服务代码引用datagrid 模版列中“文本框”值(HTML控件)值??(高手人请指教)!!
- 请教:AjaxPro如何传递一个控件对象(select,text等)到C#端?
- .net 调用c++ dll库的路径的问题
一个图就XXX KB,一个硬盘最起码75G
怎么会有资源问题
要删的话,就要把图像提炼出来
添加,图像和文章引用对象
select url form img where id on in(select id form news )
删除