当前位置:文档之家› mysql存入图片与页面显示

mysql存入图片与页面显示

mysql存入图片与页面显示
mysql存入图片与页面显示

数据库应用程序,特别是基于WEB的数据库应用程序,常会涉及到图片信息的存储和显示。通常我们使用的方法是将所要显示的图片存在特定的目录下,在数据库中保存相应的图片的名称,在JSP中建立相应的数据源,利用数据库访问技术处理图片信息。但是,如果我们想动态的显示图片,上述方法就不能满足需要了。我们必须把图片存入数据库,然后通过编程动态地显示我们需要的图片。实际操作中,可以利用JSP的编程模式来实现图片的数据库存储和显示。

2. 建立后台数据库

if exists (select * from dbo.sysobjects

where id = object_id(N'[dbo].[p]') and OBJECTPROPERTY(id, N'IsUserT able') = 1)

drop table [dbo].[p]

GO

CREATE TABLE [dbo].[p] (

[picid] [int] IDENTITY (1, 1) NOT NULL ,

[picname] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

[pic] [image] NULL

) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO

3.向数据库存储二进制图片

启动Dreamweaver MX后,新建一个JSP文件。其代码如下所示。

<%@ page contentType="text/html;charset=gb2312"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()

+":"+request.getServerPort()+path+"/";

%>

My JSP 'InputImage.jsp' starting page


题目

图片


将此文件保存为InputImage.jsp文件,其中testimage.jsp文件是用来将图片数据存入数据库的,具体代码如下所示:

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.sql.*" %>

<%@ page import="java.util.*"%>

<%@ page import="java.text.*"%>

<%@ page import="java.io.*"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+

":"+request.getServerPort()+path+"/";

%>

My JSP 'testimage.jsp' starting page

<%

request.setCharacterEncoding("gb2312");

//建立Statement对象

String picname=request.getParameter("picname");

String pic=request.getParameter("pic");

//获得所要显示图片的标题、存储路径、内容,并进行中文编码FileInputStream str=new FileInputStream(pic);

String sql="insert into p(picname,pic) values(?,?)"; PreparedStatement pstmt=conn.getPreparedStatement(sql);

pstmt.setString(1,picname);

pstmt.setBinaryStream(2,str,str.available());

pstmt.execute();

//将数据存入数据库

out.println("Success,You Have Insert an Image Successfully");

%>

4. 网页中动态显示图片

接下来我们要编程从数据库中取出图片,其代码如下所示。

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.sql.*" %>

<%@ page import="java.util.*"%>

<%@ page import="java.text.*"%>

<%@ page import="java.io.*"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+ ":"+request.getServerPort()+path+"/";

%>

My JSP 'testimageout.jsp' starting page

<%

int id= Integer.parseInt(request.getParameter("picid"));

String sql = "select pic from p WHERE picid="+id;

ResultSet rs=conn.getResult(sql);

while(rs.next())

{

ServletOutputStream sout = response.getOutputStream();

//图片输出的输出流

InputStream in = rs.getBinaryStream(1);

byte b[] = new byte[0x7a120];

for(int i = in.read(b); i != -1;)

{

sout.write(b);

//将缓冲区的输入输出到页面

in.read(b);

}

sout.flush();

//输入完毕,清除缓冲

sout.close();

}

%>

将此文件保存为testimageout.jsp文件。下一步要做的工作就是使用HTML标记:

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.sql.*" %>

<%@ page import="java.util.*"%>

<%@ page import="java.text.*"%>

<%@ page import="java.io.*"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+ ":"+request.getServerPort()+path+"/";

%>

My JSP 'lookpic.jsp' starting page

<%

String sql = "select * from p";

ResultSet rs=conn.getResult(sql);

while(rs.next())

{

%>

" width="100" height="100">


<%

}

rs.close();

%>

版权归原版所有!!!

如何将图片插入数据库

简介:这是如何将图片插入数据库的详细页面,介绍了和数据库,java如何将图片插入数据库,如何从数据库读取图片,如何将图片插入oracle数据库,如何从oracle数据库读取图片,java对二进制数据的操作有关的知识,加入收藏请按键盘ctrl+D,谢谢大家的观看!要查看更多有关信息,请点击此处

如何将图片,mp3 ,或是一些二进制类型的数据插入到sqlserver,或是 oracle 数据库 . 方法是通过流进行操作.

创建一张测试表(sqlserver2000)

create table [pictable] (

[id] [int] identity (1, 1) not null ,

[img] [image] not null

) on [primary] textimage_on [primary]

go

1,插入数据库的方法(sqlserver2000)

this.getconnection() 为获得连接的方法.

public void insertpic(string path)...{

和 "如何将图片插入数据库" 有关的数据库编程小帖士:

strong>TAN

TAN函数返回一个角度的正切值。

connection con = this.getconnection();

string sql = "insert into pictable values(?)" ;

try ...{

preparedstatement pstm = con.preparestatement(sql);

inputstream is = new fileinputstream(path);

pstm.setbinarystream(1, is, is.available());

int count = pstm.executeupdate();

if(count>0)...{

system.out.println("插入成功");

}else...{

system.out.println("插入失败");

}

is.close();

pstm.close();

con.close();

} catch (exception e) ...{

e.printstacktrace();

}

}

2,从数据库中读出来的方法.(sqlserver2000)

