0

我为 cscart 创建了一个插件。

模板文件 tpl 需要显示 cscart 数据库中表中的数据。

我将如何/在哪里查询 mysql 数据库?

我读过将查询放在 TPL 文件中是不好的做法。根据 MVC 原则,这是正确的。

因此,在创建附加组件时,我可以创建哪个文件来执行此查询并检索必要的数据以传递给 tpl 文件?不确定在哪里创建一个独立的 php 文件来进行数据提取并传递给 tpl 文件。我不喜欢编辑默认的 cscart 文件。

我在哪里可以获得这方面的指南/信息?

这是我需要运行的命令:

db_get_array('SELECT column FROM ?:table WHERE user_id = ?s', $user_id)

但这不适用于 tpl 文件...

4

1 回答 1

1

1.是db_get_array的错误,$user_id是一个整数,正确的查询是

db_get_array('SELECT column FROM ?:table WHERE user_id = ?i', $user_id)

2. 根据 cs-cart 版本,您有不同的文件夹,您需要在其中添加 php 和 tpl 文件

v2.x 和 v3.x

addons/[ADDON_NAME]/controllers/customer/[PHP].php
skins/[SKIN_NAME]/customer/addons/[ADDON_NAME]/views/[PHP_FILE]/[MODE].tpl

v4.x

app/addons/[ADDON_NAME]/controllers/customer/[PHP].php
design/themes/[THEME_NAME]/templates/addons/[ADDON_NAME]/views/[PHP]/[MODE].tpl

以上是新控制器的情况

当您只是连接到实际的控制器时

v2.x 和 v3.x

addons/[ADDON_NAME]/controllers/customer/[CONTROLLER].post.php
skins/[SKIN_NAME]/customer/addons/[ADDON_NAME]/views/[CONTROLLER]/[MODE].tpl

v4.x

app/addons/[ADDON_NAME]/controllers/customer/[CONTROLLER].post.php
design/themes/[THEME_NAME]/templates/addons/[ADDON_NAME]/views/[CONTROLLER]/[MODE].tpl
于 2014-07-15T05:12:08.550 回答