将图片保存到表中并用ajax技术获取图片
创建用于保存图片的表:
create table stockImages
( imageid int primary key identity(1,1),
[filename] varchar(50),
img varbinary(max))
插入本地图片:
insert into stockImages
select '风景',bulkcolumn
from openrowset(bulk 'd:\\img.jpg',single_blob) as x
创建存储过程,检索图片,将二进制数据包含在XML文档片段中:
create proc getImage @id int
as
declare @xmlResult xml
set @xmlResult=(select * from stockImages where imageid=@id for xml auto,elements,root('Items'),binary base64)
select @xmlResult
使用一般处理文件获取检索到得XML文档并发送到客户端:
<%@ WebHandler Language="C#" Class="ImageHandler" %>
using System;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Xml;
public class ImageHandler : IHttpHandler {
public void ProcessRequest (HttpContext context) {
string connectionString =
ConfigurationManager.ConnectionStrings[
"uploadConnectionString"].ConnectionString;
SqlConnection connection = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand("getImage", connection);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@id", SqlDbType.Int).Value = context.Request.QueryString["id"];
try
{
connection.Open();
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
相关文档:
标准XMLHttpRequest操作
abort()
停止当前请求
getAllResponseHeaders()
把HTTP请求的所有响应首部作为键/值对返回
getResponseHeader("header")
返回指定首部的串值
void open(string method, string url, boolean asynch)
建立对服务器的调用。method参 ......
var file = filefromPath(encodeURI(encodeURI(this._input.value)));//黄羽修改 2010年4月8日 //修改后
不好意思那天没有在IE测试
  ......
内容页:
<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="ScriptManagerProxyDemo.WebForm1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<script type="text/javas ......
<html>
<head>
<title>jQuery Ajax 实例演示</title>
</head>
<script language="javascript" src="../lib/jquery.js"></script>
<script language="javascript">
$(document).ready(function ()
{
$('#send_ajax').click(function (){
  ......
Ajax传参乱码 Ajax中文乱码 解决
在Ajax url传参时出现中文乱码的情况,解决方法:
例1: xmlHttp.open("GET","Engine.aspx?Action=getmainsort&Type= ......