验证用于检查数据,以确保它符合为其设置的任何所需规范。通常,验证用于检查输入数据,以及在存储之前验证数据。
我想在 codeigniter 表单验证规则中传递多个回调......但只有一个回调有效 我在我的控制器中使用这个语法 $this->form_validation->set_rules( ...
这是我的registerFormOne.php代码: 报名F...</desc> <question vote="2"> <p>这是我的registerFormOne.php代码:</p> <pre><code><?php session_start(); require("validationLibrary.php"); $validForm = true; ?> <html> <head> <title>Registration Form - 1 of 2</title> </head> <body> <h1>Registration - Part 1 of 2</h1> <p>Please fill in all the required information before submitting the information.</p> <form action="registerFormTwo.php" method="post"> <dt>First Name:</dt> <dd><input type="text" name="firstName" /></dd><br /> <dd> <?php if(isset($_POST['firstName'])){ if(!validateRequired($_POST['firstName'])){ $validForm = false; } } ?> </dd><br /> <dt>Last Name:</dt> <dd><input type="text" name="lastName" /></dd><br /> <dd> <?php if(isset($_POST['lastName'])){ if(!validateRequired($_POST['lastName'])){ $validForm = false; } } ?> </dd><br /> <dt>EMail:</dt> <dd><input type="text" name="email" /></dd><br /> <dd> <?php if(isset($_POST['email'])){ if(!validateEmail($_POST['email'])){ $validForm = false; } } ?> </dd><br /> <dt>Age:</dt> <dd><input type="text" name="age" /></dd><br /> <dd> <?php if(isset($_POST['age'])){ if(!validateNumber($_POST['age'])){ $validForm = false; } } ?> </dd><br /> <dt>Date of Birth:</dt> <dd><input type="text" name="dateOfBirth" /></dd><br /> <dd> <?php if(isset($_POST['dateOfBirth'])){ if(!validateRequired($_POST['dateOfBirth'])){ $validForm = false; } } ?> </dd><br /> <dt>Gender:</dt> <dd>Masculino <input type="radio" value="M" name="gender" checked/> Femenino <input type="radio" value="F" name="gender" /> </dd> <dt><input type="submit" /></dt> </form> </body> </html> </code></pre> <p>这是我的validationLibrary.php,我将其用作类:</p> <pre><code><?php function validateRequired($field){ if($field == ""){ echo "Information for this field is required."; return false; } else{ return true; } } function validateNumber($field){ if(!is_numeric($field)){ echo "Only numeric values are allowed in this field."; return false; } else{ return true; } } function validateEmail($field){ $regexp = "/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z-][0-9a-zA-Z-]+\.)+[a-zA-Z](2,6)$/"; if(!preg_match($regexp,$field)){ echo "Please type in a valid email address."; return false; } else{ return true; } } ?> </code></pre> <p>我需要再次重新加载 formOne,如果变量 $validForm 为 false,则不要转到 formTwo。</p> <p>我知道如何做到这一点。</p> </question> <answer tick="true" vote="3"> <p>更改表单的操作属性以提交给自身,而不是表单 #2。仅当您的验证代码通过时,您才会重定向到带有位置标头()的表单#2。</p> </answer> <answer tick="false" vote="1"> <p>对于您来说,作为初学者开发人员,使用 ValidForm Builder 会容易得多。 检查<a href="http://validformbuilder.org" rel="nofollow">http://validformbuilder.org</a></p> <p>它是一个开源表单构建工具,具有您提到的所有这些功能以及更多功能。</p> <p>这并不是一个商业广告(因为它是一个免费使用的开源包),只是一个方便的提示。</p> </answer> <answer tick="false" vote="0"> <p>不知道什么是“最好”的方法,但我所做的是将表单的操作返回到同一页面,然后在将任何内容放在页面上之前检查表单输入 - 如果有问题,我什么也不做,我可以用 <pre><code>$_POST</code></pre> 值预填充值 - 如果没有问题,我使用 <pre><code>header('Location: formTwo.php')</code></pre> 继续:) 如果在更改标头后重新分配变量,则可以传递变量。</p> </answer> <answer tick="false" vote="0"> <p>类似这样的:</p> <pre><code><?php $errors = array(); if (isset($_POST['submit'])) { // validate and possibly populate the $errors array if (empty($errors)) { // do something with the data header('Location: target.php'); exit; } } ?> <html> <?php if (!empty($errors)) : ?> <?php echo implode(', ', $errors) ?> <?php endif; ?> <form> <!-- fill form elements with values if they are set --> ... </form> </html> </code></pre> </answer> <answer tick="false" vote="0"> <p>您是否反对使用 javascript 进行表单验证? 如果不是,它将节省往返服务器的次数,并且可以避免保留表单页面的问题。</p> </answer> </body></html>
为什么“必填”字段验证器无法处理 Struts 2 中的空白值?
我正在构建一个登录应用程序(在 Netbeans 731 中),它基本上确保用户名和密码的非空值。应用程序运行良好,但验证不起作用,所以即使我...
我有这样的输入数据: 起始号码:88 数量:7 然后我可以使用这样的 SEQUENCE 函数来显示从 88 开始并迭代 7 的列表 例如: =序列(C4,1,C3) 阿苏美...
我有这个函数来检查单词序列: 函数序列($arr_scheme = [], $arr_input = []) { $sequence_need = array_values(array_intersect($arr_scheme, $arr_input)); ...
最近,我向自定义 Web 组件 (jb-input) 添加了一个必需属性,以便在用户将输入留空时显示错误。 重点是在这个组件系列中,验证机制是
我一直在使用 Go Validator.v2 进行字段验证,它非常适合我的非结构类型字段。然而,当涉及到处理基于结构的字段(在原始结构内)时,t...
我有一个注册程序。当我在数据库中插入一条记录时,我将实例化一个类并调用方法 insert()。当我插入相同的记录时,当然会出现重复数据错误...
如何在Struts 2中的action类或bean中使用getText()?
有没有办法在操作类或bean中使用getText()?我无法使用 Google 搜索找到 Java 代码中的示例,但可以在 JSP 中找到它们。我的例子如下: 公共类 LoanForm 扩展
使用 DataAnnotations 进行 NET8 配置验证(特别是数组)
我正在使用 DataAnnotations 进行 NET8 配置验证,但我遇到了一些晦涩的行为,特别是对于数组,我将展示这些行为。 应用程序设置.json: { “记录”:{...
我有以下代码: 资源: @成分 @RequiredArgsConstructor 公共类资源{ 私人最终服务; @邮政 @Path("/{id}/创建") @Consumes(媒体类型。
React Bootstrap 表单验证 - isInvalid 不设置表单无效
我一个表单上有两个文本框,如下: { /* 密码 */} 密码... 我的表单上有两个文本框,如下: <div className="row"> <div className="col-md-6"> { /* Password */} <Form.Group> <label>Password</label> <Form.Control required type="password" isInvalid={formErrors && formErrors.password} onChange={(e) => setField("password", e.target.value)} value={form.password ?? ""} /> <Form.Control.Feedback className="text-danger" type="invalid"> {formErrors.password} </Form.Control.Feedback> </Form.Group> </div> <div className="col-md-6"> { /* Confirm Password */} <Form.Group> <label>Confirm Password</label> <Form.Control required type="password" isInvalid={formErrors && formErrors.confirmPassword} onChange={(e) => setField("confirmPassword", e.target.value)} value={form.confirmPassword ?? ""} /> <Form.Control.Feedback className="text-danger" type="invalid"> {formErrors.confirmPassword} </Form.Control.Feedback> </Form.Group> </div> 在提交表单时,我会进行以下验证: setFormErrors({ password: form.password == undefined || form.password == "" ? "Password is required" : "", confirmPassword: form.confirmPassword == undefined || form.confirmPassword == "" ? "Please confirm the password" : form.password != form.confirmPassword ? "Passwords do not match" : "", }); if (event.currentTarget.checkValidity()) { console.log("Submitting...", form) } 如果文本框留空,那么它工作正常,两者都突出显示为红色并且表单不会提交。但是,如果您输入不匹配的密码,该字段会正确突出显示红色,指示错误,但表单仍会提交。 当页面上有标记为无效的控件时,为什么 checkValidity() 会失败? 我强烈建议您依赖库,而不是手动制定表单验证,例如是的。 查看官方 React Bootstrap 文档,您会找到验证表单的好例子。还有 有很多很棒的文档,比如这篇文章 ,祝你好运!
我的页面显示一个表格,每一行都是列表中的一个项目。每行都有一个表单,允许用户更新值并将其(且仅将其)提交回服务器。这就是全部工作。然而...
在Struts 2中我们可以开发@CustomValidator,它可以在应用程序中广泛使用: @CustomValidator(type = "CustomerNumberValidator", fieldName = "customerNo") 用于验证...
在 Laravel 中处理表单中的数据时,我很难在两种不同的方法之间做出决定。这两种方法的解释如下: 1:验证后使用经过验证的数据进行创建 $
有没有办法改变验证的顺序:Struts 2中的validate()与validation.xml?
我有一个validation.xml文件来检查表单的字段是否为空以及那种简单的验证。我还有一个 validate() 方法(从 ActionSupport 扩展)来检查更复杂的
Angular Validators.pattern() 不适用于 type="number",适用于 type="text"
我有以下输入元素,用于在 Angular 18 应用程序中输入(部分)电话号码以及关联的 Validators.pattern(/^[1-9]\d{5,}/): ... 表单 = this.formBuilder.group({
为了更轻松地使用我的 Angular 组件,我想只允许组件上的相关输入。这可能吗? IE。对于我的组件,我希望它能够工作: 为了更轻松地使用我的 Angular 组件,我想只允许组件上的相关输入。这可能吗? IE。对于我的组件elevensies我想要希望这样工作: <elevensies [drink]="tea" [milk]="yes" /> 或 <elevensies [drink]="water"/> 但是不允许组合: <elevensies [drink]="water" [milk]="yes" />// Is it possible to give an error when adding "milk" to water? 这可能吗? 注意:使用 <elevensies [oneInputToRuleThemAll]="{drink=tea,milk=yes}"/> 是一种后备解决方案,但我的问题涉及使用单独的输入 您可以使用 effect 和 input 信号对输入参数做出反应,并使用 throw new Error(' ... ') 抛出错误,这将迫使用户修复错误。 ... export class Elevensies { drink: InputSignal<'tea' | 'water'> = input.required(); milk: InputSignal<'yes' | 'no'> = input<'yes' | 'no'>('no'); constructor() { effect(() => { if (this.drink() !== 'water' && this.milk() !== 'no') { throw new Error( "Tea can only have milk set as 'yes' as a parameter, so leave milk as no or empty" ); } }); } } 完整代码: import { Component, input, InputSignal, effect } from '@angular/core'; import { bootstrapApplication } from '@angular/platform-browser'; @Component({ selector: 'elevensies', standalone: true, template: ` <h1> {{ drink() }}</h1> `, }) export class Elevensies { drink: InputSignal<'tea' | 'water'> = input.required(); milk: InputSignal<'yes' | 'no'> = input<'yes' | 'no'>('no'); constructor() { effect(() => { if (this.drink() !== 'water' && this.milk() !== 'no') { throw new Error( "Tea can only have milk set as 'yes' as a parameter, so leave milk as no or empty" ); } }); } } @Component({ selector: 'app-root', standalone: true, imports: [Elevensies], template: ` <elevensies [drink]="'tea'" [milk]="'yes'" /> <elevensies [drink]="'water'"/> <elevensies [drink]="'water'" [milk]="'yes'" /> <!-- should throw error --> `, }) export class App { name = 'Angular'; } bootstrapApplication(App); Stackblitz 演示
我正在开发用于两步验证的 QR 生成器应用程序。虽然 main.go 和 users.go 中的登录凭据正确,但登录验证仍然失败。这是代码: 英迈网 ...
Spring boot验证问题:理解MethodArgumentNotValidException
我在使用 Spring Boot 验证表单时遇到问题。我已经找到了问题的原因(并且知道可能的解决方案),但我想了解为什么会发生这种情况。 在控制...