【问题标题】:PHP MVC: How would i route controllers through buttons?PHP MVC:我如何通过按钮路由控制器?
【发布时间】:2017-06-22 23:09:08
【问题描述】:

我是 Php mvc 设计的新手,我一直在阅读教程,Simple MVC for beginners。在本教程中,作者基于某个链接路由来自index.php 文件的所有调用。我有一个用 html 编写的登录页面,想知道如何路由我的,比如说当用户单击注册按钮时,基于按钮而不是链接的注册视图?

这让我想到了另一个问题。从登录页面视图到注册视图是否需要控制器?

视图/布局页面:

<DOCTYPE html>
<html>
  <head>
  </head>
  <body>
    <header>
      <a href='/php_mvc_blog'>Home</a>
    </header>

    <?php require_once('routes.php'); ?>

    <footer>
      Copyright
    </footer>
  <body>
<html>

index.php:

<?php


require_once('connection.php');

  if (isset($_GET['controller']) && isset($_GET['action'])) {
    $controller = $_GET['controller'];
    $action     = $_GET['action'];
  } else {
    $controller = 'pages';
    $action     = 'home';
  }

  require_once('views/layout.php');
?>

【问题讨论】:

    标签: php html model-view-controller


    【解决方案1】:

    这有点难以回答,因为它与 MVC 并没有真正的关系。希望我能给您一些见解,为您指明正确的方向。

    MVC 只是一个关于如何组织代码的概念。有许多不同的方法来设置仍然可以被视为 MVC 的站点。
    简单来说:

    • 模型:处理数据库逻辑,一个模型可以被多个控制器共享。
    • 查看:您的 html 在哪里(如果您 不使用js)。
    • 控制器:你的 php 的逻辑在哪里。例如映射数组 供您查看,转到其他页面等。

    问题 1:您的问题不完全涉及 MCV 概念本身,而更多涉及 html 如何与 php 交互。

    1. 您有一个链接或一个包含链接的按钮。
    2. 这个链接指向你的路由,然后调用你的控制器。
    3. 您的控制器运行您需要的 php 逻辑,然后将 html 提供给用户。

    问题 2:如果您的 html 视图中没有任何 php(例如不需要逻辑的常见问题解答页面),您可以直接链接到该页面。然而,最好通过一个只呈现页面以保持一致的控制器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多