CForms插件函数“my_cForms_logic”(用于编写自定义逻辑)正在运行5次

时间:2010-11-02 作者:tecks

我正在使用cforms插件,它提供了一种使用文件my functions为表单操作处理程序页面编写自定义函数的方法。php和函数my\\u cforms\\u logic(。

问题是,每当我提交表单时,该函数都运行得很好,但它运行了5次。

例如,如果我在函数中编写一条语句,如echo“a”;然后在输出中我看到“AAAAA”。

1 个回复
SO网友:goldenapples

当它运行时,检查传递给函数的$setting参数。

my_cforms_logic 在几个不同的挂钩上调用,其中一些挂钩几乎同时运行。

###
### Your custom application logic features
###
### "successMessage"    $cformsdata = cforms datablock
### "redirection"       $cformsdata = cforms datablock
### "filename"          $cformsdata = $_REQUEST
### "adminTO"           $cformsdata = cforms datablock
### "nextForm"          $cformsdata = cforms datablock
###
### "adminEmailTXT"     $cformsdata = cforms datablock
### "adminEmailHTML"    $cformsdata = cforms datablock
### "autoConfTXT"       $cformsdata = cforms datablock
### "autoConfHTML"      $cformsdata = cforms datablock
###
如果只想在其中一个钩子上运行自定义函数,请说“successMessage”,然后按如下方式启动函数:

function my_cforms_logic($cformsdata,$oldvalue,$setting) {

    if (\'successMessage\' != $setting) return $oldvalue;

        // now, do your custom logic
        // [. . . ]

}
有趣的是,我前几天才弄明白。

结束

相关推荐

How do you debug plugins?

我对插件创作还很陌生,调试也很困难。我用了很多echo,它又脏又丑。我确信有更好的方法可以做到这一点,也许是一个带有调试器的IDE,我可以在其中运行整个站点,包括插件?