将数据从视图发送到opencart中的控制器

Send data from view to controller in opencart

我是 opencart MVC 的新手,是否可以像这样发送视图数据

<p><?php echo  "$i )".$showall['store_name']. '<br>'.$showall['store_address'].'<br>'. $showall['zipcode'].'<br>'.$showall['zipcode'].'<br>'.$showall['city'].'<br><a href='.$delaction.'>Delete</a>' ; ?> </p>

在这里我想将 $delcation 变量发送到控制器

我不熟悉 opencart,但我熟悉 MVC。 在某些框架中,您有一个路由文件,而在其他框架中,框架解释您的控制器结构以提供路由。我假设 opencart 像上一个一样工作。

你有一个带索引功能的控制器吧?并通过 url 加载该页面,例如:“http://localhost/index.php?route=test/abc

您可以尝试以下方法:

  • 在名为 delete 的控制器中创建另一个函数
  • href 中的 link 会像这样: index.php?route=test/abc/delete
  • 然后要传递要删除的对象的 ID,请在查询字符串中传递另一个变量,如下所示:index.php?route=test/abc/delete&id='.$idToDelete.'
  • 要在控制器中检索变量,您可以这样做:$idToDelete = $this->request->get['id'];
  • 然后您可以在此函数中删除该对象并重定向回正确的页面。

如果 "index.php?route=test/abc/delete" 不起作用怎么办? 如果 opencart 不支持此功能,您可以执行以下操作:

  • 在控制器中创建不同的功能,如 get/update/delete 等
  • 创建带开关的索引函数
  • 在查询字符串中添加一个 func 变量,如下所示:index.php?route=test/abc&func=delete
  • 然后 运行 $this->request->get['func'];
  • 的正确函数

希望对你有用! (让我知道有什么帮助,这样我就可以相应地更新答案)

在您的控制器文件中使用 $data[] 全局变量将数据发送到视图

例如:在控制器文件中 $data['var_name']="something";

在查看文件中你可以使用它有<?php echo $var_name; ?>