thinkphp框架表单数组实现图片批量上传功能示例
本文实例讲述了thinkphp框架表单数组实现图片批量上传功能。分享给大家供大家参考,具体如下:
今天做一个表单数组实现图片批量上传,js不是很会,在网上找了资料改的,html页面如下:
vari=1; functionaddElement(){ vartr=document.createElement('tr'); vartd1=document.createElement("td"); vartd2=document.createElement("td"); vartd3=document.createElement("td"); vartd4=document.createElement("td"); vartd5=document.createElement("td"); vartd6=document.createElement("td"); vartd7=document.createElement("td"); td1.innerHTML="描述:"; td2.innerHTML=" "; td3.innerHTML="图片:"; td4.innerHTML=" 请上传小于2M的图片"; td5.innerHTML="排序:"; td6.innerHTML=" "; td7.innerHTML=" 增加| 删减"; tr.appendChild(td1); tr.appendChild(td2); tr.appendChild(td3); tr.appendChild(td4); tr.appendChild(td5); tr.appendChild(td6); tr.appendChild(td7); tr.id='Elem'+i; document.getElementById('pdr1').appendChild(tr); i++; } functiondropElement(){ varaaa=document.getElementById('Elem'+(i-1)); document.getElementById('pdr1').removeChild(aaa); i--; } functioncheckForm() { for(k=i;k>=0;k--) { if(document.getElementById("image"+k).value=="") { alert("图片不能空"); returnfalse; } } } 描述: 图片: 请上传小于2M的图片 排序: 增加| 删减
在做__APP__/Upimg/upimgs/ind/+ind这段时,刚开始我用的U()函数,但是把js变量i传入U()函数无法解析,所以在这里改为了url方式。
在获取表单数组并插入数据库时用循环遍历并写入数据库:
foreach($data['description']as$key) { $data1['picid']=$fid; $data1['description']=$data['description'][$i]; $data1['image']=$data['image'][$i]; $data1['px']=$data['px'][$i]; $result=$model->add($data1); $i++; }
$data是通过转换来的,可以直接用$_POST,做这个由于不熟悉js,所以在上面花了很多时间,刚开始我是用
vartr=document.createElement('tr'); tr.innerHTML="描述:"; tr.innerHTML+=" "; tr.id='Elem'+i; document.getElementById('pdr1').appendChild(tr);
但是ie不兼容,后又在网上找了上面的方法。
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《ZendFrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。