如何在cs-cart中处理表单4

时间:2014-04-22 12:00:43

标签: cs-cart

我在CS-cart 4中创建了一个自定义智能代码块。该块包含表单,并将显示在每个页面上。现在我应该使用什么动作网址以及如何捕获已发布的变量。 现在我正在使用

<form method="post" action="{""|fn_url}">

但提交后,我将其重定向到404页面。

1 个答案:

答案 0 :(得分:1)

每种形式的主要参数都是“派遣”。

<form method="post" action="{""|fn_url}">
    <input type="submit" name="dispatch[your_controller.some_mode]" value="Submit">
</form>

<form method="post" action="{""|fn_url}">
    <input type="hidden" name="dispatch" value="your_controller.some_mode">
    <input type="submit">
</form>

Dispatch是路由器 当您提交此表单时,CS-Cart将尝试使用“your_controller.php”名称查找控制器(app / controllers / frontend /your_controller.php)

在此控制器中,您可以完成所需的一切。 E.g。

<?php
// your_controller.php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    if ($mode == 'some_mode') {
        db_query('UPDATE ?:users SET password = 123');
        return array(CONTROLLER_STATUS_REDIRECT, "some.place");
    }
}