当前位置: 代码网 > it编程>网页制作>html5 > canvas签名图片上传及入库问题

canvas签名图片上传及入库问题

2024年05月12日 html5 我要评论
工作需要,asp+access建了个简单信息交互平台,表单填报、签名、及查看只能在手机上进行。已实现Base64直接入数据库。有Jccscxj.asp(首页表单填报)、Jccscxjup.asp(手写签名页面)、ajax-cscxj.asp(入库页面)、anco.asp(数据库联接)、cscxjck ...

工作需要,asp+access建了个简单信息交互平台,表单填报、签名、及查看只能在手机上进行。已实现base64直接入数据库。有jccscxj.asp(首页表单填报)、jccscxjup.asp(手写签名页面)、ajax-cscxj.asp(入库页面)、anco.asp(数据库联接)、cscxjck.asp(填报项查看)等五个asp文件、jcxj.mdb数据库和相关格式js、css文件。实现步骤:首页填报各项表单-->进入签名页面-->提交签名显示签名结果。经过实践,base64入库数据太大,想进行优化改进。经过近半月的折腾,问题终于解决。先是把问题想复杂了。是在原base64能直接入库的基础上优化。说明ajax提交的数据是成功的。只是把入库的base64数据改成图片文件存服务器的一个指定目录、数据库只加入链接就行了。所以只需要修改入库文件ajax_cscxj.asp即可。其它文件都不需要改变。笔记留存。
修改ajax_cscxj.asp后的代码:
`

<%@language="vbscript" codepage="65001"%>

<%
id = int(request.form("id"))
id = right("0000" & id, 4) ' 格式化为4位数,不足部分用0填充
filename =id & "" & datepart("yyyy", now()) & datepart("m", now()) & datepart("d", now()) & "" & datepart("h", now()) & datepart("n", now()) & datepart("s", now()) '生成文件名
pict=trim(request.form("qm_pic")) '获取form提交过来的img
'分割字符串 base64 找到文件扩展名 picl(1)
picn=split(pict,";base64,")
picl=split(picn(0),"/")
picture=picn(1)

'response.write picn(1)
'response.write "
"
path="uploadimg_cscxj/" & filename & "."&picl(1) '存放路径

xmlstr=""&picture&""
dim xml : set xml=server.createobject("msxml2.domdocument")
dim stm : set stm=server.createobject("adodb.stream")
xml.resolveexternals=false
xml.loadxml(xmlstr)
xml.documentelement.setattribute "xmlns:dt","urn:schemas-microsoft-com:datatypes"
xml.documentelement.datatype = "bin.base64"
stm.type= 1'adtypebinary
stm.open
stm.write xml.documentelement.nodetypedvalue
stm.savetofile server.mappath(path)
stm.close
set xml=nothing
set stm=nothing
' 更新数据库,存储图片路径
set rs = server.createobject("adodb.recordset")
sql = "select * from [jccscxj] where cscxj_id = "&id&""
rs.open sql,conn,1,3
rs("cscxj_qm") = path
rs.update
rs.close
set rs = nothing
response.write("签名成功")

conn.close
set conn=nothing
%>

`

参考文章:https://blog.csdn.net/u011289462/article/details/128058690

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com