public void readpic(int id)...{

connection con = this.getconnection();

string sql = "select * from pictable where id=?" ; try ...{

preparedstatement pstm = con.preparestatement(sql); pstm.setint(1, id);

resultset rs = pstm.executequery();

rs.next();

inputstream is = rs.getbinarystream(2);

outputstream os = new fileoutputstream("f:/temp.jpg"); byte[] buff = new byte[1024];

int len = is.read(buff);

while( len !=-1 )...{

os.write(buff);

len = is.read(buff);

}

system.out.println("写入成功");

is.close();

os.close();

pstm.close();

con.close();

} catch (exception e) ...{

e.printstacktrace();

}

}

3,插入数据库的方法(oracle)

public void insertbinary() ...{

connection con = myconnection.getoracleconnection(); string sql = "insert into testbinary values(?,?)"; try ...{

con.setautocommit(false);

preparedstatement pstm = con.preparestatement(sql); pstm.setstring(1, "a1");

pstm.setblob(2, oracle.sql.blob.empty_lob());

int count = pstm.executeupdate();

pstm.close();

pstm = con.preparestatement("select * from testbinary where id=?"); pstm.setstring(1, "a1");

resultset rs = pstm.executequery();

rs.next();

oracle.sql.blob blob = (blob) rs.getblob(2);

outputstream os = blob.getbinaryoutputstream();

fileinputstream fi = new fileinputstream("e:\test.mp3");

byte[] buff = new byte[1024];

int len = fi.read(buff);

while (len != -1) ...{

os.write(buff);

len = fi.read(buff);

}

pstm = con.preparestatement(sql);

pstm.setstring(1, "a1");

pstm.setblob(2, blob);

int res = pstm.executeupdate();

https://www.doczj.com/doc/81842365.html,mit();

pstm.close();

con.close();

if (res > 0) ...{

system.out.println("success");

}

} catch (exception ex) ...{

ex.printstacktrace();

}

}

4,从数据库中读出来的方法.(oracle)

public void readerbinarystream() ...{

connection con = myconnection.getoracleconnection();

try ...{

java.sql.preparedstatement pstm = con.preparestatement(

"select * from testbinary where id='a1'");

resultset rs = pstm.executequery();

rs.next();

oracle.sql.blob blob = (blob) rs.getblob(2);

inputstream is = blob.getbinarystream();

fileoutputstream fi = new fileoutputstream("f:\aaaa.mp3");

byte[] buff = new byte[1024];

int len = is.read(buff);

while (len != -1) ...{

fi.write(buff);

len = is.read(buff);

}

fi.close();

} catch (sqlexception ex) ...{

} catch (filenotfoundexception ex) ...{

ex.printstacktrace();

} catch (ioexception ex) ...{

ex.printstacktrace();

}

}

记录-笔记-java-转移图片-把图片名称插入数据

package aJavaTest;

import java.io.File;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

public class InsertPhoto {

/*

* 数据库连接

*/

public Connection getConnection() {

final String oracleDriverName = "com.mysql.jdbc.Driver";

final String oracleUrlToConnect = "jdbc:mysql://10.20.17.58:3306/fujinshan"; Connection Conn = null;

try {

Class.forName(oracleDriverName);

Conn = DriverManager.getConnection(oracleUrlToConnect, "fjs","1qaz2wsx"); System.out.println("--------数据库连接成功---------");

} catch (Exception ex) {

ex.printStackTrace();

System.out.println("--------数据库连接失败---------");

}

return Conn;

}

/**

* 图片名称修改后转移

*

*/

public void movePhoto(String[] photoStr){

for(int i=0;i

int id=995+i;

String photoUrl="D:\\tem\\photo\\餐馆的图片\\"; //原位置

String photoToUrl="D:\\tem\\photo\\餐馆图片\\"; //换名称转移到的位置

photoUrl=photoUrl+photoStr[i];

photoToUrl=photoToUrl+id+".jpg";

File f=new File(photoUrl);

//String c=f.getParent();

File mm=new File(photoToUrl);

System.out.println(mm.getPath());

if(f.renameTo(mm)){

System.out.println("修改成功!");

}else{

System.out.println("修改失败");

}

}

}

/*

* 读取图片名称

*/

public String[] readPhotoName() {

String photoPath = "D:\\tem\\photo\\餐馆的图片\\";

String[] photoStr = new File(photoPath).list();

// for(int i=0;i

// System.out.println(photoStr[i]);

// }

return photoStr;

}

/**

* 新增图片到数据库

*/

public void addData(Connection conn,String[] photoStr){

for(int i=0;i

int id=995+i;

String sql = "insert into modoer_pictures(shopid,title,folder,filename) values ("+id+",'餐馆图片','2010-02','"+photoStr[i]+"')";

PreparedStatement pstm = null;

try {

pstm = conn.prepareStatement(sql);

pstm.executeUpdate(sql);

System.out.println("******数据插入成功******");

} catch (SQLException e) {

e.printStackTrace();

} finally {

if (pstm != null) {

try {

pstm.close();

} catch (SQLException e) {

e.printStackTrace();

}

pstm = null;

}

}

}

}

/*

* 更新数据库

*/

public void updateData(Connection conn,String[] photoStr) {

for(int i=0;i

String sql = "update modoer_shops set pictures='"+photoStr[i]+"' where pictures='"+0+"'"; PreparedStatement pstm = null;

try {

pstm = conn.prepareStatement(sql);

pstm.executeUpdate();

} catch (SQLException e) {

e.printStackTrace();

} finally {

if (pstm != null) {

try {

pstm.close();

} catch (SQLException e) {

e.printStackTrace();

}

pstm = null;

}

}

}

}

/*

* 从数据库查询数据-测试用

*/

public void findData(Connection conn) {

String sql = "select pid,shopname,pictures from modoer_shops";

PreparedStatement pstm = null;

ResultSet rs = null;

try {

pstm = conn.prepareStatement(sql);

rs = pstm.executeQuery();

while (rs.next()) {

System.out.println("id:-----"+rs.getInt("sid"));

System.out.println("名称:----"+rs.getString("shopname"));

System.out.println("图片:----"+rs.getString("pictures"));

System.out.println("=============================");

}

} catch (SQLException e) {

e.printStackTrace();

} finally {

if (rs != null) {

try {

rs.close();

} catch (SQLException e) {

e.printStackTrace();

}

rs = null;

}

if (pstm != null) {

try {

pstm.close();

} catch (SQLException e) {

e.printStackTrace();

}

pstm = null;

}

}

}

public static void main(String[] args) {

InsertPhoto insertPhoto = new InsertPhoto();

Connection conn = insertPhoto.getConnection();//链接数据库

String[] photoStr=insertPhoto.readPhotoName();//读取图片名称放在数组中

insertPhoto.movePhoto(photoStr); //转移图片

//insertPhoto.findData(conn); //遍历数据库

//insertPhoto.addData(conn,photoStr);

}

}

