asp无刷新上传图片
A. asp网站后台不能上传图片
你按照提示查一下。首先看一下缩略图设置的保存地址是否存在,具体你就看这个s_OriginalPath参数的值。至于这个值在哪里,你可以用文本搜索软件搜一下。这个软件网络一下就有。
另外看一下目录的权限是否有写权限。
最后是否磁盘不足?这个可能性不大。
B. asp.net如何利用NeatUpload控件实现无刷新上传
可用VS2008中自带的Ajax相关控件来实现无刷新的上传
C. jq配合asp.net实现无刷新上传,上传后马上在页面显示图片。
上面一个上传控件下面一个iframe内容页控件。上传成功后,调用后台代码取得上传文件的ID后,然后以url带参数形式传到iframe内容页里面去就行了。
D. asp 提交表单和上传文件
asp.net和asp上传方式基本相似。都需要使用到form表单。下面分别介绍asp和asp.net两种文件上传方式。
第一种:asp方式
首先建立form表单
<form name="form1" method="post" action="send.asp"enctype="multipart/form-data">
<input name="title" type="text"/>
<input name="uploadimg" type="file" />
<input name="submit" type="submit" value="提交"/>
</form>
asp的表单一定要注意加上enctype="multipart/form-data"这个属性,否则是上传不了图片的,这个属性很关键。
上传处理代码也就是send.asp的处理代码。
因为asp本身没有上传的组件或控件,这里只能借助第三方式的组件或类。上传组件推荐使用aspJpeg组件,这个组件不仅可以上传文件,如果是图片的话,可以调节尺寸尺寸,创建缩略图等。很方便,目前一般的空间商都支持这个组件,另外就是使用组件上传类,像风声,无惧等,都是无组件上传。
上传代码,这里假设采用的是风声无组件上传类。类文件已经包含进去。
<include file="uploadclass.asp"-->
处理代码:
先初始化上传类
dim myrequest
set myrequest = new UpLoadClass
设置属性:
myrequest.FileType="gif,jpeg,jpg,png" //设置上传类型
myrequest.SavePath="../upload/" //设置上传路径
myrequest.MaxSize=100*1024 //设置上传文件的大小,
myrequest.AutoSave=1 //设置保存方式,为1表示自动保存
myrequest.Open //打开文件流
title =myrequest.form("title")
img =myrequest.form("uploadimg") //这两部表示接收form表单中的数据。不 能再用request.form或request.querystring来接收了,必须用刚才初始化的对象
myrequest来接收。
现在数据接收到了,剩下的就是保存到数据库。这和常用的数据保存方式一下的,拼接sql.然后再执行,这里不赘述。
第二种asp.net方式。
asp.net方式,因为采用的是服务器控件,所以与asp有点区别。
首先是form不同,asp.net的form是服务器控件,需要添加ID和runat="Server"如
<form name="form1" ID="form1" runat="Server">
<asp:FileUpload ID="FileUpload1"runat="server" />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="上传" /></form>
处理代码,上传并保存代码
protectedvoidButton1_Click(objectsender, EventArgs e)
{
StringsavePath = Server.MapPath("upload");
if(FileUpload1.HasFile)
{
Stringfilename;
filename = FileUpload1.FileName;
savePath +=filename;
FileUpload1.SaveAs(savePath);
Page.Response.Write(FileUpload1.PostedFile.ContentType + FileUpload1.PostedFile.ContentLength+"<br>");
Page.Response.Write("<img src='"+savePath+"'>");}
else
{
Page.Response.Write("fff");
}
}
asp提交和上传文件,与asp.net是不同的。一个是html标签,一个是服务器控件。相对来说,asp.net的文件上传比asp简单很多,因为asp.net提供了相对应的上传控件。而asp没有。只有采用第三方组件或无组件上传类。上传文件成功后,另外还可以加入更多的处理元素,如图片入库,加上水印等,这需要你自己去思考和查找资料了。
E. 用ASP上传图片上传成功了有时候图片显示,有时候图片加载不出来,但是我刷新页面图片就出来了有办法解决吗
分析你的情况可能是异步加载的问题,你看下你是不是有异步相关的,原因大概是你,已经开始显示了,但是图片还没加载进缓存,刷新一下后,因为前面显示完后,图片基本就加载完了,所以会显示出来,90%跟缓存有关系
F. 我的asp网站无法上传照片
那是你开启了容错,把容错关闭,就可以看见错误的原因,应该是权限的问题,即上传的文件夹没有写入权限。
G. asp无刷新提交部分数据
同理,得证。AJAX这东东就能行。例如哈。下面是代码段,你有空研究哈子:超级简单
<textarea cols="60" name="msgcontent" rows="5" class="ipt-txt" id="msgcontent"></textarea>
昵称:<input type="text" name="username" id="username" size="10" class="ipt-txt" />
验证码:<input type="text" name="validate" size="4" class="ipt-txt" id="validdate" style="text-transform:uppercase;"/><img src= "/include/verifycode.asp" id="validateimg" style="cursor:pointer" onclick="this.src=this.src+'?'" title="点击我更换图片" alt="点击我更换图片"
height="26" width="70"/>
<button type="button" onClick='PostComment()' value="" id="ok"></button>
其中
function PostComment() {
var xmlhttp;
var tt;
var msgContent,newsId,usrName,vCode;
msgContent = document.getElementById('msgcontent').value;
newsId = document.getElementById('news_fid').value;//记录是对哪条新闻的评论
usrName = document.getElementById('username').value;
vCode = document.getElementById('validdate').value;
if (msgContent=="")
{
msg="总该写点什么吧O(∩_∩)O~";
alert(msg);
return false;
}
if (msgContent.length < 5 || msgContent.length > 100)
{
msg="最少5个字符,最大不能超过100个字哦";
alert(msg);
return false;
}
if (usrName=="")
{
msg="忘记填写昵称啦O(∩_∩)O~";
alert(msg);
return false;
}
if (vCode=="")
{
msg="忘记填写验证码啦O(∩_∩)O~";
alert(msg);
return false;
}
if(window.ActiveXObject) {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
}
if (xmlhttp) {
xmlhttp.onreadystatechange=function() {
if(4==xmlhttp.readyState) {
if(200==xmlhttp.status) {
tt=xmlhttp.responseText;
showmsg(tt);
}else {
alert("提交失败,网络连接错误.")
}
}
}
xmlhttp.open("get","/plus/?msg="+escape(msgContent)+"&nId="+escape(newsId)+"&uname="+escape(usrName)+"&vcode="+escape(vCode));
xmlhttp.send(null);
}
function showmsg(tmsg) {
if (tmsg==0) {
alert('验证码填写错误啦');
}else {
alert('评论成功');
}
}
}
plus目录下的ASP文件:
<%
dim msg,nId,uname,vcode
msg= trim(request.querystring("msg"))
nId=trim(request.querystring("nId"))
uname=trim(request.querystring("uname"))
vcode=trim(request.querystring("vcode"))
If CStr(Session("CheckCode"))<>CStr(vcode) Then
Call infoback("验证码错误!")
else
Set rs = Server.CreateObject ("ADODB.Recordset")
sql = "Select * from pinglun "
rs.Open sql,conn,1,3
rs.addnew
rs("pl_ID") = nId
rs("pinglun") = msg
rs("pinglun_nicheng") =uname
rs.update
rs.close:set rs=nothing
conn.close:set conn=nothing
end if
%>
就这样。回答完毕。很简单是吧。
H. asp中无刷新上传图片的代码,最好使用js
思路是这样,通过js创建一个新的表单(不可见的),将input放到表单中去,调用submit()控制上传。如果不想自己实现,也可以网络一个“ajaxfileupload.js”的东东。
另外一种方法是将图片内容序列化,通过ajax提交。
I. asp如何创建后台上传图片功能
asp创建后台上传图片功能,参考如下:
admin/editor/fckconfig.js
找到FCKConfig.ImageUpload = false 这句,把false改成true就行啦。
FCKConfig.ImageBrowser = true ;
但是admin/editor/editor这个目录下缺少filemanager文件夹。官方貌似去掉了。
你需要下载一个fck编辑器2.6.3版本的完全版里面有复制到这个目录下即可。
editor/filemanager/connectors/asp文件夹
config.asp:
ConfigIsEnabled = True 是否开启上传功能
ConfigUserFilesPath = "../../../../../uploads/" 文件上传目录,相对于该文件夹
commands.asp:
实现上传文件自动改名:
在文件中添加如下语句
dim rannum
dim dtnow
dim getnewfilename
dtnow=now()
randomize
rannum=int(90*rnd)+10
getnewfilename=year(dtnow) & right("0" & month(dtnow),2) & right("0" & day(dtnow),2) & right("0" & hour(dtnow),2) & right("0" & minute(dtnow),2) & right("0" & second(dtnow),2) & rannum
将
sFileName = ouploader.file( "newfile" ).name
改为
sFileName = getnewfilename &"."& split(ouploader.file( "newfile" ).name,".")(1)
J. ASP实现图片上传,并在Image中显示,要求局部刷新,只刷新Image,不用Ajax,请高手指教
上传图片预览的功能只有部分浏览器可以在上传前预览,
其它浏览器必须在上传后将网络路径指定到一个image元素里显示.
simple模式:直接从file的value获取图片路径来显示预览,适用于ie6;
filter模式:通过selection获取file的图片路径,再用滤镜来显示预览,适用于ie7/8;
domfile模式:调用file的getAsDataURL方法获取Data URI数据来显示预览,适用于ff3;
remote模式:最后的办法,把file提交后台处理后返回图片数据来显示预览,全适用。
上传图片一般可以不用ajax.本页面上传一般使用隐藏的iframe,上传成功后回调