我为cscart创建了一个附加组件。
模板文件tpl需要显示cscart数据库中表的数据。
我如何/在哪里查询mysql数据库?
我已经读过将查询放在TPL文件中是不好的做法。按照MVC原则,这是正确的。
因此,在创建添加时,我可以创建哪个文件来执行此查询并检索必要的数据以传递给tpl文件?不知道在哪里创建一个独立的php文件来进行数据提取并传递给tpl文件。我不喜欢编辑默认的cscart文件。
我在哪里可以获得有关此的指南/信息?
这是我需要运行的命令:
db_get_array('SELECT column FROM ?:table WHERE user_id = ?s', $user_id)
但这不适用于tpl文件...
答案 0 :(得分: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