文章出处:飞诺网

数据库图片的存储

1、引言 数据库应用程序,特别是基于WEB的数据库应用程序,常会涉及到图片信息的存储和显示。通常我们使用的方法是将所要显示的图片存在特定的目录下,在数据库中保存相应的图片的名称,在JSP中建立相应的数据源,利用数据库访问技术处理图片信息。但是,如果我们想动态的显示图片,上述方法就不能满足需要了。我们必须把图片存入数据库,然后通过编程动态地显示我们需要的图片。实际操作中,可以利用JSP的编程模式来实现图片的数据库存储和显示。 2、建立后台数据库 假定处理的是图片新闻,那么我们可以建立相应的数据库及数据表对象。我们要存取的数据表结构的SQL脚本如下所示: if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[picturenews]') andOBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[picturenews] GO CREATE TABLE [dbo].[picturenews] ( [id] [int] IDENTITY (1, 1) NOT NULL , [image] [image] NULL , [content] [varchar] (500) COLLATE Chinese_PRC_CI_AS NULL , [detail] [varchar] (5000) COLLATE Chinese_PRC_CI_AS NULL ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO 表picturenews中,字段id作为标识,每存储一行数据,自动增加1。字段image 用于存储图片信息,其数据类型为“image”。 3、向数据库存储二进制图片 启动Dreamweaver MX后,新建一个JSP文件。其代码如下所示。 <%@ page contentType="text/html;charset=gb2312"%>

网页上看不到图片的解决方法步骤

网页上看不到图片的解决方法步骤 先换一个正规的大站,看下网页图片能否显示,如果依然不行,请查看下本地电脑是否网络过慢,很多时候由于我们电脑的上网速 度很慢,就很容易导致网页图片不能显示出来。我们可以自己测试 下网速,另外一种情况是只是某些网站图片不能显示,那么多半是 网站问题,一般是网页本身或者网站所在服务器速度慢的原因。 适合于以上方法都排除之后依然不能显示图片使用。如果说是浏览器设置的问题,多半是因为禁用了错误禁用了某些插件导致的网 页中图片无法显示,那么可以在IE中进行设置,将需要启用的插件 进行还原,在桌面上右击“InternetExplorer”,选择“属性”, 点击“程序”标签页,在“管理加载项”中将禁用的插件再恢复, 这样就可以解决网页中图片无法显示的问题了。 首先第一个我们先确定网页是不是设置了不显示图片,我们点击浏览器右上角的“工具”-“Internet选项”!然后切换到“高级”!往下拖到多媒体里面就有一个显示图片的选项!这前面需要划勾!! 接下来我们来检测一下flashplayer版本是不是最新的。检测方法。点击开始然后选择控制面板!在控制面板里面找到flashplayer、双击进入切换到高级选项。然后点击立即检测即可。如果不是最新 的就更新一下!! 然后我们点击浏览器右上角的工具。选择管理加载项!!启用shockwaveflash0bject-然后点击确定确定 如果不行我们就把浏览器的安全级别调低一点!!点击浏览器右上角的工具。选择Internet选项。然后切换到安全。把级别调到低。 或者是中等!!

我们打开网页非常慢就可能网速不稳定的原因导致的!!我们可以弄个网速测试的小工具来查看一下那个软件占用了大量的网速。我们把这个限制或者是结束!! 最后如果还不行我们可以下载一个电脑管家。来诊断一下!!或者是用电脑管家来修复一下IE。。即可解决!!

C#从SQL 数据库中读取和存入图片

