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

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

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?