gpt4 book ai didi

php - PHP 中 SQL 的安全测试数据

转载 作者:行者123 更新时间:2023-11-29 09:12:06 24 4
gpt4 key购买 nike

当您在 POST/GET 中收到 id 或字符串时,要做哪些测试?

编辑:它实际上是填充数据库sql,抱歉。

编辑2:这是我使用的测试和过滤器。

对于 ID:

if (isset($_GET['id']) && !empty($_GET['id']) && is_numeric($_GET['id']))

$id = trim($_GET['id']);

对于字符串:

if (isset($_GET['string']) && !empty($_GET['string']) && is_string($_GET['string']))

$str = mysql_real_escape_string(stripslashes(trim($_GET['string'])));

你觉得怎么样?

最佳答案

测试数据的第一条规则是验证它,并确保它是您想要/需要的。如果它应该是一封电子邮件,那么 make sure it's an email 。如果您需要它是电话号码,那么您可以使用 preg_* 函数来匹配您所在区域(或您最希望使用该表单的区域)的电话号码模式。

如果它只是基本数量的文本,那么您需要对其进行清理。 Joomla! 中的安全模块代码库具有出色的文本清理功能,可以加载防止 XSS 攻击等。

如果它应该是一个 ID 号(例如,用户的),那么您可以(并且应该)使用 phps 内置函数 is_numeric() .

除此之外,如果您使用类似 PDO 的内容或MySQLi使用准备好的语句,数据库服务器将与 PHP 一起工作,以确保您的所有文本都是卫生的并且不会破坏数据库。

关于php - PHP 中 SQL 的安全测试数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5287266/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com