C#从SQL 数据库中读取和存入图片 本实例主要介绍如何将图片存入数据库。将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStream类、BinaryReader把图片读成字节的形式,赋给一个字节数组,然后用 ADO.SqlCommand对象的ExecuteNonQuery()方法来把数据保存到数据库中。主要代码如下: private void button1_Click(object sender, EventArgs e) { openFileDialog1.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP"; if(openFileDialog1.ShowDialog()==DialogResult.OK) { string fullpath =openFileDialog1.FileName;//文件路径 FileStream fs = new FileStream(fullpath, FileMode.Open); byte[] imagebytes =new byte[fs.Length]; BinaryReader br = new BinaryReader(fs); imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length)); //打开数据库 SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=;database=db_05"); con.Open(); SqlCommand com = new SqlCommand("insert into tb_08 values(@ImageList)",con); com.Parameters.Add("ImageList", SqlDbType.Image); com.Parameters["ImageList"].Value = imagebytes; com.ExecuteNonQuery(); con.Close();

IE浏览器网页部分图片无法显示、PNG图片无法显示的有效解决办法

最近电脑IE浏览器老是有部分图片显示红叉叉,于是上网找“IE图片红X“”IE部分图片无法显示”“网页部分图片无法显示”,始终没找到一个正确的办法解决问题。 正打算再下一个其他浏览器来试验下,发现网速又特别慢,只好一边下着,一边研究图片红X的特征。右键看图片链接属性,然后在IE 里面输入图片具体地址,图片同样显示的是红X,别人的电脑能显示,我的无法显示? 后来仔细一看,发现这些无法显示的图片后缀都是.png,于是上网找“PNG图片无法显示”,很顺利就搞定了。 方法如下:(我是使用的第一个方法就搞定了,刚开始的时候提示没有找到输入点,只好从网上下了个pngfilt.dll,然后运行命令,红X图片能显示了,说明还真是pngfilt.dll图片的问题,只是PNG图片显示效果很失真,我的电脑是XPSP3,我估计是文件版本没下对,就从之前的XPSP3系统GHO文件里面提取这个文件出来,Replacer替换之后,运行命令又提示无输入点,可我打开IE浏览网页的时候发现图片不失真了,晕!总之搞定pngfilt.dll文件就对了,看样子再一次替换SP3的dll文件之后可能不需再运行注册!) 方法一、使用开始——运行,在运行输入框中输入“regsvr32 c:\windows\system32\pngfilt.dll”(然后点击确定) 注意,这个pngfilt.dll在有的系统中是在 c:\windows\system中的,要自己查看一下这文件在哪里,根据自己的系统修改一下路径。如果在注册时出现“已加载 c:\windows\system32\pngfilt.dll,但没有找到DllRegisterSever 输入点。无法注册这个文件”,则表明这个文件可能损坏了,你要去别的机子去Copy一个好的过来。再进行一次注册。(也可以去网上下载一个pngfilt.dll,切记在覆盖原文件时一定要在系统的安全模式下,否则系统会不断还原,也可以使用Replacer等类似软件工具进行替换) 方法二、1、“开始”菜单——“ 运行”,在打开处输入“regsvr32 pngfilt.dll”——点“确定”。 2、“开始”菜单——“ 运行”,在打开处输入“regedit”——点“确定”打开注册表编辑。 3、找到HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/INTERNET EXPLORER/EMBEDEXTNTOCLSIDMAPPINGS 文件夹(左边) 点“EMBEDEXTNTOCLSIDMAPPINGS”看其子文件夹里有没有“.PNG” 4、假若没有“.PNG”文件夹,则选定“EMBEDEXTNTOCLSIDMAPPINGS”文件夹,指着它点鼠标右键——新建“项”——将新建文件夹命名为“.png”——选定新建的“.png”——在右边栏空白处,点鼠标右键——新建“字符串值”——将新建“字符串值”命名为“clsid”(也可用重命名)——双击打开“clsid”——在“数值数据”填“02BF25D5——8C17——4B23——BC80——D3488ABDDC6B”——点“确定”即可。 5、关闭IE浏览器,重新打开IE,这时png图片就能正常显示了。 方法三、开始——运行,在运行输入框中输入“Regedit”,到这个路径 “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Accepted Documents”,在右边右键“新建”——“字符串值” 紧接着最大的数字命名,我这里是3,故命名为4,并赋值为“image/png” 文件丢失,pngfilt.dll是个关键文件,应该在c:\windows\system32\路径下,此文件丢失会引起该故障。 2 文件注册项损坏,如果pngfilt.dll文件如果存在,那么可能是注册项丢失。使用开始->运行,在运行输入框中输入“regsvr32 c:\windows\system32\pngfilt.dll”(然后点击确定)。 我搜索了一下机器,发现该文件存在却不在system32路径下,于是copy过去解决。 昨天开机发现我的IE出了故障,浏览很多图片的时候无法显示,很是郁闷,思索了半天也没有找到有效的办法,后来只好GOOGLE之,这时候发现一篇文章,给了我很大帮助。特转载如下,一些地方稍作修改,以求新手更加明白,希望原作者见谅。原文地址可以在梁宏舍的专栏找到,点击进入。

怎样将图片上传到数据库进行保存

这个范例共包括三个ASP文件和一个数据库(一个表),全部在同一目录下。 1、tblImage 表结构(ACCESS 2000) sn 自动编号序列号 content-type 文本图片类型 image OLE 对象图片数据 2、SimpleImageToData.asp:上传表单及保存图片到数据库的代码部分,主要文件。 <%@ Language=VBScript %> <% option explicit %> <% '从一个完整路径中析出文件名称 function getFileNamefromPath(strPath) getFileNamefromPath = mid(strPath,instrrev(strPath,"\")+1) end function '定义数据库连接字符串 dim cnstr cnstr = "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.MapPath("./upload.mdb") %> 单个图像保存到数据库 上传图片 显示图片


