asp.net上传图片保存到数据库的代码
发布时间:2024-01-16 05:00:37
标签:上传图片,数据库
数据库:保存图片的数据格式 图象二进制数据储存字段
前台:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UploadWork.aspx.cs" Inherits="meishuguan.UploadWork" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<style type="text/css">
.style1
{
width: 100%;
}
.style2
{
height: 25px;
}
</style>
</head>
<body>
<script type="text/javascript">
function checkData() {
var fileName = document.getElementById("UploadImage").value;
alert(fileName);
//var fileName = document.getElementsByName("UploadImage").value;
if (fileName == "")
return;
var exName = fileName.substr(fileName.lastIndexOf(".") + 1).toUpperCase();
//alert(exName)
if (exName == "JPG" || exName == "BMP" || exName == "GIF") {
var imgpath = fileName.src;
alert(imgpath);
document.getElementById("PreviewImage").src = imgpath;
document.write(fileName);
}
else {
alert("请选择正确的图片文件")
document.getElementById("PreviewImage").value = ""
}
}
</script>
<form method="post" runat="server">
<div>
<table class="style1">
<tr>
<td class="style2">
<asp:Label ID="MessageLabel" runat="server"></asp:Label>
</td>
<td class="style2">
</td>
</tr>
<tr>
<td class="style2">
<input id="UploadImage" name = "UploadImage" type="file" runat="server" onchange="checkdata()" />
</td>
<td class="style2">
<img id="PreviewImage" alt="" src="" style="height: 80px; width: 80px" /></td>
</tr>
<tr>
<td>
<asp:Button ID="UploadButton" runat="server" Text="确定" OnClick="UploadButton_Click" />
</td>
<td>
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
后台:
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using System.Data.SqlClient;
using System.Configuration;
namespace meishuguan
{
public partial class UploadWork : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void UploadButton_Click(object sender, EventArgs e)
{
HttpPostedFile UpFile = UploadImage.PostedFile;
int ImageLength = UpFile.ContentLength;
if (ImageLength == 0)
{
MessageLabel.Text = "请选择要上传的图片";
return;
}
if (ImageLength > Int32.Parse(Application["MaxImageLength"].ToString()))
{
MessageLabel.Text = "图片大小不能大于2M";
return;
}
Stream ImageStream = UpFile.InputStream;
Byte[] ImageByte = new Byte[ImageLength];
ImageStream.Read(ImageByte, 0, ImageLength);
SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ToString());
string sqlstring = "insert into [Work](MID,image,length) values(@MID,@image,@length)";
SqlCommand command = new SqlCommand(sqlstring, connection);
command.Parameters.Add("@MID", System.Data.SqlDbType.Int).Value = Session["MID"].ToString();
command.Parameters.Add("@image", System.Data.SqlDbType.Image, ImageLength).Value = ImageByte;
command.Parameters.Add("@length", System.Data.SqlDbType.Int).Value = ImageLength;
connection.Open();
command.ExecuteNonQuery();
connection.Close();
MessageLabel.Text = "图片上传成功";
}
}
}
0
投稿
猜你喜欢
- 使用python脚本实现查询火车票信息的效果图如下:实现的代码:# coding: utf-8"""命令行火车
- 1、 isalnum() :判断字符串所有的字符都是字母或者数字。返回true和falseIn [1]: str1='jiangwe
- 本文实例为大家分享了使用RNN进行文本分类,python代码实现,供大家参考,具体内容如下1、本博客项目由来是oxford 的nlp 深度学
- 前言本文主要给大家介绍了关于Django中内置用户认证的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。认证登陆在
- 可能不少学习javascript在使用call,apply,callee时会感到困惑,以下希望对于你有所帮助:1、它是函数的方法或属性;2、
- 站长用Python写了一个可以提取csv任一列的代码,欢迎使用。Github链接csv是Comma-Separated Values的缩写,
- 设计师常常使用一些独特的字体效果和页面效果,阴影是其中一个,它可以让页面中的文字和元素具有立体的效果,从而被突出出来。比如对于文字阴影,传统
- 前言:为了获取一定高级操作,如:微信模板消息(xiao,xin)推送,把消息推送给用户,或者是获取用户授权信息都需要用到access tok
- 昨天面试上来就是一个算法,平时基本的算法还行,结果变个法就不会了。。。感觉应该刷一波Leecode冷静下。。。今天抽空看下。题目就是要求O(
- 概述要访问一个变量的内容,可以直接使用其名称。如果该变量是一个数组,可以使用变量名称和关键字或索引的组合来访问其内容。像其他变量一样,使用运
- pandas DataFrame是二维的,所以,它既有列索引,又有行索引上一篇里只介绍了列索引:import pandas as pddf
- K近邻算法(或简称kNN)是易于理解和实现的算法,而且是你解决问题的强大工具。什么是kNNkNN算法的模型就是整个训练数据集。当需要对一个未
- 前言第一次看go基础语法的时候,用使用到了defer。但是一直不知道它到底是什么,有什么用途。这几天通过查询、学习。算是对defer有了一点
- 本人初学python是菜鸟级,写的不好勿喷。python爬虫用了比较简单的urllib.parse和requests,把爬来的数据显示在地图
- 前言大家都知道其实学习Django非常简单,几乎不用花什么精力就可以入门了。配置一个url,分给一个函数处理它,返回response,几乎都
- 在进行keras 网络计算时,有时候需要获取输入张量的维度来定义自己的层。但是由于keras是一个封闭的接口。因此在调用由于是张量不能直接用
- 1.MySQL中并发和隔离控制机制Meta-data元数据锁:在table cache缓存里实现的,为DDL(Data Definition
- 1,打开cmd安装PyQt5pip install pyqt52,PyQt5不再提供Qt Designer等工具,所以需要再安装pyqt5-
- 如下所示:import numpy as npx = [1,2] #横坐标y = [3,4] #第一个纵坐标y1 =
- 由于这两天换了IDE,在导入以前的工程的时候发现了一个大问题,由于以前脑残的我不知道改编码方式,导致出现了大量的GBK,这就很难受,要是一个