當前位置:首頁 » 文件管理 » 代碼上傳圖片

代碼上傳圖片

發布時間: 2023-01-12 20:57:05

⑴ MVC圖書管理實現上傳圖片功能

展開全部
如果只是上傳的話那太容易了,如果還要顯示那就難了,因為要顯示的話就不能只向伺服器提交一次請求,必須非同步提交。下面的例子是我親自寫的,非同步提交上傳圖片並預覽。全部代碼都在。
首先建一個html文件,復制以下html文本。使用說明:
引用jquery兩個js文件,網上自己搜吧,到處都有。
<script src="jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="jquery.form.js" type="text/javascript"></script>

2.添加兩個文本框,第一個ID必須是「bigImage1」,第二個必須是「smallbigImage1」。
<input type="text" name="url1" id="bigImage1" style="width:150px;" onclick="selectImage(this)" />
<input type="hidden" name="smallUrl1" id="smallbigImage1" value="" />
當點擊第一個文本框時,彈出一個上傳窗口,選擇一張圖片並點「上傳」,上傳成功後可預覽圖片。此過程會在伺服器上把原圖片生成一張縮略圖,並把原圖URL和縮略圖URL一起以JSON格式返回到前台頁面,臨時顯示縮略圖。當點擊「確定」時,它會把兩個URL添加到兩個對應ID的文本框。第二個框是隱藏的,給用戶的感覺就像是只返回一個URL一樣。

⑵ 求一段JS或Jquery非同步上傳圖片的代碼

圖片和文件等流媒體 上傳都是靠from表單的提交。

你可以設置一個隱藏的from表單

裡面有個<input id='file' type='file'>

選擇玩圖片之後賦值給file

然後用jquery from表單提交即可

<formid="form"runat="server"enctype="multipart/form-data">
<inputid='file'type='file'>
</from>
$.ajax({
url:'XXXX',//上傳後台路徑
data:$('#form').serialize(),
type:"POST",
success:function(){

}
});

php上傳圖片到伺服器的前端和php代碼

<?
require_once('../classfile/guid.class.php');

if(!isset($_FILES['imgFile'])){
echojson_encode(array("success"=>false,'msg'=>"NotgetImgfile"));
return;
}
$upfile=$_FILES['imgFile'];
$name=$upfile["name"];//上傳文件的文件名
$type=$upfile["type"];//上傳文件的類型
$size=$upfile["size"];//上傳文件的大小
$tmp_name=$upfile["tmp_name"];//上傳文件的臨時存放路徑
$error_cod=$upfile["error"];
if($error_cod>0){
echojson_encode(array("success"=>false,'msg'=>$error_cod));
}

$ext_file_name="";

switch($type){
case'image/pjpeg':
$okType=true;
$ext_file_name =".jpg";
break;
case'image/jpeg':
$okType=true;
$ext_file_name =".jpg";
break;
case'image/gif':
$okType=true;
$ext_file_name =".gif";
break;
case'image/png':
$okType=true;
$ext_file_name =".png";
break;
}

if(!$okType){
echojson_encode(array("success"=>false,'msg'=>"Notimage"));
return;
}
$web_root="D:".DIRECTORY_SEPARATOR."Easy2PHP5".DIRECTORY_SEPARATOR."webSiteJfz".DIRECTORY_SEPARATOR;

$photo_tmp_path=$web_root."img".DIRECTORY_SEPARATOR."userimg".DIRECTORY_SEPARATOR."temp";
$temp_file_name=creat_guid(0).$ext_file_name;
$photo_tmp_file_name=$photo_tmp_path.DIRECTORY_SEPARATOR.$temp_file_name;
$photo_tmp_file_scr="img".DIRECTORY_SEPARATOR."userimg".DIRECTORY_SEPARATOR."temp".DIRECTORY_SEPARATOR.$temp_file_name;
move_uploaded_file($tmp_name,$photo_tmp_file_name);


echojson_encode(array("success"=>true,'msg'=>"ok","file_name"=>$photo_tmp_file_name,"file_scr"=>$photo_tmp_file_scr));

//echojson_encode(array("success"=>false,'msg'=>json_encode($_FILES['imgFile'])));
return;

?>

guid.class.php//生成唯一的圖片文件名
<?
functioncreat_guid($long){
$uuid="";
if(function_exists('com_create_guid')){
$uuid=com_create_guid();
}else{
mt_srand((double)microtime()*10000);//optionalforphp4.2.0anp.
$charid=strtoupper(md5(uniqid(rand(),true)));
$hyphen=chr(45);//"-"
$uuid=chr(123)//"{"
.substr($charid,0,8).$hyphen
.substr($charid,8,4).$hyphen
.substr($charid,12,4).$hyphen
.substr($charid,16,4).$hyphen
.substr($charid,20,12)
.chr(125);//"}"
//return$uuid;
}
if(!isset($long)||$long==0){
returnsubstr($uuid,1,strlen($uuid)-2);
}else{
return$uuid;
}
}

⑷ 圖片上傳的代碼

<%@ language="javascript"%>
<%
var self = Request.serverVariables("SCRIPT_NAME");
if (Request.serverVariables("REQUEST_METHOD")=="POST")
{
var oo = new uploadFile();
oo.path = "myFile"; //存放路徑,為空表示當前路徑,默認為uploadFile
oo.named = "file"; //命名方式,date表示用日期來命名,file表示用文件名本身,默認為file
oo.ext = "all"; //允許上傳的擴展名,all表示都允許,默認為all
oo.over = true; //當存在相同文件名時是否覆蓋,默認為false
oo.size = 1*1024*1024; //最大位元組數限制,默認為1G
oo.upload();
Response.write('<script type="text/javascript">location.replace("'+self+'")</script>');
}