<% if request.ServerVariables("REQUEST_METHOD") = "POST" then dim sCome, sGo, binData, strData dim posB, posE, posSB, posSE dim binCrlf dim strPath, strFileName, strContentType binCrlf = chrb(13)&chrb(10) '定义一个单字节的回车换行符

如何将图片插入到数据库中

试验十数据库编程 1、新建项目项目名称为“dbgl”。 2、设计如下窗体: 窗体上放置的控件有:7个按钮,一个groupBox,4个label,4个textBox,1个pictureBox和1个dataGridView。 3、编写连接数据库的类 鼠标单击菜单栏上的“项目”选择“项目”菜单中的“添加类”命令,为“dbgl”项目添加连接数据库的类,类名是:DbConnection。如下图所示:

DbConnection类的代码如下图所示:注意需要引入System.Data.SqlClient名称空间。 4、编写操作数据的类 为“dbgl”项目添加操作数据的类,该类名为“DbOperation”。 首先,实例化“DbConnection”类,代码如下: 其次,编写方法getdataset,该方法返回一个DataSet对象的数据集。代码如下: 接着编写执行SQL语句的方法“sqlcmd”。该方法的代码如下:

最后编写方法“GetTable”,该方法用于返回一个DataTable类型的数据。代码如下: 5、为窗体编写代码,完成对数据库操作的功能。 在窗体的代码视图中: (1)定义一个窗体级别的BindingManagerBase类变量mybind用来管理多个控件绑定到一个数据源,以便实现同步操作。代码如下: (2)在窗体的Load事件中编写,为相关控件绑定相数据。代码如下:

(3)为“第一条”按钮控件编写代码:代码如下图所示: (4)为“下一条”按钮控件编写代码:代码如下图所示: (5)为“上一条”按钮控件编写代码:代码如下图所示: (6)为“最后一条”按钮控件编写代码:代码(略)。自己编写

网页上的图片不显示的解决方法

网页上的图片不显示的解决方法 方法1、 原因是你的阻挡了所有网站COOKIES,导致对方无法读取你的COOKIES,所以无法显示验证码图框。另外有些网站的验证码采用FLASH形式显示,这要装Adobe Flash Player ActiveX插件的,不安装可能都是显示“X”。 1、打开IE浏览器→工具→Inter net选项→隐私(设置为低)→确定,保存退出 2、打开IE浏览器→工具→Internet选项→高级→在“显示图片”的框框打√,或直接“恢复默认值”。

3、下载Adobe Flash Player ActiveX控件(请使用右键迅雷下载)进行独立安装,然后重启电脑。 方法2、 开始->运行,

在运行输入框中输入“regsvr32 c:\windows\system32\pngfilt.dll”(不包含双引号) 然后点击确定,如果在出现“已加载c:\windows\system32\pngfilt.dll,但没有找到DllRegisterSever 输入点,无法注册这个文件”,则表明这个文件可能损坏了 你要去别的机子去Copy一个好的过来(也可以来这个网站下载: https://www.doczj.com/doc/81842365.html,/tool/dll.asp)

再进行一次注册,即:开始->运行,在运行输入框中输入“regsvr32 c:\windows\system32\pngfilt.dll”(不包含双引号),如果出现“c:\windows\system32\pngfilt.dll 中的DllRegisterServer 成功” 说明问题已经解决了。 如果在覆盖“pngfilt.dll”文件时,提示“无法复制PNGFILT:文件正被另一个人或程序使用。关闭任何可能使用这个文件的程序,重新试一次。”,就把“c:\windows\system32\pngfilt.dll”这个文件用文件粉碎机粉碎掉,然后把新的“pngfilt.dll”文件粘贴过来就OK了! 方法3、 一些要求身份验证的网站使用在ASP中动态生成xbm格式图片的方法来显示验证码,但xp sp2默认设置不支持xbm格式图片。 新建文本文件~~把下面文字复制到文件中~~把文本文件改名为“xx.reg”文件,导入即可解决问题。 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Security] "BlockXBM"=dword:00000000

C# 图片保存到数据库和从数据库读取图片并显示

C# 图片保存到数据库和从数据库读取图片并显示 图片保存到数据库的方法: public void imgToDB(string sql) { //参数sql中要求保存的imge变量名称为@images //调用方法如:imgToDB("update UserPhoto set Photo=@images where UserNo='" + temp + "'"); FileStream fs = File.OpenRead(t_photo.Text); byte[] imageb = new byte[fs.Length]; fs.Read(imageb, 0, imageb.Length); fs.Close(); SqlCommand com3 = new SqlCommand (sql,con); com3.Parameters.Add("@images", SqlDbType.Image).Value = imageb; if (com3.Connection.State == ConnectionState.Closed) com3.Connection.Open(); try { com3.ExecuteNonQuery(); } catch { } finally { com3.Connection.Close(); } } 数据库中读出图片并显示在picturebox中: 方法一: private void ShowImage(string sql) { //调用方法如:ShowImage("select Photo from UserPhoto where UserNo='" + userno +"'"); SqlCommand cmd = new SqlCommand(sql, conn); conn.Open(); byte[] b= (byte[])cmd.ExecuteScalar(); if (b.Length 〉0) { MemoryStream stream = new MemoryStream(b, true); stream.Write(b, 0, b.Length); pictureBox1.Image = new Bitmap(stream); stream.Close(); } conn.Close(); }

