您的位置:

php多图片上传dome,php上传多张图片

本文目录一览:

ThinkPHP中图片最多一次上传20张,怎么上传更多图片?

$User-fenxiang_fm = 'Uploads/'.$info[0]["savename"]; // 这里的$info[0]["savename"]的下标[0]表示上传的第1个图片按顺序,记住是下标

$User-fenxiang_sc = 'Uploads/'.$info[1]["savename"]; // 这里的$info[1]["savename"]的下标[1]表示上传的第2个图片按顺序,记住是下标

function upload(){

import("ORG.Net.UploadFile");

$upload = new UploadFile();// 实例化上传类

$upload-maxSize = 3145728 ;// 设置附件上传大小

$upload-allowExts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型

$upload-saveRule = time;//这里的时间是根据上传的图片的多少来自动改变图片的名称的(并且时间都不同,所以上传的图片的名称就不会相同)

php怎么一个file上传多张图片?????????

?php /** *类说明: * 使用new关键字实像化类,类中有两个公用方法, * 方法create_input创建表单按键,请在相应的表单处引用该方法就可创建上传表单的input按键 * 方法get_upfile()用于处理上传文件 * 该类由 游天小虾 制作,网页制作交流群:69574955 * **/ class upfile { private $name = 'filename';//input表单名 private $namecount = 2;//设置上传文件的个数 private $type = array('jpg','jpeg','gif','png');//文件格式 private $size = '1024';//文件大小单位kb private $upname = '';//上传文件信息 private $updir = 'upfile/'; private $movename = '';//移动后的文件名 private $uparrs = array();//多文件上传数组 private $error_type =0;//文件上传产生的错误 /** * 创建文件上传的表单控件 * */ public function create_input(){ if(floor($this-namecount) == 1){ $input = "pinput type='file' id=".$this-name." name=".$this-name."/p"; }else{ for($i=0;$i($this-namecount);$i++){ $input .= "pinput type='file' id='".$this-name."[]' name='".$this-name."[]'/p"; } } echo "$input"; } /** * 初始文件信息$file = $_FILES['file']['tem_name'] * **/ private function get_part(){ if($this-namecount == 1){ //判断是否是多文件上传 if($_FILES[$this-name]['tmp_name']){ $this-upname = $_FILES[$this-name]; }else{ $this-error_type += 100; //文件信息错误观点 100; } }else{ if($_FILES[$this-name]){ $this-uparrs = $this-more_updata($_FILES[$this-name],$this-namecount);//对$_FILES取得的文件上信息重写 }else{ $this-error_type += 100; //文件信息错误观点 100; } } } /** * 多文件上传时,数组重写 * **/ private function more_updata($arrs,$num){ for($i=0;$i$num;$i++){ $data[] =array('name'=$arrs[name][$i],'type'=$arrs[type][$i],'tmp_name'=$arrs[tmp_name][$i],'error'=$arrs['error'][$i],'size'=$arrs['size'][$i]); } return $data; } /** * 判断上传文件大小 * **/ private function chck_size(){ if($this-upname['size']*1000 $this-size){ $this-error_type += 300; //文件信息错误观点 300; } } /** * 判断上传文件的类型 * **/ private function chck_type(){ if(!in_array($this-get_suffix($this-upname['name']),$this-type)){ $this-error_type += 500; //文件信息错误观点 500; } } /** * 格式化上传后的文件名 * **/ private function chck_name(){ $this-movename = date(Ymd).substr(md5(rand(0,date(Hms))),0,6)."."; $this-movename .= $this-get_suffix($this-upname['name']); } /** * 移动文件 * **/ private function move_file(){ if($this-updir){ if(!move_uploaded_file($this-upname['tmp_name'],$this-updir.$this-movename)){ $this-error_type += 700; //文件信息错误观点 700; } }else{ mkdir($this-updir,"w"); chmod($this-updir,777); if(!move_uploaded_file($this-upname['tmp_name'],$this-updir.$this-movename)){ $this-error_type += 700; //文件信息错误观点 700; } } } /** * 取得文件的后缀名 * **/ private function get_suffix($filename){//取得文件后缀名 $part = pathinfo($filename); $suffix = $part['extension']; return $suffix; } /** * 文件上传处理 * **/ public function get_upfile() {//主上传方法 if(floor($this-namecount) == 1){ $this-get_part(); $this-chck_name(); $this-chck_type(); $this-chck_size(); if($this-error_type ==0){$this-move_file();} if($this-error_type ==0){ echo "$this-movename 上传成功 br"; }else{ echo "$this-movename 上传失败,错误: $this-error_type br"; $this-error_type=0; }; }else{ $this-get_part(); for($i=0;$ifloor($this-namecount);$i++){ $this-upname = ($this-uparrs[$i]); $this-chck_name(); $this-chck_type(); $this-chck_size(); if($this-error_type ==0){$this-move_file();} if($this-error_type ==0){ echo "$this-movename 上传成功 br"; }else{ echo "$this-movename 上传失败,错误: $this-error_type br"; $this-error_type=0; }; } } } } $up = new upfile(); if($_POST['t1']){ $up-get_upfile(); } ? form name='f1' enctype = multipart/form-data action="" method="post" input type='text' name='t1'br ?php $up-create_input(); ? input type='submit' value='上传' /from 刚不久写的一个文件上传的类!上面已经有说明了,你参考一下,不明白的话,可以问我,或者加入我们的QQ群讨论!

php 怎样实现同时上传多张图片

有详细的注释,不清楚直接CALL我

主要是利用了JS来控制文件域,增加或者删除来实现的。

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ""

html xmlns=""

head

meta http-equiv="Content-Type" content="text/html; charset=gbk" /

meta name="Keywords" content=""/

meta name="Description" content=""/

title动态添加图片/title

script type="text/javascript"

function addimg(){

//包含所有文件域的DIV

var div = document.getElementById('imgs');

//文件域

var input = document.createElement("input");

input.name = "img[]";

input.type = 'file';

//添加

div.appendChild(input);

//删除按钮

var button = document.createElement("a");

button.href = "javascript:;";

button.innerHTML = '删除';

div.appendChild(button);

//换行

var br = document.createElement("br");

div.appendChild(br);

//在按钮上增加删除的事件

button.onclick = function(){

input.parentNode.removeChild(input);

this.parentNode.removeChild(this);

br.parentNode.removeChild(br);

}

}

/script

/head

body

form method="POST" enctype="multipart/form-data" action="upload.php"

请选择图片:

div id="imgs"

input type="file" name="img[]"/br/

/div

input type="button" onclick="addimg()" value="增加"/

/form

/body

/html

多张图片上传 删除 修改 PHP

方法一:

你这样以json

的形式保持多条记录

不好修改数据记录的,程序些下来也比较纠结

改一下数据表里面的结构吧,,,一张图片一个字段(pic1,pic2,pic3,pic4)

方法二:

在修改页面的时候

json

数据

格式化为

数组

用foreach

把这些图片路径

循环到

隐藏域里面

点击删除

一个

时候

就用js

删除图片对应的隐藏域

(至于图片的删除

可以用ajax

来实现)

最后表单提交的时候

就值接收到了

没有删除的图片的隐藏域

保存更改入库就

行了!

希望对你有用

php 异步上传图片几种方法总结

代码如下

form action="upload.php" id="form1" name="form1" enctype="multipart/form-data" method="post" target="uploadIframe" !--上传图片页面 -- /form iframe name="uploadIframe" id="uploadIframe" style="display:none"/iframe

然后后台处理完上传图片逻辑后返回给前台,利用ajax修改当前页面DOM对象实现无刷新上传图片的友好功能。

实例

代码如下

a.html form enctype="multipart/form-data" action="a.php" target="ifram_sign" method="POST" input name="submit" id="submit" value="" type="hidden" label上传文件: input name="test_file" type="file" id="test_file" size="48"/label input type="image" value="立即上传" id="submit_btn" /formiframe name="ifram_sign" src="" frameborder="0" height="0" width="0" marginheight="0" marginwidth="0"/iframe

php代码:

代码如下

?php

if ($_files["test_file"]["error"] 0)

{

echo "Error: " . $_files["test_file"]["error"] . "br /";

}

else

{

//这里的判断图片属性的方法就不写了。自己扩展一下。

$filetype=strrchr($_files["test_file"]["name"],".");

$filetype=substr($filetype,1,strlen($filetype));

$filename="img/".time("YmdHis").".".$filetype;

move_uploaded_file($_files["test_file"]["tmp_name"],$filename);

echo 'script alert(1)/script';

$return="parent.document.getElementByIdx_x('mpic".$pageset_id."').innerhtml='".$dataimgpath."'";

echo "script alert('上传成功')/script";

echo "script{$return}/script";

}

?

其实jquery ajax图片异步上传

html:

!DOCTYPE html PUBLIC "-//W3C//dtd Xhtml 1.0 transitional//EN"

""

html xmlns="" lang="en_US" xml:lang="en_US"

head

title图片异步上传/title

/head

script type="text/javascript" src="js/jquery.js"/script

script type="text/javascript" src="js/index.js"/script

link type="text/css" rel="stylesheet" href="css/index.css"

body

div class="frm"

form name="uploadFrom" id="uploadFrom" action="upload.php" method="post" target="tarframe" enctype="multipart/form-data"

input type="file" id="upload_file" name="upfile"

/form

iframe src="" width="0" height="0" style="display:none;" name="tarframe"/iframe

/div

div id="msg"

/div

/body

/html

index.js

$(function(){

$("#upload_file").change(function(){

$("#uploadFrom").submit();

});

});

function stopSend(str){

var im="img src='upload/images/"+str+"'";

$("#msg").append(im);

}

upload.php

?php

$file=$_files['upfile'];

$name=rand(0,500000).dechex(rand(0,10000)).".jpg";

move_uploaded_file($file['tmp_name'],"upload/images/".$name);

//调用iframe父窗口的js 函数

echo "scriptparent.stopSend('$name')/script";

?

异步上传图片几种方法

php怎么实现批量上传图片?不是一张一张选择之后一起上传 就是打开文件夹全选直接全部上传。

获取路径下的所有图片文件名,写入数据库或是某个变量,在别的页面调用程序上传,再从别的页面读出来就行了。

以下是示例代码:

?php

function upload($fileName,$filePath)

{

//判断该文件是否是用户根据POST方式提交到服务器的上传文件

foreach($_FILES[$fileName]['tmp_name'] as $k=$v)

{

if($_FILES[$fileName]['name'][$k]!="")

{

$result=check($_FILES[$fileName]['size'][$k],$_FILES[$fileName]['type'][$k],$_FILES[$fileName]['name'][$k]);

if($result['error']==1)

{

echo $result['msg']."br";

echo "出错文件:".$result['name']."br";

}

else

{

$arrTT=explode(".",$_FILES[$fileName]['name'][$k]);

$extName=$arrTT[count($arrTT)-1];

$NewName=sha1(microtime()).".".$extName;

if(move_uploaded_file($v,$filePath.$NewName));

$arrWW[]=$NewName;

}

}

}

return $arrWW;

}

function check($size,$types,$name)

{

if($size=5242880)

{

$result['msg']='文件过大!';

$result['error']=1;

$result['name']=$name;

}

$arrType=array('image/pjpeg','image/gif','image/x-png','audio/mp3','application/msword','application/vnd.ms_excel','application/octet-stream','application/vnd.ms-powerpoint');

if(!in_array($types,$arrType))

{

$result['msg']='文件类型不匹配!';

$result['error']=1;

$result['name']=$name;

}

return $result;

}

?