验证器的使用 在controller

本文介绍使用ThinkPHP框架内置验证器进行用户注册信息的校验过程,包括用户名、密码、电话号码等字段的有效性检查及自定义错误消息。
// 接收 数据
$info = input('post.');
//        dump($info);die;
// tp自带验证器
$rule=[
    'user_name' => 'require',
    'login_name' => 'require',
    'user_pass' => 'require',
    'tel'  => 'require|length:11|regex:/^1[3-8]{1}[0-9]{9}$/|unique:user',
    'qq'=>'require',
    'sign' => 'require',
];
$msg=[
    'user_name.require' => '用户名不能为空',
    'login_name' => '管理员昵称不能为空',
    'user_pass' => '用户密码不能为空',
    'tel.require'=>'手机号码不能为空',
    'tel.length'=>'手机号码长度不符合',
    'tel.regex' => '手机号码不符合规则',
    'tel.unique'=>'手机号码已存在',
    'qq.require'=>'qq不能为空',
    'sign.require'=>'个性签名不能为空',
];
// 参一 数组, 参二 规则 , 参三 报错信息
$result=$this->validate(input('post.'),$rule,$msg);

if(true !== $result){
    // 验证失败 输出错误信息
    return $this->success($result);
}

// 判断两次密码是否一致
if ($info['user_pass'] !== $info['Re_user_pass']){
    return $this->success('两次密码不一致!');
}
unset($info['Re_user_pass']);

验证器
https://blog.youkuaiyun.com/u014202165/article/details/79856916

在Java中,JSR 303(也称为Hibernate Validator)是一个用于提供客户端输入验证的标准规范。要在Spring MVC的Controller类中的方法中利用JSR 303进行验证,你需要按照以下步骤操作: 1. **添加依赖**:首先,需要在项目的pom.xml文件中添加 Hibernate Validator 的依赖。 ```xml <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>6.1.5.Final</version> </dependency> ``` 2. **配置Validator**:在Spring MVC配置中启用Bean Validation,通常在`WebMvcConfigurer`接口的实现中。 ```java @Configuration public class WebConfig implements WebMvcConfigurer { @Override public void addFormatters(FormatterRegistry registry) { registry.addDefaultFormatters(new InternationalizedDateTimeFormatter()); } @Bean public LocalValidatorFactoryBean validator() { return new LocalValidatorFactoryBean(); } } ``` 3. **标记字段**:在Controller类的方法参数或请求模型对象上添加`@Valid`注解,表示该部分数据需要验证。 ```java @PostMapping("/save") public String save(@ModelAttribute("myModel") @Valid MyModel model, BindingResult result) { if (result.hasErrors()) { // 验证失败,处理错误信息 } else { // 验证通过,保存数据 } return "success"; } class MyModel { @NotNull(message = "Field cannot be null.") private String myField; // 添加其他字段及其验证规则 } ``` 4. **检查结果**:`BindingResult`参数会包含所有验证的结果,你可以遍历它来获取每个字段的错误消息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值