上传图片及存到数据库

1.上传图片到指定的文件夹,并且把图片的路径存到数据库里面。 //判断上传是否有文件 if (FileUpload1.HasFile) { string filepath = FileUpload1.PostedFile.FileName.ToString(); //将图片保存到项目文件夹image里面 string fileName = System.IO.Path.GetFileName(filepath); string savePaht = Server.MapPath("images/" + fileName); FileUpload1.SaveAs(savePaht); string strSql = "insert into userInfo (userimage) values ('"+ filepath+"')"; // string strSql = "insert into userInfo (userimage) values (@image)"; //userInfo 是表名userimage是图片的字段 Sqlconnection conn=new Sqlconnection(@"数据库的连接字符串"); SqlCommand cmd = new SqlCommand(strSql, conn); conn.open(); //cmd.parameters.add("@image",sqldbtype.varchar,100).value="./image"+filepath; cmd.ExecuteNonQuery(); } 2.遍历文件夹里面的图片,显示在datalist里面 //获取图片所在的文件夹的路径 DirectoryInfo imagesfile = new DirectoryInfo(Server.MapPath("./images")); //绑定数据源 DataList1.DataSource = imagesfile.GetFiles("*.jpg"); DataList1.DataBind();

网页不显示图片,显示小叉叉

打开网页的时候,图片不显示显示红色的小叉叉,而且有的时候,登陆某些页面的时候,不显示登陆的按钮,其实不显示的大多数是png图片,那么我来介绍中解决该种问题的办法吧,本人已经试过了,主要是我的已经出现了好几次这样的状态,所以拿来与大家分享!希望能够帮助到大家。内有具体的图示步骤。 复制以下代码: Windows Registry Editor V ersion 5.00 [HKEY_CLASSES_ROOT\MIME] [HKEY_CLASSES_ROOT\MIME\Database] [HKEY_CLASSES_ROOT\MIME\Database\Bootstrap Content Type] "application/vnd.ms-xpsdocument"="{c18d5e87-12b4-46a3-ae40-67cf39bc6758}" "application/x-ms-application"="{0a402d70-1f10-4ae7-bec9-286a98240695}" "application/x-ms-xbap"="{89f11169-844a-4725-b7a5-c342c50431a7}" "application/xaml+xml"="{7210ff00-0bcf-4dba-992a-80f60882922b}" [HKEY_CLASSES_ROOT\MIME\Database\Content Type] [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/atom+xml] "CLSID"="{528d46b3-3a4b-4b13-bf74-d9cbd7306e07}" [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/fractals] "Extension"=".fif" [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/futuresplash] "Extension"=".spl" "CLSID"="{D27CDB6E-AE6D-11cf-96B8-444553540000}" [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/hta] "CLSID"="{3050f4d8-98B5-11CF-BB82-00AA00BDCE0B}" "Extension"=".hta" [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/kset] "Extension"=".et"

存储过程_将图片存入数据库

一、写一个存储过程,将图片存入数据库中 基本情况介绍: 数据库版本:oracle 11g 数据库用户:scott 数据库密码:tiger JDK:1.6 要导入的图片:D:\picture\1.jpg --创建存储图片的表 CREATE TABLE IMAGE_LOB (T_ID V ARCHAR2 (5) NOT NULL,T_IMAGE BLOB NOT NULL); --创建存储图片的目录 CREATE OR REPLACE DIRECTORY IMAGES AS 'D:\picture'; 存储过程如下: CREATE OR REPLACE PROCEDURE IMG_INSERT (TID V ARCHAR2,FILENAME V ARCHAR2) AS F_LOB BFILE;--文件类型 B_LOB BLOB; BEGIN iNSERT INTO IMAGE_LOB (T_ID, T_IMAGE) V ALUES (TID,EMPTY_BLOB ()) RETURN T_IMAGE INTO B_LOB; --插入空的blob F_LOB:= BFILENAME ('IMAGES', FILENAME); --获取指定目录下的文件 DBMS_LOB.FILEOPEN(F_LOB, DBMS_LOB.FILE_READONL Y); --以只读的方式打开文件 DBMS_LOB.LOADFROMFILE (B_LOB, F_LOB,DBMS_LOB.GETLENGTH (F_LOB)); --传递对象 DBMS_LOB.FILECLOSE (F_LOB); --关闭原始文件 COMMIT; END;

将图片插入到数据库中代码

