发新话题
打印

奇怪的问题

奇怪的问题

<meta http-equiv="Content-Type" c>
<!-- {if $vote} -->
{insert_scripts files='transport.js'}
<div id="ECS_VOTE">
  <div class="title-div"><img src="../images/vote.gif" alt="Cart" width="158" height="39" /></div>
  <div class="content-div">
    <form id="formvote" name="ECS_VOTEFORM" method="post" action="javascript:submit_vote()">
      <table id="vote_zone" width="100%" border="0" align="center" cellpadding="0" cellspacing="1">
        <tr>
          <!-- {foreach from=$vote item=title} -->
          <td>{$title.vote_name}<br />
            ({$lang.vote_times}:{$title.vote_count})</td>
          <!-- {/foreach} -->
        </tr>
        <tr>
          <!-- {foreach from=$vote item=title} -->
          <td bgcolor="#FFFFFF" valign="top"><!-- {foreach from=$title.options item=item} -->
            <!-- {if $title.can_multi eq 0} -->
            <input type="checkbox" name="option_id" value="{$item.option_id}" />
            {$item.option_name} ({$item.percent}%)<br />
            <!-- {else} -->
            <input type="radio" name="option_id" value="{$item.option_id}" />
            {$item.option_name} ({$item.percent}%)<br />
            <!-- {/if} -->
            <!-- {/foreach} -->
            <input type="hidden" name="type" value="{$title.can_multi}" />
          </td>
          <!-- {/foreach} -->
        </tr>
        <tr>
          <td align="center"><br />
            <input type="hidden" name="id" value="{$vote_id}" />
            <input type="submit" name="submit" value="{$lang.submit_vote}" />
            <input type="reset" value="{$lang.submit_reset}" />
          </td>
        </tr>
      </table>
    </form>
  </div>
</div>
<script type="text/javascript">
{literal}
/**
* 处理用户的投票
*/
function submit_vote()
{
  var frm     = document.forms['ECS_VOTEFORM'];
  var type    = frm.elements['type'].value;
  var vote_id = frm.elements['id'].value;
  var option_id = 0;
  if (frm.elements['option_id'].checked)
  {
    option_id = frm.elements['option_id'].value;
  }
  else
  {
    for (i=0; i<frm.elements['option_id'].length; i++ )
    {
      if (frm.elements['option_id'].checked)
      {
        option_id = (type == 0) ? option_id + "," + frm.elements['option_id'].value : frm.elements['option_id'].value;
      }
    }
  }
  if (option_id == 0)
  {
    return;
  }
  else
  {
    Ajax.call('vote.php', 'vote=' + vote_id + '&options=' + option_id + "&type=" + type, voteResponse, 'POST', 'JSON');
  }
}
/**
* 处理投票的反馈信息
*/
function voteResponse(result)
{
  if (result.message.length > 0)
  {
    alert(result.message);
  }
  if (result.error == 0)
  {
    var layer = document.getElementById('ECS_VOTE');
    if (layer)
    {
      layer.innerHTML = result.content;
    }
  }
}
{/literal}
</script>
<!-- {/if} -->

这是在线调查调用的模块,,,我把<!-- {if $vote} --><!-- {/if} -->中间的不以显示,,也就是说$vote没有值
但在在调用的时候打印vote的是有值请问是怎么回事.....


$vote = get_vote();
    if (!empty($vote))
    {
        $smarty->assign('vote_id',     $vote['id']);
        $smarty->assign('vote',        $vote['content']);
    }
echo count($vote) 是2   为什么调查模块不能显示.....

TOP

模版对应的php文件中最好看一下数组是否存在,打印数组的方法 print_r($vote['content']);

TOP

有的.按照您所说的:
print_r($vote['content']);

结果:

Array ( [2] => Array ( [options] => Array ( [4] => Array ( [percent] => 0 [option_id] => 4 [option_name] => sdf [option_count] => 0 ) [3] => Array ( [percent] => 0 [option_id] => 3 [option_name] => dsf [option_count] => 0 ) ) [vote_id] => 2 [vote_name] => 测试 [can_multi] => 0 [vote_count] => 0 ) )

TOP

您在php文件中赋值到了相应的模版文件中。

TOP

那为什么模板不能显示出来,,,模板中的$vote 是空的....这是怎么回事,,可是我的print_r($vote['content']);
是有值的啊

TOP

问题已解决...谢谢你.....我把$smarty->display('index.dwt', $cache_id);
放在了.get_vote的前面了....

TOP

发新话题