本文实例讲述了thinkphp框架表单数组实现图片批量上传功能。分享给大家供大家参考,具体如下:
今天做一个表单数组实现图片批量上传,js不是很会,在网上找了资料改的,html页面如下:
<script type="text/javascript">var i = 1;function addelement(){ var tr = document.createelement('tr'); var td1=document.createelement("td"); var td2=document.createelement("td"); var td3=document.createelement("td"); var td4=document.createelement("td"); var td5=document.createelement("td"); var td6=document.createelement("td"); var td7=document.createelement("td"); td1.innerhtml="<strong>描述:</strong>"; td2.innerhtml="<textarea name='des[]' ></textarea>"; td3.innerhtml="<strong>图片:</strong>"; td4.innerhtml="<input type='text' name='image[]' id='image"+i+"'/><iframe name=fo frameborder=0 height=24 marginheight=1 marginwidth=1 scrolling=no bordercolor='#ccccff' src='__app__/upimg/upimgs/ind/"+i+"' style='vertical-align: middle;'></iframe><span style='color:red'>请上传小于2m的图片</span>"; td5.innerhtml="<strong>排序:</strong>"; td6.innerhtml="<input type='text' name='px[]' value='5'/>"; td7.innerhtml="<a class='editbtn' href='javascript:void(0);' οnclick='addelement()周冬雨个人资料'>增 加</a> | <a class='editbtn' href='三的序数词javascript:void(0);' οnclick='dropelement()'>删减</a>"; 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++;}function dropelement(){ var aaa = document.getelementbyid('elem'+(i-1)); document.getelementbyid('pdr1').removechild(aaa); i--;}function checkform(){ for(k=i;k>=0;k--) { if(document.getelementbyid("image"+k).value=="") { alert("明妃曲图片不能空"); ret教师节文案urn fal; } }}</script><div style="margin:20px auto"><form method="post" name="form1" action="__url__/inrt" οnsubmit="return checkform();"><input type="hidden" name="fid" value="{$fid}"/><table class="table" cellspacing="1" cellpadding="2" width="90%" align="center"border="0" id="pdr1"> <tbody> <tr > <td width="5%" class="td_bg" align="right"><strong>描述:</strong></td> <td class="td_bg" width="25%"><textarea name="des[]"></textarea></td> <td width="5%" class="td_bg" align="right"><strong>图片:</strong></td> <td class="td_bg" width="25%"> <input type="text" name="image[]" id="image0"/><iframe name=fo frameborder=0 height=24 marginheight=1 marginwidth=1 scrolling=no bordercolor="#ccccff" src="{:u('upimg/upimgs','ind=0')}" style="vertical-align: middle;"></iframe> <span style="color:red">请上传小于2m的图片</span></td> <td width="5%" class="td_bg" align="right"><strong>排序:</strong></td> <td class="td_bg" width="20%"><input type="text" name="px[]" value="5"/></td> <td width="10%" class="td_bg" align="right"><a class="editbtn" href="javascript:void(0);" rel="external nofollow" rel="external nofollow" οnclick="addelement()">增 加</a> | <a class="editbtn" href="javascript:void(0);" rel="external nofollow" rel="external nofollow" οnclick="dropelement()">删减</a></td> </tr> </tbody></table> <input type="submit" name="submit" value关于领导干部报告个人重大事项的规定=" 添 加 "/></form>
在做__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,所以在上面花了很多时间,刚开始我是用
var tr = document.createelement('tr');tr.innerhtml= "<td width='5%' class='td_bg' align='right'><strong>描述:</strong></td>";tr.innerhtml+= "<td class='td_bg' width='25%'><textarea name='des[]'></textarea></td>"; tr.id = 'elem'+i;document.getelementbyid('pdr1').appendchild(tr);
但是ie不兼容,后又在网上找了上面的方法。
本文发布于:2023-04-08 16:38:32,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/020be24ef7fe293b0de547444fa29007.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:thinkphp框架表单数组实现图片批量上传功能示例.doc
本文 PDF 下载地址:thinkphp框架表单数组实现图片批量上传功能示例.pdf
留言与评论(共有 0 条评论) |