详解图片上传到数据库 2011-04-19 10:32 冯东博客园我要评论(0)字号:T | T 数据库中的储存内容不是单单的数据,内容也是丰富多彩的,如今数据库可以实现将图片上传到数据库,下文中就为大家详细介绍将图片上传到数据库的知识。 AD: 下面我来汇总一下如何将图片保存到SqlServer、Oracle、Access数据库中,下文内容供大家参考学习,希望对大家能够有所帮助。 首先,我们要明白图片是以二进制的形式保存在数据库中的,那么把图片保存到数据库中的步骤大体上有这几步 1.将图片转换为二进制数组(byte[]); 2.把转换后的二进制数组(byte[])作为参数传递给要执行的Command; 3.执行Command; 首先,如何把图片转换成byte[],如果你使用的是https://www.doczj.com/doc/81842365.html,2.0,那么你可以使用FileUpLoad控件来实现byte[] fileData = this.FileUpload1.FileBytes; 如果你用的是https://www.doczj.com/doc/81842365.html,1.1或者你在创建WinForm那么你可以使用下面的方法来把图片转换为byte[] 1.public byte[] getBytes(string filePath) 2.{ 3.System.IO.FileStream fs = new System.IO.FileStream(filePath, System. IO.FileMode.Open); 4.byte[] imgData = new byte[fs.Length]; 5.fs.Read(imgData, 0, (int)fs.Length); 6.return imgData; 7.} 8. 接下来我们要做的就是要把已经得到的byte[]作为参数传递给Command对象 1.SqlServer数据库。SqlServer有Image字段类型,最大可以存储2G的数据。 byte[] fileData = this.FileUpload1.FileBytes; 1.string sql = "insert into t_img(img) values (@img)"; 2.string strconn = System.Configuration.ConfigurationManager.Connectio nStrings["fengdongDB"].ToString();

将数据库中保存的图片缩小的一种方法

在数据库的日常维护中,经常遇到一些小问题需要处理,比如图片的存储,说起来也是我当初程序设计考虑不全。 数据库: SQLServer 2000 程序:Delphi 图片存放字段类型: BLOB 客户只存了不到1000张图片,结果数据库存放空间现在是相当的大了, 因客户端用户上传图片时,小的几M,大的几十M,主要是数码相机照的,最开始时,我的软件没有处理大小, 最近才缩小处理后再保存. 而现在资料库文件就是40多G了 带来问题:查询带图片的功能时很慢,每次备份时很慢,且备份文件也大。以后如果继续增大…… 解决方法:改变数据库中图片的大小, 在保证1024*768的清晰程度下,尽可能小的改变资料库容量。 使用中间图片c:\tmp.jpg取出数据库的图形,按比例缩小,然后保存在数据库中,再收缩数据库。 具体过程: 1.将数据库中图片取出用TADOBlobStream处理。 2.用函数ZoomJpgSize(iLen,iWid,picBlob)等比例缩小。 3.用TADOBlobStream将图片保存回数据库。 4.收缩数据库DBCC SHINKDATABASE('bb001',TRUNCATEONLY) 具体核心代码见附件。 test_ZoomJpg.rar 最后问题得以解决. 最后文件大小从40G下降到了不到1G。 说明: 1.源程序可以继续改进,TADOBlobStream流是否可以转为二进制直接压缩。欢迎交流15196670@https://www.doczj.com/doc/81842365.html, 2.源程序用c:\tmp.jpg处理几M的图片时速度慢。 3.源程序图片处理可以继续加强,如放大,缩小,导出本地文件,旋转等功能。

如何复制网页上无法复制的图片

如何复制网页上无法复制的图片 很多资料性的网络文章,往往在网页禁止使用“复制”、“粘贴”命令。其解决方法如下:方法一、最简单的破解方法:单击IE浏览器的“工具”——“internet 选项”——“安全”,将其中的“internet”的安全级别设为最高级别,“确定”后刷新网页即可。 安全级别最高的时候,一切控件和脚本均不能运行,再厉害的网页限制手段统统全部作废。 方法二、破解网页不能复制的方法: 但对有些网页却不管用因为他们并不用脚本限制我们的(好象起点就是这样),他们在网页中加了如下代码: 禁止左键〈body onselectstart='return false'〉 禁止右键〈body oncontextmenu=self.event.returnvalue=false〉 结合起来禁止左右键 〈body oncontextmenu=self.event.returnvalue=false onselectstart='return false'>左右键被禁止了自然无法复制什么的了,在浏览器里查看源文件,搜索oncontextmenu.false之类的代码删除,再刷新就可以了。 现在一般禁止网页复制的代码就是在里加入以下代码: 以前我是用这样解决的,就是先把网页另存为,保存在本地之后,再对本地的那个页面用记事本编辑,把上面这段代码去掉就可以复制内容了。 方法三、破解网页不能复制的方法:用word破解 某些网页中的文字无论用什么方法都不能选中复制。因为被禁止复制了,如果要得到其中的某段文字,虽然可以用降低安全级别、查看源文件等方法来实施,但我们还可以用常用的Word来更为简单方便的获取。

介绍如何将图片存入数据库

本实例主要介绍如何将图片存入数据库。将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStream类、BinaryReader把图片读成字节的形式,赋给一个字节数组,然后用ADO.SqlCommand对象的ExecuteNonQuery()方法来把数据保存到数据库中。主要代码如下: private void button1_Click(object sender, EventArgs e) { openFileDialog1.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP"; if(openFileDialog1.ShowDialog()==DialogResult.OK) { string fullpath =openFileDialog1.FileName;//文件路径 FileStream fs = new FileStream(fullpath, FileMode.Open); byte[] imagebytes =new byte[fs.Length]; BinaryReader br = new BinaryReader(fs); imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length)); //打开数据库 SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=;database=db_05"); con.Open(); SqlCommand com = new SqlCommand("insert into tb_08 values(@ImageList)",con); com.Parameters.Add("ImageList", SqlDbType.Image); com.Parameters["ImageList"].Value = imagebytes; com.ExecuteNonQuery(); con.Close(); }

存储图片到SQLSERVER大数据库中

