原帝国cms的数据格式是:小图::::::大图::::::图片说明,那把它做成这样:小图::::::大图::::::图片说明1@@@@@图片说明2@@@@@图片说明3,这样无论加多少个图片说明都没问题了。
但前提是必须在ReturnAddF(返回自定义字段)之前把图片说明数据给拼合好。ReturnAddF(返回自定义字段)在帝国cms的AddNews跟EditNews函数都有存在,如果在这两个函数内做拼合,那么势必要做2次操作,所以最后我选择在DoPostInfoVar(增加信息处理变量)函数的最后一行增加如下代码:
if($add['mpicname'] && is_array($add['mpicname'])) {
foreach ($add['mpicname'] as $k=>$v) {
$add['mpicname'][$k] = implode('@@@@@',$v);
}
}
这样就能完美的解决问题。
后台–输入表单替换html代码
<script>
function dopicadd()
{var i;
var str="";
var oldi=0;
var j=0;
oldi=parseInt(document.add.morepicnum.value);
for(i=1;i<=document.add.downmorepicnum.value;i++)
{
j=i+oldi;
str=str+"<tr><td width=7%><div align=center>"+j+"</div></td><td width=33%><div align=center><input name=msmallpic[] type=text size=28 id=msmallpic"+j+" ondblclick=SpOpenChFile(1,'msmallpic"+j+"')><br><input type=file name=msmallpfile[] size=15></div></td><td width=30%><div align=center><input name=mbigpic[] type=text size=28 id=mbigpic"+j+" ondblclick=SpOpenChFile(1,'mbigpic"+j+"')><br><input type=file name=mbigpfile[] size=15></div></td><td width=15%><div align=center><textarea name=mpicname["+(j-1)+"][1] rows='3' cols='20'></textarea></div></td><td width=15%><div align=center><textarea name=mpicname["+(j-1)+"][2] rows='3' cols='20'></textarea></div></td><td width=15%><div align=center><textarea name=mpicname["+(j-1)+"][3] rows='3' cols='20'></textarea></div></td><td width=15%><div align=center><textarea name=mpicname["+(j-1)+"][4] rows='3' cols='20'></textarea></div></td><td width=15%><div align=center><textarea name=mpicname["+(j-1)+"][5] rows='3' cols='20'></textarea></div></td></tr>";
}
document.getElementById("addpicdown").innerHTML="<table width='100%' border=0 cellspacing=1 cellpadding=3>"+str+"</table>";
}
</script>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td >
图片地址前缀:
<input name="mpicurl_qz" type="text" id="mpicurl_qz">
<input type="checkbox" name="msavepic" value="1">远程保存 <input type="checkbox" name="mcreatespic" value="1" onclick="if(this.checked){setmcreatespic.style.display='';}else{setmcreatespic.style.display='none';}">生成缩图
<span id="setmcreatespic" style="display:none">:<input type=text name="mcreatespicwidth" size=4 value="<?=$public_r[spicwidth]?>">*<input type=text name="mcreatespicheight" size=4 value="<?=$public_r[spicheight]?>">(宽*高)</span>
<?php
if(TranmoreIsOpen())
{
?>
<input type="button" name="Submit" value="多选上传" onclick="window.open('ecmseditor/tranmore/tranmore.php?type=1&classid=<?=$classid?>&filepass=<?=$filepass?>&infoid=<?=$id?>&modtype=0&sinfo=1&ecmsdo=ecmstmmorepic&tranfrom=2<?=$ecms_hashur['ehref']?>&oldmorepicnum='+document.add.morepicnum.value,'ecmstmpage','width=700,height=550,scrollbars=yes');">
<?php
}
?>
</td>
</tr>
<tr>
<td><table width="100%" border=0 align=center cellpadding=3 cellspacing=1>
<tr bgcolor="#DBEAF5">
<td width="7%"><div align=center>编号</div></td>
<td width="18%"><div align=center>缩图 <font color="#666666">(双击选择)</font></div></td>
<td width="18%"><div align=center>大图 <font color="#666666">(双击选择)</font></div></td>
<td width="12%"><div align=center>图片说明1</div></td>
<td width="12%"><div align=center>图片说明2</div></td>
<td width="12%"><div align=center>图片说明3</div></td>
<td width="12%"><div align=center>图片说明4</div></td>
<td width="12%"><div align=center>图片说明5</div></td>
</tr>
</table></td>
</tr>
<tr>
<td id=defmorepicid>
<?php
if($ecmsfirstpost==1)
{
?>
<table width='100%' border=0 align=center cellpadding=3 cellspacing=1>
<?php
$morepicnum=3;
for($mppathi=1;$mppathi<=$morepicnum;$mppathi++)
{
?>
<tr>
<td width='7%'><div align=center><?=$mppathi?></div></td>
<td width='25%'><div align=center>
<input name=msmallpic[] type=text id='msmallpic<?=$mppathi?>' size=28 ondblclick="SpOpenChFile(1,'msmallpic<?=$mppathi?>');">
<br><input type=file name=msmallpfile[] size=15>
</div></td>
<td width='25%'><div align=center>
<input name=mbigpic[] type=text id='mbigpic<?=$mppathi?>' size=28 ondblclick="SpOpenChFile(1,'mbigpic<?=$mppathi?>');">
<br><input type=file name=mbigpfile[] size=15>
</div></td>
<td width='15%'><div align=center>
<textarea name="mpicname[<?=$mppathi-1?>][1]" rows="3" cols="20"></textarea>
</div></td>
<td width='15%'><div align=center>
<textarea name="mpicname[<?=$mppathi-1?>][2]" rows="3" cols="20"></textarea>
</div></td>
<td width='15%'><div align=center>
<textarea name="mpicname[<?=$mppathi-1?>][3]" rows="3" cols="20"></textarea>
</div></td>
<td width='15%'><div align=center>
<textarea name="mpicname[<?=$mppathi-1?>][4]" rows="3" cols="20"></textarea>
</div></td>
<td width='15%'><div align=center>
<textarea name="mpicname[<?=$mppathi-1?>][5]" rows="3" cols="20"></textarea>
</div></td>
</tr>
<?php
}
?>
</table>
<?php
}
else
{
$morepicpath="";
$morepicnum=0;
if($r[morepic])
{
$r[morepic]=stripSlashes($r[morepic]);
//地址
$j=0;
$pd_record=explode("\r\n",$r[morepic]);
for($i=0;$i<count($pd_record);$i++)
{
$j=$i+1;
$pd_field=explode("::::::",$pd_record[$i]);
$picnameR = explode('@@@@@',$pd_field[2]);
$k=$j-1;
$morepicpath.="<tr>
<td width='7%'><div align=center>".$j."</div></td>
<td width='25%'><div align=center>
<input name=msmallpic[] type=text value='".$pd_field[0]."' size=28 id=msmallpic".$j." ondblclick=\"SpOpenChFile(1,'msmallpic".$j."');\">
<br><input type=file name=msmallpfile[] size=15>
</div></td>
<td width='25%'><div align=center>
<input name=mbigpic[] type=text value='".$pd_field[1]."' size=28 id=mbigpic".$j." ondblclick=\"SpOpenChFile(1,'mbigpic".$j."');\">
<br><input type=file name=mbigpfile[] size=15>
</div></td>
<td width='15%'><div align=center>
<textarea name=mpicname[".$k."][1] id=mpicname1_".$j." rows='3' cols='20'>".$picnameR[0]."</textarea>
</div></td>
<td width='15%'><div align=center>
<textarea name=mpicname[".$k."][2] id=mpicname2_".$j." rows='3' cols='20'>".$picnameR[1]."</textarea>
</div></td>
<td width='15%'><div align=center>
<textarea name=mpicname[".$k."][3] id=mpicname3_".$j." rows='3' cols='20'>".$picnameR[2]."</textarea>
</div></td>
<td width='15%'><div align=center>
<textarea name=mpicname[".$k."][4] id=mpicname4_".$j." rows='3' cols='20'>".$picnameR[3]."</textarea>
</div></td>
<td width='15%'><div align=center>
<textarea name=mpicname[".$k."][5] id=mpicname5_".$j." rows='3' cols='20'>".$picnameR[4]."</textarea> <input type=hidden name=mpicid[] value=".$k."><input type=checkbox name=mdelpicid[] value=".$k.">删
</div></td>
</tr>";
}
$morepicnum=$j;
$morepicpath="<table width='100%' border=0 cellspacing=1 cellpadding=3>".$morepicpath."</table>";
}
echo $morepicpath;
}
?>
</td>
</tr>
<tr>
<td >地址扩展数量: <input name="morepicnum" type="hidden" id="morepicnum" value="<?=$morepicnum?>">
<input name="downmorepicnum" type="text" value="1" size="6"> <input type="button" name="Submit5" value="输出地址" onclick="javascript:dopicadd();"></td>
</tr>
<tr>
<td id=addpicdown></td>
</tr>
</table>
文件改动–e/class/hinfofun.php 搜索DoPostInfoVar函数,在最后增加如下代码
if($add['mpicname'] && is_array($add['mpicname'])) {
foreach ($add['mpicname'] as $k=>$v) {
$add['mpicname'][$k] = implode('@@@@@',$v);
}
}
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。