php - 如何防止 Question2Answer 中的 SQL 注入?
问题描述
我想防止 Question2Answer 中的 SQL 注入。
这就是我通过 HTML 表单在 MySQL 中存储数据的方式。我知道这是一个安全风险。
例子 -
$price = $_POST['price'];
或者
$price = array_key_exists('price', $_POST) ? $_POST['price'] : "";
和 SQL 查询是 -
$insertqry = qa_db_query_sub("INSERT INTO test_table (title, price) VALUES ('$title','$price')");
我应该如何在最新的 PHP 7 及以上版本中发布数据?
我认为转义字符串已被弃用或过时。
解决方案
根据我能找到的少量信息,您需要使用qa_db_query_sub
占位符值:
qa_db_query_sub("INSERT INTO test_table (title, price) VALUES ($,$)", $title, $price);
您将需要查看我找不到的官方文档,以确保这是正确的。
请注意,如果您正在尝试构建一个完整的应用程序,我不确定这个平台是否是最好的构建平台。还有很多其他的框架有更好的文档记录并且有更多的社区支持。
推荐阅读
- sql - Redshift SQL:添加和重置考虑日期和组的计数器
- java - Eclipse Gradle 项目未找到 JUnit 测试
- python - 为什么使用tensorflow做物体检测时平均精度和平均召回率很低?
- c# - System.MethodAccessException:'尝试通过方法'Microsoft.Extensions.Logging.Configuration 问题
- java - 如何在 mxgraph 中相对于鼠标位置进行缩放?
- javascript - OpenLayers OpenMaps Circle 在地图上绘制时大小不正确
- mysql - Mysql:与 json_extract 一起使用时,where in 不返回任何行
- linux - Linux Ncurses Pad Smearing(文本滚动尝试)
- sql - 基于访问用户输入的 SQL 动态查询问题
- javascript - 在 iOS 13.1 版本中,当输入的光标不可见时?