//ASP無組件上傳類
function uploadFile()
{
var bLen = Request.totalBytes;
var bText = Request.binaryRead(bLen);
var oo = Server.createObject("ADODB.Stream");
oo.mode = 3;
this.path = "uploadFile";
this.named = "file";
this.ext = "all";
this.over = false;
this.size = 1*1024*1024*1024; //1GB

//文件上傳
this.upload = function ()
{
var o = this.getInfo();
if (o.size>this.size)
{
alert("文件過大,不能上傳!");
return;
}
var f = this.getFileName();
var ext = f.replace(/^.+\./,"");
if (this.ext!="all"&&!new RegExp(this.ext.replace(/,/g,"|"),"ig").test(ext))
{
alert("目前暫不支持擴展名為 "+ext+" 的文件上傳!");
return;
}
if (this.named=="date")
{
f = new Date().toLocaleString().replace(/\D/g,"") + "." + ext;
}

oo.open();
oo.type = 1;
oo.write(o.bin);
this.path = this.path.replace(/[^\/\\]$/,"$&/");
var fso = Server.createObject("Scripting.FileSystemObject");
if(this.path!=""&&!fso.folderExists(Server.mapPath(this.path)))
{
fso.createFolder(Server.mapPath(this.path));
}
try
{
oo.saveToFile(Server.mapPath(this.path+f),this.over?2:1);
alert("上傳成功!");
}
catch(e)
{
alert("對不起,此文件已存在!");
}
oo.close();
delete(oo);

}

//獲取二進制和文件位元組數
this.getInfo = function ()
{
oo.open();
oo.type=1;
oo.write(bText);
oo.position = 0;
oo.type=2;
oo.charset="unicode";
var gbCode=escape(oo.readText()).replace(/%u(..)(..)/g,"%$2%$1");
var sPos=gbCode.indexOf("%0D%0A%0D%0A")+12;
var sLength=bLen-(gbCode.substring(0,gbCode.indexOf("%0D%0A")).length/3)-sPos/3-6;
oo.close();

oo.open();
oo.type = 1;
oo.write(bText);
oo.position=sPos/3;
var bFile=oo.read(sLength);
oo.close();

return { bin:bFile, size:sLength };
}

//獲取文件名
this.getFileName = function ()
{
oo.open();
oo.type = 2;
oo.writeText(bText);
oo.position = 0;
oo.charset = "gb2312";
var fileName = oo.readText().match(/filename=\"(.+?)\"/i)[1].split("\\").slice(-1)[0];
oo.close();
return fileName;
}

function alert(msg)
{
Response.write('<script type="text/javascript">alert("'+msg+'");</script>');
}
}
%>
<html>
<head>
<title>ASP無組件上傳類</title>
<meta http-equiv="content-Type" content="text/html; charset=gb2312">
</head>
<body>
<form action="<%=self%>" method="post" enctype="multipart/form-data" onSubmit="return (this.upFile.value!='');">
<input type="file" name="upFile"/>
<input type="submit" value="上傳文件"/>
</form>
</body>
</html>

⑸ HTML表單代碼,上傳圖片封面時出錯怎麼改

對於 input標簽,並且 type="file",其在 HTML中所提供的按鈕樣式是預設的,由系統負責解釋執行,設置 vaule是無效的。

解決辦法有多種,例如:

將 input標簽設置為隱藏,再添加 1 個 button,點擊 button觸發file事件。

以下是簡單的示例:

<inputtype="file"name="picpath"id="picpath"style="display:none;">
<inputtype="button"value="上傳封面"onclick="picpath.click()">

⑹ 這段PHP上傳圖片的代碼,找不出BUG,高分請求幫忙 十個圖片的框,只能上傳五張圖,記錄也只是5。

php.ini中的配置,最大上傳文件數是?

注意這個設置,我這里是20,如果你哪裡是5的話,那就只能同時上傳5個文件

⑺ 使用DW寫ASP代碼上傳圖片,總是提示錯誤

ADODB.Stream這個是說你的資料庫寫入失敗,與上傳沒關系,檢查一下你的MDB資料庫所在文件夾的許可權,要簡單的話可以直接給那個文件夾一個Everyone的完全控制許可權。

熱點內容
倩女幽魂桌面版腳本 發布:2025-09-01 00:49:34 瀏覽:102
androidpull解析xml 發布:2025-09-01 00:39:18 瀏覽:450
禁止代理訪問 發布:2025-09-01 00:35:36 瀏覽:920
泛微源碼 發布:2025-09-01 00:18:49 瀏覽:378
安卓手機文件夾管理 發布:2025-09-01 00:06:23 瀏覽:894
UE編譯項目會編譯源碼 發布:2025-08-31 23:56:45 瀏覽:653
安卓怎麼安裝tar 發布:2025-08-31 23:55:18 瀏覽:682
小米相冊緩存 發布:2025-08-31 23:55:16 瀏覽:24
怎麼查詢電視機的配置 發布:2025-08-31 23:50:59 瀏覽:938
阿里系資料庫 發布:2025-08-31 23:33:47 瀏覽:156