gogo----数组里面的信息显示问题 数据 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 还是处理你上次提交过来的数据吗Array ( [mode] => SETPOINT [snstabId] => 49 [webctrl_page_token] => dd4be4ef0d797d21eeee32267ccfe87d [sel_c_id] => [topscrollleft] => 0 [p] => 1 [searchFlag] => page [member_id] => 1000257015 [pageSize] => 20 [orderby] => member_id [orderbyType] => desc [point] => fdfds [searchMembernickname] => [searchMemberId] => [topictimes1] => [topictimes2] => [pictimes1] => [pictimes2] => [setPointM] => [members] => Array ( [0] => 1000257015 [1] => 1000257014 [2] => 1000256473 [3] => 1000255958 [4] => 1000255957 [5] => 1000255755 [6] => 1000255751 [7] => 1000255750 [8] => 1000255748 [9] => 1000255747 [10] => 1000199511 [11] => 1000031784 [12] => 1000031760 [13] => 1000031716 [14] => 1000031715 [15] => 1000031714 ) [1000257015_point] => fdfds [1000257014_point] => [1000256473_point] => [1000255958_point] => [1000255957_point] => [1000255755_point] => [1000255751_point] => [1000255750_point] => [1000255748_point] => [1000255747_point] => [1000199511_point] => [1000031784_point] => [1000031760_point] => [1000031716_point] => [1000031715_point] => [1000031714_point] => ) 这是你点击按钮时提交过去的数据,你在你的程序里 重新打印一下echo "<pre>";print_r($_POST);die();打印你自己看看 结果,然后告诉我你想怎么弄?说的详细点。 打印出来的代码<pre>Array( [mode] => SETPOINT [snstabId] => 82 [webctrl_page_token] => 9c78e0c1021007a9d241230e148aefd6 [sel_c_id] => [topscrollleft] => 0 [p] => 1 [searchFlag] => page [member_id] => 1000256475 [pageSize] => 20 [orderby] => member_id [orderbyType] => desc [point] => [searchMembernickname] => [searchMemberId] => [topictimes1] => [topictimes2] => [pictimes1] => [pictimes2] => [setPointM] => [members] => Array ( [0] => 1000256489 [1] => 1000256488 [2] => 1000256476 [3] => 1000256475 [4] => 1000256404 [5] => 1000256368 [6] => 1000256367 ) [1000256489_point] => [1000256488_point] => [1000256476_point] => [1000256475_point] => [1000256404_point] => [1000256368_point] => [1000256367_point] => )还是上次那个问题,但是我现在要先把这个例子做出来,就是这个帖子里面给出的数组。。实现的效果如图片所示类似于这样,要把数组里面的数据显示出来。我给你一些代码参考,都是写在tpl里面的。 <td width="16%"> <{assign var="temp_type" value=$selList[loop].type }> <{$allarr_account_type[$temp_type]}> </td> <td> <{assign var="temp_sex" value=$selList[loop].sex }> <{$arr_sex[$temp_sex]}> </td><{assign var="opname_tmp" value=$selList[loop].opname }> <td > <{assign var="temp_flg" value=$selTmpList[mem].flg }> <{$arr_identify_s[$temp_flg]}> </td> 具体是哪个问题? 上次的那个?还是新的问题? 你要怎么处理?你给的tpl参考代码 是什么意思?如果 实现图片效果,直接循环不就行了?现在问题是什么 我还没弄明白,再详细点? 现在的问题是Array( [0] => Array ( [tagname] => sa1 [flag1] => [commid] => sa1 [type] => 0 [code] => Array ( [0] => 1 [1] => 2 ) [opname] => Array ( [0] => sa1_a [1] => sa1_b ) [sama_size] => 2 ) [1] => Array ( [tagname] => ma1 [flag1] => [commid] => ma1 [type] => 2 [code] => Array ( [0] => 1 [1] => 2 ) [opname] => Array ( [0] => ma_1 [1] => ma_2 ) [sama_size] => 2 ) )给出这样的数组。在页面建一个table要让数组里面的数据显示出来。 比如 [tagname] => sa1 下面的数据显示sa1tpl参考代码 就是要实现的功能的代码的写法、。因为 [code] => Array ( [0] => 1 [1] => 2 ) [opname] => Array ( [0] => sa1_a [1] => sa1_b )因为这两个字段都是两个单元格的。所以跨行处理了下。下面是我的代码。<table cellspacing="1" cellpadding="0" border="1" align="center" width="100%" bordercolor="#0000CC" > <tr> <{capture name="cap1"}><{t}>tagname<{/t}><{/capture}> <{capture name="cap2"}><{t}>flag1<{/t}><{/capture}> <{capture name="cap4"}><{t}>commid<{/t}><{/capture}> <{capture name="cap5"}><{t}>type<{/t}><{/capture}> <{capture name="cap6"}><{t}>code<{/t}><{/capture}> <{capture name="cap7"}><{t}>opname<{/t}><{/capture}> <{capture name="cap8"}><{t}>sama_size<{/t}><{/capture}> <td><{t}>tagname<{/t}></td> <td><{t}>flg1<{/t}></td> <td><{t}>commid<{/t}></td> <td><{t}>type<{/t}></td> <td><{t}>code<{/t}></td> <td><{t}>opname<{/t}></td> <td><{t}>sama_size<{/t}></td> </tr><{section name=loop loop=$selList }> <tr> <td><{$selList[loop].tagname}></td> <td><{$selList[loop].flg1}></td> <td><{$selList[loop].commid}></td> <td><{$selList[loop].type}></td> <td><{assign var="temp_code" value=$selList[loop].code}></td> <td> <{assign var="pname" value=$selList[loop].opname }> <{$arr_name[$name]}> </td> <td> <{assign var="samasize" value=$selList[loop].sama_size}> </td> </tr> <{/section}> <tr> <td rowspan="2"> </td> <td rowspan="2"> </td> <td rowspan="2"> </td> <td rowspan="2"> </td> <td> </td> <td> </td> <td rowspan="2"> </td> </tr> <tr> <td> </td> <td> </td> </tr></table> 只有 code 和 opname有可能是数组,对吗?有没有其他元素也是数组的? code 和 opname 他们这个数组长度是固定的吗,现在他们都是2个,有没有可能是三个 四个? 给我的数组数据就是Array( [0] => Array ( [tagname] => sa1 [flag1] => [commid] => sa1 [type] => 0 [code] => Array ( [0] => 1 [1] => 2 ) [opname] => Array ( [0] => sa1_a [1] => sa1_b ) [sama_size] => 2 )这样的。先考虑2个吧,要用给的参考代码那样的方式实现,在页面上可以像前面那个截图一样显示数据。 <?php$arr = Array( 0 => Array ( 'tagname' => 'sa1' ,'flag1' =>'null' ,'commid' => 'sa1' ,'type' => 0 ,'code' => Array ( '0' => 1, '1' => 2, //'2' => 3, //'3'=>4 ) ,'opname' => Array ( '0' => 'sa1_a' ,'1' => 'sa1_b' ) ,'sama_size' => 2 ), 1 => Array ( 'tagname' => 'ma1' ,'flag1' =>'null' ,'commid' => 'ma1' ,'type' => 2 ,'code' => Array ( '0' => 1 ,'1' => 2 ) ,'opname' => Array ( '0' => 'ma_1' ,'1' => 'ma_2' ) ,'sama_size' => 2 ));?><table cellspacing="1" cellpadding="0" border="1" align="center" width="100%" bordercolor="#0000CC" > <tr> <td>tagname</td> <td>flg1</td> <td>commid</td> <td>type</td> <td>code</td> <td>opname</td> <td>sama_size</td> </tr><?phpfor ($i = 0;$i<count($arr);$i++):$max_row = 1;//至少有一行,根据以下数组获取最大行数$max_code_rows = 1;$max_opname_rows = 1;if(is_array($arr[$i]['code'])){ $max_code_rows = count($arr[$i]['code']); $first_code = $arr[$i]['code'][0];}if(is_array($arr[$i]['opname'])){ $max_opname_rows = count($arr[$i]['opname']); $first_opname = $arr[$i]['opname'][0];}$max_row = $max_code_rows>$max_opname_rows?$max_code_rows:$max_opname_rows;?> <tr> <td rowspan="<?php echo $max_row;?>"><?php echo $arr[$i]['tagname']?></td> <td rowspan="<?php echo $max_row;?>"><?php echo $arr[$i]['flag1']?></td> <td rowspan="<?php echo $max_row;?>"><?php echo $arr[$i]['commid']?></td> <td rowspan="<?php echo $max_row;?>"><?php echo $arr[$i]['type']?></td> <td><?php echo isset($first_code)?$first_code:$arr[$i]['code'];?></td> <td><?php echo isset($first_opname)?$first_opname:$arr[$i]['opname'];?></td> <td rowspan="<?php echo $max_row;?>"><?php echo $arr[$i]['sama_size']?></td> </tr><?php if($max_row > 1): for ($n=1;$n<$max_row;$n++):?> <tr> <?php if($n <= $max_code_rows):?> <td <?php if($max_row > $max_code_rows){ echo 'rowspan="'.($max_row/$max_code_rows).'"';}?>><?php echo $arr[$i]['code'][$n];?></td> <?php endif;?> <?php if($n <= $max_opname_rows):?> <td <?php if($max_row > $max_opname_rows){ echo 'rowspan="'.($max_row/$max_opname_rows).'"';}?>><?php echo $arr[$i]['opname'][$n];?></td> <?php endif;?> </tr> <?php endfor; endif;endfor;?></table>这个代码是php代码,你可以把他转成smarty格式,如果数组是固定的2两个值得话,这样是可以的,但如果多个的话,还有点问题,我得再看看,你先看看这样行不行。 可以是可以。但是我不知道怎么转成smarty的<script> function setpoint(id){ var arr=id.split("_"); document.getElementById("member_id").value=arr[1]; document.getElementById("point").value=document.getElementById(arr[1]+"_point").value; mySubmit("SETPOINT"); }</script><input type="hidden" name="p" id="p" value="<{$form.p}>" /><input type="hidden" name="searchFlag" id="searchFlag" value="page" /><input type="hidden" name="member_id" id="member_id" value="" /><input type="hidden" name="pageSize" id="pageSize" value="<{$form.pageSize}>" /><input type="hidden" name="orderby" id="orderby" value="<{$form.orderby}>" /><input type="hidden" name="orderbyType" id="orderbyType" value="<{$form.orderbyType}>" /><input type="hidden" name="point" id="point" value="" /><!--<div class="navibox"> <span style="float:left"><{t}>ポイント管理<{/t}></span> <span style="float:right"><{include file="inc_totalobjects_tab.tpl" totalobjects=$selListSize}></span></div><div class="space"></div>--><div class="listbox" > <{include file="inc_notice.tpl"}> <{include file="inc_community_tab.tpl"}> <div id="error" style="color: red;text-align:left;"> <{foreach from=$error_msg item=msg }> <{if $msg != ""}> <li><{$msg}></li> <{/if}> <{/foreach}> </div> <table border="0" align="center" cellpadding="0" cellspacing="1" width="100%" class="table"> <tr> <td class="table_midashi" ><b><{t}>ニックネーム<{/t}></b></td> <td><input type="text" name="searchMembernickname" id="searchMembernickname" value="<{$form.searchMembernickname}>" style="ime-mode:active;margin-left:10px;margin-right:10px;width:210px"></td> <td class="table_midashi" ><b><{t}>管理番号<{/t}></b></td> <td><input type="text" name="searchMemberId" id="searchMemberId" value="<{$form.searchMemberId}>" style="ime-mode:active;margin-left:10px;margin-right:10px;width:90px"></td> </tr> <tr><td class="table_midashi" ><b><{t}>参加トピック数<{/t}></b></td><td><input type="text" name="topictimes1" id="topictimes1" value="<{$form.topictimes1}>" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:90px"><{t}>~<{/t}><input type="text" name="topictimes2" id="topictimes2" value="<{$form.topictimes2}>" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:90px"></td><td class="table_midashi" ><b><{t}>画像アップ数<{/t}></b></td><td><input type="text" name="pictimes1" id="pictimes1" value="<{$form.pictimes1}>" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:90px"><{t}>~<{/t}><input type="text" name="pictimes2" id="pictimes2" value="<{$form.pictimes2}>" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:90px"></td></tr> </table> <div class="txt_c"> <input type="button" value="<{t}>検索<{/t}>" class="buttons" onClick="javascript:searchSubmit();"> </div> <div align="left" style="margin-top:10px;margin-bottom:10px"><b><{t}>付与ポイント数<{/t}></b><input type="text" name="setPointM" id="setPointM" value="" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:100px" maxlength="5"><b><{t}>pt<{/t}></b><input type="button" name="btn_point" id="btn_point" value="<{t}>付与する<{/t}>" style="margin-left:10px;margin-right:10px" class="buttons" onclick="javascript:if(chksel()){mySubmit('SETPOINT');}"><br/> </div> <table border="0" align="center" cellpadding="0" cellspacing="1" width="100%" class="table" style="table-layout: fixed;"> <tr align="center"> <{capture name="cap1"}><{t}>管理番号<{/t}><{/capture}> <{capture name="cap2"}><{t}>ニックネーム<{/t}><{/capture}> <{capture name="cap4"}><{t}>参加トピック数<{/t}><{/capture}> <{capture name="cap5"}><{t}>画像アップ数<{/t}><{/capture}> <{capture name="cap6"}><{t}>現在ポイント数<{/t}><{/capture}> <{capture name="cap7"}><{t}>性別<{/t}><{/capture}> <{capture name="cap8"}><{t}>年齢<{/t}><{/capture}> <td class="table_midashi" width="30px" ><input type="checkbox" name="chkall" id="chkall" value="" onclick="javascript:checkToAll(this.id,'member_sel[]')" ></td> <td class="table_midashi" width="90px" ><{jw_orderTitle titleStr=$smarty.capture.cap1 orderby="member_id" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td> <td class="table_midashi" ><{jw_orderTitle titleStr=$smarty.capture.cap2 orderby="nickname" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td> <td class="table_midashi" width="230px"><{t}>グループ<{/t}></td> <td class="table_midashi" width="90px"><{jw_orderTitle titleStr=$smarty.capture.cap4 orderby="jointimes_topic" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td> <td class="table_midashi" width="90px"><{jw_orderTitle titleStr=$smarty.capture.cap5 orderby="jointimes_pic" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td> <td class="table_midashi" width="260px"><b><{t}>個別付与<{/t}></b></td> <td class="table_midashi" ><{jw_orderTitle titleStr=$smarty.capture.cap6 orderby="point" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td> <td class="table_midashi" width="50px"><{jw_orderTitle titleStr=$smarty.capture.cap7 orderby="sex" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td> <td class="table_midashi"width="50px"><{jw_orderTitle titleStr=$smarty.capture.cap8 orderby="age" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td> </tr> <{section name=loop loop=$selList }> <tr align="center"> <td style="word-break: break-all; word-wrap:break-word;"><input type="checkbox" name="member_sel[]" value="<{$selList[loop].member_id}>"><input type="hidden" name="members[]" value="<{$selList[loop].member_id}>"></td> <td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].member_id}></td> <td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].nickname}></td> <td style="word-break: break-all; word-wrap:break-word;"> <span style="clear:both; margin:0 auto; width:auto; display:inline-block; text-align: left;"> <{$selList[loop].community}> </span> </td> <td style="word-break: break-all; word-wrap:break-word;"align="center"><{$selList[loop].jointimes_topic|number_format:0}></td> <td style="word-break: break-all; word-wrap:break-word;"align="center"><{$selList[loop].jointimes_pic|number_format:0}></td> <td style="word-break: break-all; word-wrap:break-word;"><input type="text" name="<{$selList[loop].member_id}>_point" id="<{$selList[loop].member_id}>_point"maxlength="5" value="" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:80px"><b><{t}>pt<{/t}></b> <input type="button" name="btn_<{$selList[loop].member_id}>_point" id="btn_<{$selList[loop].member_id}>_point" value="<{t}>付与する<{/t}>" style="margin-left:10px;margin-right:10px" class="buttons" onclick="javascript:setpoint(this.id)" onfocus="delWran"> <!-- <{if $selList[loop].member_id ==$need_valid_member_id&&$error_msg_point.point neq "" }> <div class="err_warn"><{$error_msg_point.point}></div><{/if}> --> <!-- <{assign var="memberid" value=$selList[loop].member_id|cat:"_point"}> <{$memberid}> <{if $error_msg_point.point neq ""}><div class="err_warn"><{$error_msg_point.point}></div><{/if}> --> <!-- <{if $error_msg_point.$memberid neq "" }><div class="err_warn"><{$error_msg_point.$memberid}></div><{/if}> --> </td> <td style="word-break: break-all; word-wrap:break-word;" align="center"><{$selList[loop].point|number_format:0}></td> <td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].sex}></td> <td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].age}></td> </tr> <{/section}> </table> <div align="right"><input type="button" name="point_exchange" id="point_exchange" value="<{t}>交換ポイント情報<{/t}>" style="margin-left:10px;margin-right:10px" class="buttons1" onclick="javascript:mySubmit('EXCHANGE')"> <!--<input type="button" name="csvexport" id="csvexport" value="交換ポイント情報のダウンロード" style="margin-left:10px;margin-right:10px" class="buttons" onclick="javascript:mySubmit('CSVEXPORT')">--></div> <div class="space"></div> <div class="pagenums"><{$pageList|smarty:nodefaults}></div> <div class="space"></div></div><table cellspacing="1" cellpadding="0" border="1" align="center" width="100%" bordercolor="#0000CC" > <tr> <{capture name="cap1"}><{t}>tagname<{/t}><{/capture}> <{capture name="cap2"}><{t}>flag1<{/t}><{/capture}> <{capture name="cap4"}><{t}>commid<{/t}><{/capture}> <{capture name="cap5"}><{t}>type<{/t}><{/capture}> <{capture name="cap6"}><{t}>code<{/t}><{/capture}> <{capture name="cap7"}><{t}>opname<{/t}><{/capture}> <{capture name="cap8"}><{t}>sama_size<{/t}><{/capture}> <td><{t}>tagname<{/t}></td> <td><{t}>flg1<{/t}></td> <td><{t}>commid<{/t}></td> <td><{t}>type<{/t}></td> <td><{t}>code<{/t}></td> <td><{t}>opname<{/t}></td> <td><{t}>sama_size<{/t}></td> </tr><{section name=loop loop=$selList }> <tr> <td><{$selList[loop].tagname}></td> <td><{$selList[loop].flg1}></td> <td><{$selList[loop].commid}></td> <td><{$selList[loop].type}></td> <td><{assign var="temp_code" value=$selList[loop].code}></td> <td> <{assign var="pname" value=$selList[loop].opname }> <{$arr_name[$name]}> </td> <td> <{assign var="samasize" value=$selList[loop].sama_size}> </td> </tr> <{/section}> <tr> <td rowspan="2"> </td> <td rowspan="2"> </td> <td rowspan="2"> </td> <td rowspan="2"> </td> <td> </td> <td> </td> <td rowspan="2"> </td> </tr> <tr> <td> </td> <td> </td> </tr></table>这是tpl里面的代码。让我在最后加一个table 你把 for 循环换成 section, section里的loop就相当于for的i ,里面定义的变量 换成smarty的 如:<{assign var="max_row" value=‘1’> 还有 输出也换成 smarty的输出方式,包括赋值,这些smarty都应该有对应的方法的,你看看代码 其实没什么难的,试试套进去就行了,我这边不好写,就算写出来了估计在你那边还需要改,大概用法你应该都会的。 $arr = Array( 0 => Array ( 'tagname' => 'sa1' ,'flag1' =>'null' ,'commid' => 'sa1' ,'type' => 0 ,'code' => Array ( '0' => 1, '1' => 2, //'2' => 3, //'3'=>4 ) ,'opname' => Array ( '0' => 'sa1_a' ,'1' => 'sa1_b' ) ,'sama_size' => 2 ), 1 => Array ( 'tagname' => 'ma1' ,'flag1' =>'null' ,'commid' => 'ma1' ,'type' => 2 ,'code' => Array ( '0' => 1 ,'1' => 2 ) ,'opname' => Array ( '0' => 'ma_1' ,'1' => 'ma_2' ) ,'sama_size' => 2 ));?>这个在tpl里面也要写吗。、。?怎么写code和opname是数组可以不判断吗?smarty的输出方式怎么写的 上边那个数组肯定不用写了,那个数组是你给我的。要用那个数组循环显示正确的table。数组肯定是你php传递过来的。如果你code 和 opname 是肯定的数组,那就可以不用判断了。smarty 不是你现在用的吗?for循环在smarty 里 是用section ,定义一个变量在smarty 用 assign var=‘变量名’ value=‘值’;if判断还是用 if 只不过多了开始和结束标签 <{...}>你上边不是已经写了一个section 和 assign 了吗? <{section name=loop loop=$selList }><!-- <{assign var=" max_row" value=1}><{assign var="max_code_rows" value=1}><{assign var="max_opname_rows" value=1}> --> <tr> <td><{$selList[loop].tagname}></td> <td><{$selList[loop].flg1}></td> <td><{$selList[loop].commid}></td> <td><{$selList[loop].type}></td> <td><{assign var="temp_code" value=$selList[loop].code}></td> <td> <{assign var="pname" value=$selList[loop].opname }> <{$arr_name[$name]}> </td> <td> <{assign var="samasize" value=$selList[loop].sama_size}> </td> </tr> <{/section}> <tr> <td rowspan="2"> </td> <td rowspan="2"> </td> <td rowspan="2"> </td> <td rowspan="2"> </td> <td> </td> <td> </td> <td rowspan="2"> </td> </tr> <tr> <td> </td> <td> </td> </tr>那这样写不就可以了吗 这样写怎么可以了?你至少得用两个循环,循环里面套循环,你一个循环怎么写出数组嵌套数组的数据,不可能的,我给你的代码很清楚,你直接套用一下smrty写法就行了。 $max_row = $max_code_rows>$max_opname_rows?$max_code_rows:$max_opname_rows;这句怎么用smarty写呢 这个其实是三元运算,比大小,然后取得最大的,smarty里我不知道怎么写,不过你可以用if判断,比如:$max_row = $max_code_rows;if($max_opname_rows > $max_code_rows){ $max_row = $max_opname_rows;}, 我没管那个问题了,我在看smarty资料。 求在线头像截取的代码,类似dz的那种 努力了好几天,我自己的一个小项目,请大家提提意见。 没有安装GD库???!!! 求助!)通常每个套接字地址(协议/网络地址/端口)只允许使用一次 请问php静态页面 [咨询]我想去IPOWER申请空间,请问有谁申请过吗?申请过的指点我一下好吗? 多维数组如何赋值??? 我要做一个新闻系统,涉及到5,6的新闻类别,同时,管理员可以授权给每个用户不同的新闻类别管理功能,可以,同时有多个类别的管理功能, 高手请进吧!小弟我真的头痛呀. 菜鸟问题 PHP做日历 求帮助!!急! CSS中设置的部分参数link后无法读取使用
Array ( [mode] => SETPOINT [snstabId] => 49 [webctrl_page_token] => dd4be4ef0d797d21eeee32267ccfe87d [sel_c_id] => [topscrollleft] => 0 [p] => 1 [searchFlag] => page [member_id] => 1000257015 [pageSize] => 20 [orderby] => member_id [orderbyType] => desc [point] => fdfds [searchMembernickname] => [searchMemberId] => [topictimes1] => [topictimes2] => [pictimes1] => [pictimes2] => [setPointM] => [members] => Array ( [0] => 1000257015 [1] => 1000257014 [2] => 1000256473 [3] => 1000255958 [4] => 1000255957 [5] => 1000255755 [6] => 1000255751 [7] => 1000255750 [8] => 1000255748 [9] => 1000255747 [10] => 1000199511 [11] => 1000031784 [12] => 1000031760 [13] => 1000031716 [14] => 1000031715 [15] => 1000031714 ) [1000257015_point] => fdfds [1000257014_point] => [1000256473_point] => [1000255958_point] => [1000255957_point] => [1000255755_point] => [1000255751_point] => [1000255750_point] => [1000255748_point] => [1000255747_point] => [1000199511_point] => [1000031784_point] => [1000031760_point] => [1000031716_point] => [1000031715_point] => [1000031714_point] => ) 这是你点击按钮时提交过去的数据,你在你的程序里 重新打印一下
echo "<pre>";
print_r($_POST);die();
打印你自己看看 结果,然后告诉我你想怎么弄?说的详细点。
(
[mode] => SETPOINT
[snstabId] => 82
[webctrl_page_token] => 9c78e0c1021007a9d241230e148aefd6
[sel_c_id] =>
[topscrollleft] => 0
[p] => 1
[searchFlag] => page
[member_id] => 1000256475
[pageSize] => 20
[orderby] => member_id
[orderbyType] => desc
[point] =>
[searchMembernickname] =>
[searchMemberId] =>
[topictimes1] =>
[topictimes2] =>
[pictimes1] =>
[pictimes2] =>
[setPointM] =>
[members] => Array
(
[0] => 1000256489
[1] => 1000256488
[2] => 1000256476
[3] => 1000256475
[4] => 1000256404
[5] => 1000256368
[6] => 1000256367
) [1000256489_point] =>
[1000256488_point] =>
[1000256476_point] =>
[1000256475_point] =>
[1000256404_point] =>
[1000256368_point] =>
[1000256367_point] =>
)还是上次那个问题,但是我现在要先把这个例子做出来,就是这个帖子里面给出的数组。。
实现的效果如图片所示类似于这样,要把数组里面的数据显示出来。
我给你一些代码参考,都是写在tpl里面的。 <td width="16%">
<{assign var="temp_type" value=$selList[loop].type }>
<{$allarr_account_type[$temp_type]}>
</td>
<td>
<{assign var="temp_sex" value=$selList[loop].sex }>
<{$arr_sex[$temp_sex]}>
</td>
<{assign var="opname_tmp" value=$selList[loop].opname }>
<td >
<{assign var="temp_flg" value=$selTmpList[mem].flg }>
<{$arr_identify_s[$temp_flg]}>
</td>
Array
(
[0] => Array
(
[tagname] => sa1
[flag1] =>
[commid] => sa1
[type] => 0
[code] => Array
(
[0] => 1
[1] => 2
)
[opname] => Array
(
[0] => sa1_a
[1] => sa1_b
)
[sama_size] => 2
)
[1] => Array
(
[tagname] => ma1
[flag1] =>
[commid] => ma1
[type] => 2
[code] => Array
(
[0] => 1
[1] => 2
)
[opname] => Array
(
[0] => ma_1
[1] => ma_2
)
[sama_size] => 2
)
)给出这样的数组。在页面建一个table
要让数组里面的数据显示出来。 比如 [tagname] => sa1 下面的数据显示sa1
tpl参考代码 就是要实现的功能的代码的写法、。
因为 [code] => Array
(
[0] => 1
[1] => 2
)
[opname] => Array
(
[0] => sa1_a
[1] => sa1_b
)
因为这两个字段都是两个单元格的。所以跨行处理了下。下面是我的代码。<table cellspacing="1" cellpadding="0" border="1" align="center" width="100%" bordercolor="#0000CC" >
<tr>
<{capture name="cap1"}><{t}>tagname<{/t}><{/capture}>
<{capture name="cap2"}><{t}>flag1<{/t}><{/capture}>
<{capture name="cap4"}><{t}>commid<{/t}><{/capture}>
<{capture name="cap5"}><{t}>type<{/t}><{/capture}>
<{capture name="cap6"}><{t}>code<{/t}><{/capture}>
<{capture name="cap7"}><{t}>opname<{/t}><{/capture}>
<{capture name="cap8"}><{t}>sama_size<{/t}><{/capture}>
<td><{t}>tagname<{/t}></td>
<td><{t}>flg1<{/t}></td>
<td><{t}>commid<{/t}></td>
<td><{t}>type<{/t}></td>
<td><{t}>code<{/t}></td>
<td><{t}>opname<{/t}></td>
<td><{t}>sama_size<{/t}></td>
</tr>
<{section name=loop loop=$selList }>
<tr>
<td><{$selList[loop].tagname}></td>
<td><{$selList[loop].flg1}></td>
<td><{$selList[loop].commid}></td>
<td><{$selList[loop].type}></td>
<td><{assign var="temp_code" value=$selList[loop].code}></td>
<td>
<{assign var="pname" value=$selList[loop].opname }>
<{$arr_name[$name]}>
</td>
<td>
<{assign var="samasize" value=$selList[loop].sama_size}>
</td>
</tr>
<{/section}>
<tr>
<td rowspan="2"> </td>
<td rowspan="2"> </td>
<td rowspan="2"> </td>
<td rowspan="2"> </td>
<td> </td>
<td> </td>
<td rowspan="2"> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
Array
(
[0] => Array
(
[tagname] => sa1
[flag1] =>
[commid] => sa1
[type] => 0
[code] => Array
(
[0] => 1
[1] => 2
) [opname] => Array
(
[0] => sa1_a
[1] => sa1_b
) [sama_size] => 2
)
这样的。先考虑2个吧,要用给的参考代码那样的方式实现,在页面上可以像前面那个截图一样显示数据。
<?php
$arr = Array
(
0 => Array
(
'tagname' => 'sa1'
,'flag1' =>'null'
,'commid' => 'sa1'
,'type' => 0
,'code' => Array
(
'0' => 1,
'1' => 2,
//'2' => 3,
//'3'=>4
) ,'opname' => Array
(
'0' => 'sa1_a'
,'1' => 'sa1_b'
) ,'sama_size' => 2
), 1 => Array
(
'tagname' => 'ma1'
,'flag1' =>'null'
,'commid' => 'ma1'
,'type' => 2
,'code' => Array
(
'0' => 1
,'1' => 2
) ,'opname' => Array
(
'0' => 'ma_1'
,'1' => 'ma_2'
) ,'sama_size' => 2
)
);
?><table cellspacing="1" cellpadding="0" border="1" align="center" width="100%" bordercolor="#0000CC" >
<tr>
<td>tagname</td>
<td>flg1</td>
<td>commid</td>
<td>type</td>
<td>code</td>
<td>opname</td>
<td>sama_size</td>
</tr>
<?php
for ($i = 0;$i<count($arr);$i++):
$max_row = 1;//至少有一行,根据以下数组获取最大行数
$max_code_rows = 1;
$max_opname_rows = 1;
if(is_array($arr[$i]['code'])){
$max_code_rows = count($arr[$i]['code']);
$first_code = $arr[$i]['code'][0];
}if(is_array($arr[$i]['opname'])){
$max_opname_rows = count($arr[$i]['opname']);
$first_opname = $arr[$i]['opname'][0];
}
$max_row = $max_code_rows>$max_opname_rows?$max_code_rows:$max_opname_rows;
?>
<tr>
<td rowspan="<?php echo $max_row;?>"><?php echo $arr[$i]['tagname']?></td>
<td rowspan="<?php echo $max_row;?>"><?php echo $arr[$i]['flag1']?></td>
<td rowspan="<?php echo $max_row;?>"><?php echo $arr[$i]['commid']?></td>
<td rowspan="<?php echo $max_row;?>"><?php echo $arr[$i]['type']?></td>
<td><?php echo isset($first_code)?$first_code:$arr[$i]['code'];?></td>
<td><?php echo isset($first_opname)?$first_opname:$arr[$i]['opname'];?></td>
<td rowspan="<?php echo $max_row;?>"><?php echo $arr[$i]['sama_size']?></td>
</tr>
<?php
if($max_row > 1):
for ($n=1;$n<$max_row;$n++):?>
<tr>
<?php if($n <= $max_code_rows):?>
<td <?php if($max_row > $max_code_rows){ echo 'rowspan="'.($max_row/$max_code_rows).'"';}?>><?php echo $arr[$i]['code'][$n];?></td>
<?php endif;?>
<?php if($n <= $max_opname_rows):?>
<td <?php if($max_row > $max_opname_rows){ echo 'rowspan="'.($max_row/$max_opname_rows).'"';}?>><?php echo $arr[$i]['opname'][$n];?></td>
<?php endif;?>
</tr>
<?php
endfor;
endif;
endfor;
?>
</table>这个代码是php代码,你可以把他转成smarty格式,如果数组是固定的2两个值得话,这样是可以的,但如果多个的话,还有点问题,我得再看看,你先看看这样行不行。
<script>
function setpoint(id){
var arr=id.split("_");
document.getElementById("member_id").value=arr[1];
document.getElementById("point").value=document.getElementById(arr[1]+"_point").value;
mySubmit("SETPOINT");
}
</script>
<input type="hidden" name="p" id="p" value="<{$form.p}>" />
<input type="hidden" name="searchFlag" id="searchFlag" value="page" />
<input type="hidden" name="member_id" id="member_id" value="" />
<input type="hidden" name="pageSize" id="pageSize" value="<{$form.pageSize}>" />
<input type="hidden" name="orderby" id="orderby" value="<{$form.orderby}>" />
<input type="hidden" name="orderbyType" id="orderbyType" value="<{$form.orderbyType}>" />
<input type="hidden" name="point" id="point" value="" />
<!--
<div class="navibox">
<span style="float:left"><{t}>ポイント管理<{/t}></span>
<span style="float:right"><{include file="inc_totalobjects_tab.tpl" totalobjects=$selListSize}></span>
</div>
<div class="space"></div>
-->
<div class="listbox" >
<{include file="inc_notice.tpl"}>
<{include file="inc_community_tab.tpl"}>
<div id="error" style="color: red;text-align:left;">
<{foreach from=$error_msg item=msg }>
<{if $msg != ""}>
<li><{$msg}></li>
<{/if}>
<{/foreach}>
</div> <table border="0" align="center" cellpadding="0" cellspacing="1" width="100%" class="table">
<tr>
<td class="table_midashi" ><b><{t}>ニックネーム<{/t}></b></td>
<td><input type="text" name="searchMembernickname" id="searchMembernickname" value="<{$form.searchMembernickname}>" style="ime-mode:active;margin-left:10px;margin-right:10px;width:210px"></td>
<td class="table_midashi" ><b><{t}>管理番号<{/t}></b></td>
<td><input type="text" name="searchMemberId" id="searchMemberId" value="<{$form.searchMemberId}>" style="ime-mode:active;margin-left:10px;margin-right:10px;width:90px"></td>
</tr>
<tr><td class="table_midashi" ><b><{t}>参加トピック数<{/t}></b></td><td><input type="text" name="topictimes1" id="topictimes1" value="<{$form.topictimes1}>" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:90px"><{t}>~<{/t}><input type="text" name="topictimes2" id="topictimes2" value="<{$form.topictimes2}>" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:90px"></td><td class="table_midashi" ><b><{t}>画像アップ数<{/t}></b></td><td><input type="text" name="pictimes1" id="pictimes1" value="<{$form.pictimes1}>" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:90px"><{t}>~<{/t}><input type="text" name="pictimes2" id="pictimes2" value="<{$form.pictimes2}>" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:90px"></td></tr>
</table>
<div class="txt_c">
<input type="button" value="<{t}>検索<{/t}>" class="buttons" onClick="javascript:searchSubmit();">
</div>
<div align="left" style="margin-top:10px;margin-bottom:10px"><b><{t}>付与ポイント数<{/t}></b><input type="text" name="setPointM" id="setPointM" value="" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:100px" maxlength="5"><b><{t}>pt<{/t}></b><input type="button" name="btn_point" id="btn_point" value="<{t}>付与する<{/t}>" style="margin-left:10px;margin-right:10px" class="buttons" onclick="javascript:if(chksel()){mySubmit('SETPOINT');}"><br/>
</div> <table border="0" align="center" cellpadding="0" cellspacing="1" width="100%" class="table" style="table-layout: fixed;">
<tr align="center">
<{capture name="cap1"}><{t}>管理番号<{/t}><{/capture}>
<{capture name="cap2"}><{t}>ニックネーム<{/t}><{/capture}>
<{capture name="cap4"}><{t}>参加トピック数<{/t}><{/capture}>
<{capture name="cap5"}><{t}>画像アップ数<{/t}><{/capture}>
<{capture name="cap6"}><{t}>現在ポイント数<{/t}><{/capture}>
<{capture name="cap7"}><{t}>性別<{/t}><{/capture}>
<{capture name="cap8"}><{t}>年齢<{/t}><{/capture}>
<td class="table_midashi" width="30px" ><input type="checkbox" name="chkall" id="chkall" value="" onclick="javascript:checkToAll(this.id,'member_sel[]')" ></td>
<td class="table_midashi" width="90px" ><{jw_orderTitle titleStr=$smarty.capture.cap1 orderby="member_id" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td>
<td class="table_midashi" ><{jw_orderTitle titleStr=$smarty.capture.cap2 orderby="nickname" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td>
<td class="table_midashi" width="230px"><{t}>グループ<{/t}></td>
<td class="table_midashi" width="90px"><{jw_orderTitle titleStr=$smarty.capture.cap4 orderby="jointimes_topic" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td>
<td class="table_midashi" width="90px"><{jw_orderTitle titleStr=$smarty.capture.cap5 orderby="jointimes_pic" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td>
<td class="table_midashi" width="260px"><b><{t}>個別付与<{/t}></b></td>
<td class="table_midashi" ><{jw_orderTitle titleStr=$smarty.capture.cap6 orderby="point" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td>
<td class="table_midashi" width="50px"><{jw_orderTitle titleStr=$smarty.capture.cap7 orderby="sex" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td>
<td class="table_midashi"width="50px"><{jw_orderTitle titleStr=$smarty.capture.cap8 orderby="age" orderbynow=$form.orderby orderbyType=$form.orderbyType}></td>
</tr>
<{section name=loop loop=$selList }>
<tr align="center">
<td style="word-break: break-all; word-wrap:break-word;"><input type="checkbox" name="member_sel[]" value="<{$selList[loop].member_id}>"><input type="hidden" name="members[]" value="<{$selList[loop].member_id}>"></td>
<td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].member_id}></td>
<td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].nickname}></td>
<td style="word-break: break-all; word-wrap:break-word;">
<span style="clear:both; margin:0 auto; width:auto; display:inline-block; text-align: left;">
<{$selList[loop].community}>
</span>
</td>
<td style="word-break: break-all; word-wrap:break-word;"align="center"><{$selList[loop].jointimes_topic|number_format:0}></td>
<td style="word-break: break-all; word-wrap:break-word;"align="center"><{$selList[loop].jointimes_pic|number_format:0}></td>
<td style="word-break: break-all; word-wrap:break-word;"><input type="text" name="<{$selList[loop].member_id}>_point" id="<{$selList[loop].member_id}>_point"maxlength="5" value="" style="ime-mode:disabled;margin-left:10px;margin-right:10px;width:80px"><b><{t}>pt<{/t}></b>
<input type="button" name="btn_<{$selList[loop].member_id}>_point" id="btn_<{$selList[loop].member_id}>_point" value="<{t}>付与する<{/t}>" style="margin-left:10px;margin-right:10px" class="buttons" onclick="javascript:setpoint(this.id)" onfocus="delWran">
<!-- <{if $selList[loop].member_id ==$need_valid_member_id&&$error_msg_point.point neq "" }>
<div class="err_warn"><{$error_msg_point.point}></div><{/if}> -->
<!-- <{assign var="memberid" value=$selList[loop].member_id|cat:"_point"}>
<{$memberid}>
<{if $error_msg_point.point neq ""}><div class="err_warn"><{$error_msg_point.point}></div><{/if}> -->
<!-- <{if $error_msg_point.$memberid neq "" }><div class="err_warn"><{$error_msg_point.$memberid}></div><{/if}> -->
</td>
<td style="word-break: break-all; word-wrap:break-word;" align="center"><{$selList[loop].point|number_format:0}></td>
<td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].sex}></td>
<td style="word-break: break-all; word-wrap:break-word;"><{$selList[loop].age}></td>
</tr>
<{/section}>
</table> <div align="right"><input type="button" name="point_exchange" id="point_exchange" value="<{t}>交換ポイント情報<{/t}>" style="margin-left:10px;margin-right:10px" class="buttons1" onclick="javascript:mySubmit('EXCHANGE')">
<!--<input type="button" name="csvexport" id="csvexport" value="交換ポイント情報のダウンロード" style="margin-left:10px;margin-right:10px" class="buttons" onclick="javascript:mySubmit('CSVEXPORT')">--></div> <div class="space"></div>
<div class="pagenums"><{$pageList|smarty:nodefaults}></div>
<div class="space"></div></div>
<table cellspacing="1" cellpadding="0" border="1" align="center" width="100%" bordercolor="#0000CC" >
<tr>
<{capture name="cap1"}><{t}>tagname<{/t}><{/capture}>
<{capture name="cap2"}><{t}>flag1<{/t}><{/capture}>
<{capture name="cap4"}><{t}>commid<{/t}><{/capture}>
<{capture name="cap5"}><{t}>type<{/t}><{/capture}>
<{capture name="cap6"}><{t}>code<{/t}><{/capture}>
<{capture name="cap7"}><{t}>opname<{/t}><{/capture}>
<{capture name="cap8"}><{t}>sama_size<{/t}><{/capture}>
<td><{t}>tagname<{/t}></td>
<td><{t}>flg1<{/t}></td>
<td><{t}>commid<{/t}></td>
<td><{t}>type<{/t}></td>
<td><{t}>code<{/t}></td>
<td><{t}>opname<{/t}></td>
<td><{t}>sama_size<{/t}></td>
</tr>
<{section name=loop loop=$selList }>
<tr>
<td><{$selList[loop].tagname}></td>
<td><{$selList[loop].flg1}></td>
<td><{$selList[loop].commid}></td>
<td><{$selList[loop].type}></td>
<td><{assign var="temp_code" value=$selList[loop].code}></td>
<td>
<{assign var="pname" value=$selList[loop].opname }>
<{$arr_name[$name]}>
</td>
<td>
<{assign var="samasize" value=$selList[loop].sama_size}>
</td>
</tr>
<{/section}>
<tr>
<td rowspan="2"> </td>
<td rowspan="2"> </td>
<td rowspan="2"> </td>
<td rowspan="2"> </td>
<td> </td>
<td> </td>
<td rowspan="2"> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>这是tpl里面的代码。让我在最后加一个table
$arr = Array
(
0 => Array
(
'tagname' => 'sa1'
,'flag1' =>'null'
,'commid' => 'sa1'
,'type' => 0
,'code' => Array
(
'0' => 1,
'1' => 2,
//'2' => 3,
//'3'=>4
)
,'opname' => Array
(
'0' => 'sa1_a'
,'1' => 'sa1_b'
)
,'sama_size' => 2
),
1 => Array
(
'tagname' => 'ma1'
,'flag1' =>'null'
,'commid' => 'ma1'
,'type' => 2
,'code' => Array
(
'0' => 1
,'1' => 2
)
,'opname' => Array
(
'0' => 'ma_1'
,'1' => 'ma_2'
)
,'sama_size' => 2
)
);
?>这个在tpl里面也要写吗。、。?怎么写
code和opname是数组可以不判断吗?
smarty的输出方式怎么写的
如果你code 和 opname 是肯定的数组,那就可以不用判断了。
smarty 不是你现在用的吗?
for循环在smarty 里 是用section ,
定义一个变量在smarty 用 assign var=‘变量名’ value=‘值’;
if判断还是用 if 只不过多了开始和结束标签 <{...}>
你上边不是已经写了一个section 和 assign 了吗?
<{section name=loop loop=$selList }>
<!-- <{assign var=" max_row" value=1}>
<{assign var="max_code_rows" value=1}>
<{assign var="max_opname_rows" value=1}> -->
<tr>
<td><{$selList[loop].tagname}></td>
<td><{$selList[loop].flg1}></td>
<td><{$selList[loop].commid}></td>
<td><{$selList[loop].type}></td>
<td><{assign var="temp_code" value=$selList[loop].code}></td>
<td>
<{assign var="pname" value=$selList[loop].opname }>
<{$arr_name[$name]}>
</td>
<td>
<{assign var="samasize" value=$selList[loop].sama_size}>
</td>
</tr>
<{/section}>
<tr>
<td rowspan="2"> </td>
<td rowspan="2"> </td>
<td rowspan="2"> </td>
<td rowspan="2"> </td>
<td> </td>
<td> </td>
<td rowspan="2"> </td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>那这样写不就可以了吗
这句怎么用smarty写呢
$max_row = $max_code_rows;
if($max_opname_rows > $max_code_rows){
$max_row = $max_opname_rows;
}
,