资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

php多数据多图片提交,PHP上传图片到数据库

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;

}

?

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 系列化来存储:

?php

print_r($_FILES);//你可以打印一下它,看看它的结构

if(!empty($_FILES)){

foreach($_FILES['file']['name'] as $k=$v){

 //$_FILES["file"]都变成$_FILES["file"][$k]操作进行操作吧

 if ($_FILES['file'][$k]['error'] == 0) {

$filetype = array("jpg","JPG");

$arr = explode(".", $_FILES["file"][$k]["name"]);

...//同样的代码

 }

}

}

?

form name="" action="" method="post" enctype="multipart/form-data"

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

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

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

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

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

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

input type="submit" name="a" value="提交" /

/form

PHP多图片上传问题,不管我选择几个图片进行上传,但是,只能传上去最后添加的一张

?php

$db="editor";

$user="admin";

$pas="admin";

$conn=mysql_connect("localhost",$user,$pas) or die("连接错误");

mysql_select_db($db,$conn);

mysql_query("set names 'GB2312'");

$nba=$_FILES["bai"]["name"];

$tmpname=$_FILES["bai"]["tmp_name"];

$size=$_FILES["bai"]["size"];

$type=$_FILES["bai"]["type"];

$error=$_FILES["bai"]["error"];

if (file_exists("../upload/".$nba )){

echo "文件已存在";

}else {

foreach ($error as $key=$val){

if($val==0){

move_uploaded_file($tmpname[$key],"../upload/" .rand().$nba[$key]);

$imgpath="../upload/" .rand().$nba[$key];

echo $imgpath;

$sql1 = "INSERT INTO news (title, content,imgpath) VALUES ('a','b','$imgpath')";

echo $nba[$key]."--------".$tmpname[$key]."----------".$size[$key]."--------------".$type[$key];

echo "br";

}

else {

echo "wrong!";}

}

}

?

html

body

form name="bai" id="bai" method="POST" action="wjsc1.php" enctype="multipart/form-data"

上传文件input type="file" name="bai[]" id="bai" /

br

input type="file" name="bai[]" id="bai" /

br

input type="file" name="bai[]" id="bai" /

br

span style="magrin:0px;padding:0px"input type="image" name="img"/ src="images/submit.gif"/span

/form

/body

/html

自己对比哇,管家要把数组处理好

请帮忙解决PHP上传多图片,并在数据库写入文件路径的问题,谢谢!

把你图片上传那中间的一段代码改成这个:

//图片上传

$files_arr = [];

foreach($_FILES['pictures']['error'] as $key = $error) {

if($error == UPLOAD_ERR_OK) {

$tmp_name = $_FILES['pictures']['tmp_name'][$key];

$name = date('Ymd').rand(1000, 9999).$_FILES['pictures']['name'][$key];

$dir = 'upload/';

$filenameurl = $dir.$name;

$files_arr[] = $filenameurl;

move_uploaded_file($tmp_name, $filenameurl);

}

}

$filenameurl = join(',', $files_arr);

PHP多条数据如何一起提交?

参考如下

多个提交和一个提交的道理是相同的,只是一些细节上要注意。

提交一个,表单是:

form

input type=text name=name

input type=text name=sex

input type=text name=age

input type=text name=address

/form

PHP存数据库的语句是:

$sql="insert into tab(...) values ($_POST[...])";//省略字段和值

那么多个提交的方法一,表单是:

form

input type=text name=name1input type=text name=sex1input type=text name=age1input type=text name=address1

input type=text name=name2input type=text name=sex2input type=text name=age2input type=text name=address2

/form

PHP存数据库语句是:

$sql="insert into tab(...) values ($_POST[...1])";//省略字段和值

mysql_query($sql);

$sql="insert into tab(...) values ($_POST[...2])";//省略字段和值

mysql_query($sql);

上面方法一写的例子是两条,多条的方法相同,技巧就是输出表单使用JS的循环,存盘的PHP代码也可以循环,并且能够判断为空的就不提交,比如表单20条,只填了5条,就只存5条到数据库。

方法二是使用数组,表单:

form

input type=text name=nameinput type=text name=sexinput type=text name=ageinput type=text name=address

input type=text name=nameinput type=text name=sexinput type=text name=ageinput type=text name=address

input type=text name=nameinput type=text name=sexinput type=text name=ageinput type=text name=address

/form

PHP代码是:

for ($i=0;$icount($_POST["name"]);$i++)

if ($_POST["name"][$i]!='')

{

$sql="insert into tab(...) values ($_POST[...][$i])";//省略字段和值

mysql_query($sql);

}

这样表单可以写任意多行,PHP里面是数组,能够自动获取有多少数据。


网站名称:php多数据多图片提交,PHP上传图片到数据库
网页路径:http://cdkjz.cn/article/dscssis.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220