我知道如何使用客户端(JAVASCRIPT
),服务器端(PHP
)和数据库(Triggers in mysql
)验证数据。我想验证所有这些方法中的数据吗?使用大型申请流程?如果我用这些方法来验证它的速度慢吗?如果是这样做的禁食方式是什么?
JAVASCIPT
var data $("#input").val();
if(is_nan(data)){
}
PHP
if(empty($_POST['input'])){
}
MYSQL
DELIMITER $$
CREATE TRIGGER example_before_insert
BEFORE INSERT ON registrations FOR EACH ROW
BEGIN
IF NEW.RG_Reg_NO NOT REGEXP '^[A-Z]{3}\/[A-Z]-\d{6}$' THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'The registration number you have entered is wrong';
END IF;
END;
$$
答案 0 :(得分:1)
随意添加更多理由或纠正错误。
答案 1 :(得分:0)
这是主观的 - 您需要多安全以及您对编写安全代码有多大信心?
我会亲自使用客户端(在服务器上节省多头)然后在进行准备好的INSERTS,UPDATES或DELETES等之前进行php检查(用于站点安全)。
但是,如果您认为某人可以在您的数据库上运行查询,则可以使用MySQL检查
所有人的开销都很小,所以它取决于可接受的脚本时间,用户数量等。
就像我说的那样主观 - 我会去javascript php并确保我的代码是安全的,但那就是我。
从不只是javascript检查 - 方便我开始调用函数并破坏数据库。
答案 2 :(得分:0)
通常在客户端(javascript)和serverside(php)上进行验证就足够了。 因为如果有人禁用js,那么你的js验证将不会发生。因此,您将依赖php进行验证。