实用标准文档 如何存储图片到SQL SERVER数据库中 SQL Server提供了一个特别的数据类型:image,它是一个包含binary数据的类型。 下边这个例子就向你展示了如何将文本或照片放入到数据库中的办法。在这篇文章中我们要看到如何在SQL Server中存储和读取图片。 1、建立一个表: 在SQL SERVER中建立这样结构的一个表: 列名类型目的 ID Integer主键ID IMGTITLEVarchar(50)图片的标题 IMGTYPEVarchar(50)图片类型. https://www.doczj.com/doc/81842365.html,要以辨认的类型 IMGDATA Image用于存储二进制数据 2、存储图片到SQL SERVER数据库中 为了能存储到表中,你首先要上传它们到你的WEB服务器上,你可以开发一个webform,它用来将客户端中TextBoxwebcontrol中的图片入到你的WEB服务器上来。将你的encType属性设置为:myltipart/formdata. Stream imgdatastream = File1.PostedFile.InputStream; int imgdatalen = File1.PostedFile.ContentLength; string imgtype = File1.PostedFile.ContentType; string imgtitle = TextBox1.Text; byte[] imgdata = new byte[imgdatalen];

int n = imgdatastream.Read(imgdata,0,imgdatalen); string connstr=((NameValueCollection)Context.GetConfig("appSettings"))["connstr"];S qlConnection connection = new SqlConnection(connstr); SqlCommand command = new SqlCommand ("INSERT INTO ImageStore(imgtitle,imgtype,imgdata) VALUES ( @imgtitle, @imgtype,@imgdata )", connection );SqlParameter paramTitle = new SqlParameter ("@imgtitle", SqlDbType.VarChar,50 ); paramTitle.Value = imgtitle; command.Parameters.Add( paramTitle); SqlParameter paramData = new SqlParameter( "@imgdata", SqlDbType.Image );文案大全 实用标准文档 paramData.Value = imgdata; command.Parameters.Add( paramData ); SqlParameter paramType = new SqlParameter( "@imgtype", SqlDbType.VarChar,50 );paramType.Value = imgtype; command.Parameters.Add( paramType ); connection.Open(); int numRowsAffected = command.ExecuteNonQuery(); connection.Close(); 3、从数据库中恢复读取

图片保存到mysql数据库

在我们设计和制作网站的过程中,有时把图片保存到数据库中要比存成文件的形式更加方便。PHP和MySQL这对黄金组合可以很容易的实现上述功能。在本文中,我们将会向读者介绍如何把图片保存到MySQL数据库中以及如何将数据库中的图片显示出来。 设置数据库 我们通常在数据库中所使用的文本或整数类型的字段和需要用来保存图片的字段的不同之处就在于两者所需要保存的数据量不同。MySQL数据库使用专门的字段来保存大容量的数据,数据类型为BLOB。 MySQL数据库为BLOB做出的定义如下:BLOB数据类型是一种大型的二进制对象,可以保存可变数量的数据。BLOB具有四种类型,分别是TINYBLOB,BLOB, MEDIUMBLOB 和LONGBLOB,区别在于各自所能够保存的最大数据长度不同。 在介绍了所需要使用的数据类型之后,我们可以使用以下语句创建保存图象的数据表。 CREATE TABLE Images ( PicNum int NOT NULL AUTO_INCREMENT PRIMARY KEY, Image BLOB ); 编写上传脚本 关于如何实现文件的上传,我们在这里就不再介绍了。现在,我

们主要来看一下如何接收上传文件并将其存入到MySQL数据库中。具体的脚本代码如下,其中我们假定文件上传域的名称为Picture。 这样,我们就可以成功的把图片保存到数据库中。如果在将图片插入MySQL的过程中出现问题,可以检查一下MySQL数据库所允许的最大数据包的大小。如果设置值过小的话,我们会在数据库的错误日志中找到相应的记录。 下面,我们简单说明一下上述脚本程序。首先,我们通过“If($Picture != "none")”检查是否有文件被上传。然后,使用addslashes()函数避免出现数据格式错误。最后,连接MySQL,选择数据库并插入图片。 显示图片 在知道了如何将图片存入数据库之后,我们就需要考虑怎样才能从

上传图片及存到大数据库

实用标准文案 1.上传图片到指定的文件夹,并且把图片的路径存到数据库里面。 //判断上传是否有文件 if (FileUpload1.HasFile) { string filepath = FileUpload1.PostedFile.FileName.ToString(); //将图片保存到项目文件夹image里面 string fileName = System.IO.Path.GetFileName(filepath); string savePaht = Server.MapPath("images/" + fileName); FileUpload1.SaveAs(savePaht); string strSql = "insert into userInfo (userimage) values ('"+ filepath+"')"; // string strSql = "insert into userInfo (userimage) values (@image)"; //userInfo 是表名 userimage是图片的字段 Sqlconnection conn=new Sqlconnection(@"数据库的连接字符串"); SqlCommand cmd = new SqlCommand(strSql, conn); conn.open(); //cmd.parameters.add("@image",sqldbtype.varchar,100).value="./image"+filepath; cmd.ExecuteNonQuery(); } 2.遍历文件夹里面的图片,显示在datalist里面 //获取图片所在的文件夹的路径 DirectoryInfo imagesfile = new DirectoryInfo(Server.MapPath("./images")); //绑定数据源 DataList1.DataSource = imagesfile.GetFiles("*.jpg"); DataList1.DataBind(); 精彩文档

相关主题
文本预览
相关文档 最新文档