日期:2014-05-17  浏览次数:20949 次

ASP 文件写入和读取
源代码对应的是:
savepath="../pic_1/"&filename 这个写入

source1=server.mappath("..")&"\"&replace(request("path"),"/","\") 这个读取


我把写入的改成 savepath="../../../pic_1/"&filename

那读取的要怎么改呀。我看不懂这个读取的路径设定。。求助求助。~~~


------解决方案--------------------
要看request("path")的值,没变的话
就是
source1=server.mappath("../../../") & "\" & replace(request("path"),"/","\")

------解决方案--------------------
给你个建议

路径放到一起,然后统一让 mappath 解析物理路径,比如写成 server.mappath("../" & request("path")) 而不是 server.mappath("../") & "\" & replace(request("path"),"/","\")

在路径合并前,可以校验一下字符串是否合法,比如
VBScript code

dim pathStr,pathRequest,truePath
pathRequest = request("path")
if left(pathRequest,1) = "/" then
   pathStr = ".." & pathRequest 
else
   pathStr = "../" & pathRequest
end if
truePath = server.mappath(pathStr)
Response.Write truePath