当前位置: 首页 > 知识库问答 >
问题:

Joomla 3. x,验证失败时如何保留用户数据

公良鸿光
2023-03-14

我在编写新的Joomla组件时遇到问题。我的自定义joomla组件中有一些输入表单(/components\com\u custom\views\myview\tmpl\default.php)

<input type="text" class="form-control" name="jform[checkindate]" id="checkindate" value="<?php if (isset($post)) {echo $post; } else { echo 'Checkin date'; }?>">

当然,在最上面我有这个:

$jin = JFactory::getApplication()->input;
$post = $jin->get('checkindate', 'Checkin date', 'STR');

我的观点是,如果用户在验证中失败,则保留用户post数据,这样他们就不需要重新键入所有表单,他们只需要在再次提交之前修复一些错误数据,但没有成功。你能帮我一下吗?非常感谢你!

共有1个答案

魏晨
2023-03-14

我假设您正在使用Joomla jform构建表单

在jform中,如果要维护表单会话,需要注意某些事项。

>

JFactory::getApplication();$app-

请注意,第一个参数是存储在用户状态下的数据的密钥。第二个参数是用户发布的Jinput数据。

`

protected function loadFormData()

{
    $data = JFactory::getApplication()->getUserState('componentname.formname.data', array());

    if (empty($data))
    {
        // This is the my component function to load form data
        $data = $this->getData();
    }

    return $data;
}

3.如果表单数据保存成功,那么不要忘记将其从会话中清除。

$app-

 类似资料:
  • 我尝试创建我的验证注释。 当验证失败时,它的工作很好。我收到一条消息。但是当验证通过时,我得到RollbackException。 我在验证注释中做了什么? 我想在用户表中检查一封唯一的电子邮件。因此,我创建了@注释: 我创建了验证器: 当我输入非唯一电子邮件时,我收到消息“电子邮件存在! 但是当我输入唯一的电子邮件时,我收到错误: 2019-07-07 13:14:09.770 ERROR 11

  • 我有一个API在Apache堆栈上运行,使用Java。我继承了一个遗留代码库,需要找到这个错误来自哪里显然是上一个开发人员构建了一个不能工作的特性,这就是错误所在,但没有更多信息。它使用Drupal webservice模块,发送调用的代码如下所示 我可以从哪里开始寻找这个错误,或者它可能意味着什么,你有什么想法吗? 完整的堆栈跟踪如下所示::: 用户失败:null。java.lang.Unsup

  • 在使用postman创建新用户时,我收到以下错误: 创建新用户失败:验证失败:名字不能为空,电子邮件不能为空,电子邮件无效;参数:{: email= 邮递员的错误: 我正在将以下值传递给邮递员中的参数: 这是用户注册的功能:

  • 我已经设置了一个LDAP自定义身份验证提供程序,类似于这里的示例-https://www.baeldung.com/spring-security-authentication-provider 有一个登录控制器来处理登录错误,并检查用户是否在已批准的列表中。控制器调用自定义身份验证提供程序,即authenticationManager。authenticate()方法。 如果提供了错误的凭据,将

  • 因此,我在Centos 8和postgresql-12上遇到了身份验证问题。添加服务器期间出现以下错误:::pgadmin4错误创建服务器 本地主机上的连接:postgres连接本地主机 我真的尝试了很多答案,但没有一个对我有用。pg_nba.conf文件现在有以下字符串: 本地所有信任 本地所有md5 托管所有127.0.0.1/32 md5 主机所有::1/128 md5 托管所有10.1.1

  • 在我的Postgres服务器中,使用命令pg_createcluster监听端口5433创建了一个集群。要设置用户postgres的密码,我遵循以下步骤: 编辑文件nano/etc/postgresql/9.3//pg_hba.conf 改变线路 托管所有127.0.0.1/32 md5 按行 托管所有127.0.0.1/32信任 sudo-u postgres psql-h localhost-