javascript - PHP 项目的客户端验证是好是坏?以及如何完善PHP项目?

标签 javascript php mysql client-side-validation

PHP 新手。经过大约几个小时的学习和实践,我创建了一个带有 MySQL 数据库的小型 PHP 项目,用于检查/创建/编辑/删除员工信息。

所以这是我改进它的问题(作为一个优秀且智能的 php 项目标准,不一定是企业级标准): 我应该使用更多的 Javascript 来进行客户端验证,还是主要使用 PHP 函数来完成这项工作? (例如检查表单数据是否以正确的格式输入)

要修改员工的信息,我应该怎样做才能确保使用数据库内相同的标准创建/编辑数据(例如,无论如何,名字和第二名应始终以一个(也是唯一的)大写字母开头用户在表单中输入了什么)、javascript、php 函数或 sql 查询?我认为他们都可以使其发挥作用,但哪一种是最好的方法,为什么?

这种代码让我发疯

<input type="text" name="inputFname" class="field-divided" placeholder="First"value="<?php echo $emp['f_name'] ?>"/>

有没有更好的方法让 php 代码与 html 代码分开?

最佳答案

来自不可信来源(客户端,可以被恶意用户操纵)的任何和所有数据都需要在受控的安全环境(服务器,被锁定在最终用户可以访问的地方)内进行验证和清理。在被允许与数据库联系之前(不明白)。

您还可以(并且应该)在客户端执行“bozo-test”验证,以确保完整性、正确的格式等;客户端验证允许您立即通知用户错误,而无需往返服务器的开销。但请记住,客户端验证无法保护您免受主动敌对用户的侵害。

希望有帮助。

关于javascript - PHP 项目的客户端验证是好是坏?以及如何完善PHP项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33658911/

相关文章:

php - 在 Prestashop 中自定义注册表单

php - 无法将 PHP 更新发布到 MySQL

java - Hibernate:在另一个实体PK中使用复合FK的一部分

JavaScript 数字属性语法

javascript - Angular http post 数据对象没有被 Node 服务器视为对象

php - 如何使用 DUPLICATE KEY UPDATE sql

java - 在php中将字符串转换为utf-8

mysql - 基于数据分组的特定mysql更新

javascript - React redux 等待来自 api 的数据

javascript - 如何验证我的单选按钮