原理都一样,循环接参,你打印一下它的参数就够就明白了,存储数据库,可以将图片路径之间用|或者逗号,或者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
你foreach ($info as $file)里面写的根本没有意义,里面$data['YMT_pic_xx']一直在被覆盖没有其他操作,最后都得到最后一轮的值,而且你数据表里用来储存图片路径的字段应该一条就够了吧,批量上传没有固定的数目;
应该在遍历的时候操作数据库,把每次遍历出来的值都插入到数据库,上传多少张图片就有多少行记录;
不对意外的BUG处理的情况下可以这样写,
foreach ($info as $file){
$data['YMT_pic_0'] = $file['savepath'] . $file['savename'];
$YMT - add($data);
}
input type="file[]" name="photo" /
input type="file[]" name="photo" /
input type="file[]" name="photo" /
这样会成为一个数组,存的时候把这个数组用implode() 函数分割成字符串,取出来的时候可以使用explode函数(这个方法存的是路径)
还有一种方法是直接存二进制的,这种方法几乎不用对数据库压力很大,而且删除操作会留下很大的磁盘碎片
但是要了解
给你个电子书上面都有
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款