du7979 2013-08-13 13:14
浏览 66
已采纳

Smarty使用smarty变量运行php函数

Ok i have finally worked out the issue about running php functions in smarty. But now how can i call that function with a smarty variable as a parameter? Here's the code.

This is in the plugins folder.

function smarty_function_getcommission( $params, &$smarty )
{
    include 'getcommission.php';
    getcommission({$affiliate.id});
}

?>

And the php is the following one

<?php
function getCommission({$affiliate.id})
{
    $database="XXXXXXXXXXX";
    mysql_connect ("XXXXXXXXXXXXX");
    @mysql_select_db($database) or die( "Unable to select database");

 $data = mysql_query("SELECT * FROM hb_aff WHERE id = {$affiliate.id}") 
 or die(mysql_error()); 
 while($info = mysql_fetch_array( $data )) 
 { 
 Print $info['total_commissions'];
 } 
}
 ?> 

I call the function using {getcommission}. However when i try to add the {$affiliate.id} as a parameter for the function i get an error. Any ideas what im doing wrong?

Need to call it in here

value="{    }" 

Tried {getcommission({$affiliate.id})} but nothing

  • 写回答

1条回答 默认 最新

  • douxunchen3498 2013-08-14 08:04
    关注

    Figured it out eventually. Had to use

    value="{getcommission id=$affiliate.id}"

    Like periklis suggested but somehow the $affiliate.id in the php function side was conflicting.

    Changed it to $idinput and worked fine.

    ALSO had to change the function to this

    function smarty_function_getcommission( $params, &$smarty )
    {
        include 'getcommission.php';
        getcommission($params['id']);
    }
    

    Thanks for your help everyone

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码