レコードの削除と画像の削除を同時に行うには、一般的にパフォーマンスを向上させるために、エディタを使用してフィールド内の記事内の画像を保存し、後の削除処理を容易にするために複数の画像をカンマで区切ります。 1 つ目の方法: これは、単一フィールドの画像を削除するコードです。 Picture フィールドはデータベース テーブルの bookpic フィールドにすでに存在しているため、これは比較的単純です。
次のようにコードをコピーします。
<!--#include file=conn.asp-->
<%
fileid=trim(request(fileid))'削除するレコードのID
set rs=server.createobject(adodb.recordset)
sql=select * from shop_books where bookid=3090
rs.open SQL,conn,3,2
upfile=rs(bookpic) 'パスとファイル名付き
set fso=server.CreateObject(scripting.filesystemobject)
fso.deletefile(server.MapPath(upfile))
fso=何も設定しない
rs.削除
rs.アップデート
rs.close
rs=何も設定しない
%>
2 番目の方法: 複数の写真の場合
ASP プログラムでは、情報を追加するときに ewebeditor を使用して、記事の写真を抽出してフィールドに挿入できます。
次のようにコードをコピーします。
ID=リクエスト(ID)
Id= の場合
Response.Write(<script>alert('削除操作に失敗しました: 削除する情報を選択してください!'); hitory.go(-1);</script>)
それ以外
Id=分割(ID,,)
i=0 から UBound(Id) の場合
set oRs=SerVer.CreateObject(Adodb.recordset)
sSql = SELECT D_SavePathFileName FROM &data& WHERE ID=&id(i)&
ors.Open sSQL、Conn、0、1
orRs.Eof でない場合は、
asSavePathFileName = oRs(D_SavePathFileName)
それ以外
as保存パスファイル名=
終了の場合
ors.Close
oRs=何も設定しない
保存パスファイル名を暗くする
if len(aSavePathFileName)>0 then
aSavePathFileName = Split(asSavePathFileName, |)
ディムン
n = 0 の場合、UBound(aSavePathFileName) へ
'パスファイル名でファイルを削除
DoDelFile(aSavePathFileName(n)) を呼び出す
次
'記事を削除 www.vevb.com
Conn.Execute(id=&id(i)&の記事から削除)
次
終了する場合
サブ DoDelFile(sPathFile)
'エラー時は次へ再開
ディム・オブ・FSO
oFSO = Server.CreateObject(Scripting.FileSystemObject) を設定します
objFSO.fileExists(Server.MapPath(sPathFile)) の場合
oFSO.DeleteFile(Server.MapPath(sPathFile))
終了する場合
oFSO = 何も設定しない
エンドサブ