nette / forms
📝 Nette Forms:在PHP中生成、验证和处理安全表单。方便的API,完全可定制,服务器和客户端验证以及成熟的设计。
Requires
- php: 8.1 - 8.4
- nette/component-model: ^3.1
- nette/http: ^3.3
- nette/utils: ^4.0.4
Requires (Dev)
- latte/latte: ^2.10.2 || ^3.0.12
- nette/application: ^3.0
- nette/di: ^3.0
- nette/tester: ^2.5.2
- phpstan/phpstan-nette: ^1
- tracy/tracy: ^2.9
Suggests
- ext-intl: to use date/time controls
Conflicts
- latte/latte: >=3.0.0 <3.0.12 || >=3.1
- dev-master / 4.0.x-dev
- v3.2.x-dev
- v3.2.4
- v3.2.3
- v3.2.2
- v3.2.1
- v3.2.0
- v3.1.x-dev
- v3.1.15
- v3.1.14
- v3.1.12
- v3.1.11
- v3.1.10
- v3.1.8
- v3.1.7
- v3.1.6
- v3.1.5
- v3.1.4
- v3.1.3
- v3.1.2
- v3.1.1
- v3.1.0
- v3.0.x-dev
- v3.0.7
- v3.0.6
- v3.0.5
- v3.0.4
- v3.0.3
- v3.0.2
- v3.0.1
- v3.0.0
- v2.4.x-dev
- v2.4.11
- v2.4.10
- v2.4.9
- v2.4.8
- v2.4.7
- v2.4.6
- v2.4.5
- v2.4.4
- v2.4.3
- v2.4.2
- v2.4.1
- v2.4.0
- v2.3.x-dev
- v2.3.12
- v2.3.11
- v2.3.10
- v2.3.9
- v2.3.8
- v2.3.7
- v2.3.6
- v2.3.5
- v2.3.4
- v2.3.3
- v2.3.2
- v2.3.1
- v2.3.0
- 2.2.x-dev
- v2.2.8
- v2.2.7
- v2.2.6
- v2.2.5
- v2.2.4
- v2.2.3
- v2.2.2
- v2.2.1
- v2.2.0
This package is auto-updated.
Last update: 2024-09-08 14:58:42 UTC
README
介绍
Nette\Forms极大地简化了创建和处理Web表单的过程。它真正能做什么呢?
- 在客户端(JavaScript)和服务器端验证发送的数据
- 提供高安全性
- 多种渲染模式
- 翻译,i18n
为什么要在简单的Web表单上设置框架?您不必担心编写两个验证脚本(客户端和服务器)等常规任务,您的代码将安全免受安全漏洞的侵害。
Nette框架非常注重安全性,因为表单是最常见的用户输入,Nette表单几乎坚不可摧。所有操作都是动态和透明的,无需手动设置。像跨站脚本(XSS)和跨站请求伪造(CSRF)这样的已知漏洞将被过滤,以及特殊控制字符。所有输入都会检查UTF-8的有效性。在验证时,所有多项选择、选择框等都会检查伪造的值。听起来不错?让我们试试。
文档可以在网站上找到。
支持我
你喜欢Nette Forms吗?你在期待新功能吗?
谢谢!
安装
推荐的安装方法是使用Composer
composer require nette/forms
它需要PHP版本8.1,并支持PHP 8.1至8.4。
客户端支持可以使用npm或yarn安装
npm install nette-forms
用法
让我们创建一个简单的注册表单
use Nette\Forms\Form; $form = new Form; $form->addText('name', 'Name:'); $form->addPassword('password', 'Password:'); $form->addSubmit('send', 'Register'); echo $form; // renders the form
尽管我们提到了验证,但我们的表单还没有。让我们来修复它。我们需要用户告诉我们他们的名字,所以我们应该调用一个setRequired()
方法,该方法的可选参数是显示错误消息,如果用户没有填写他们的名字
$form->addText('name', 'Name:') ->setRequired('Please fill your name.');
尝试提交一个没有名字的表单 - 你会一直看到这条消息,直到你满足验证规则。我们剩下的只是设置JavaScript规则。幸运的是,这很简单。我们只需要链接到位于分发包中/client-side/forms
的netteForms.js
。
<script src="netteForms.js"></script>
Nette框架将required
类添加到所有必填元素。添加以下样式将把name输入框的标签变成红色。
<style> .required label { color: maroon } </style>
继续….