0
**<div>
</div>
<form method='post' action='<?php echo /application/default/controllers/views/certificates.php  ?>'>
<input type='text' id='lon' value='<?php echo $user->login?>'/>
<input type='submit' Name='submit' value='Certificate'/>
    </form>
</div>
</div>**

上面的代码在用户页面中创建了表单,但是表单操作给出了错误,例如 Not found 。所以请给出一些答案来解决这个问题,并帮助我在 zend 框架中将表单操作设置为 .php 文件。我正在使用 wamp 服务器来运行它。

4

1 回答 1

0

aMember 通过前端控制器(index.php 文件)路由所有请求。无法直接从 Web访问文件/application/default/controllers/views/certificates.php 。我建议将您的文件 certificate.php 放在 aMember 文件夹之外。然后你就可以向它提交表单了。

其他选项是实现将处理此类表单提交的自定义控制器。您可以将控制器的代码放入 site.php 文件(http://www.amember.com/docs/Site.php_file)。

这是代码示例:

class CertificatesController extends Am_Mvc_Controller {

    function indexAction()
    {
        //handle form submit here
    }
}

然后在表单动作属性中使用这个:

<form method="post" action="<?php p(REL_ROOT_URL . '/certificates') ?>">
  • REL_ROOT_URL - 具有当前 aMember 安装的相对 url 的常量
  • p - 转义字符串并在模板中输出的函数
于 2016-11-12T09:54:44.677 回答