我对整个 PHP/MSSQL 编码非常陌生,需要 SQL 注入预防方面的帮助。
我正在向使用 MSSQL 数据库的网站添加一个简单的搜索功能。该代码按照我想要的方式工作,但它很容易受到 SQL 注入的攻击。
除了准备语句之外,还有其他方法可以确保其安全吗?
我对存储过程也不太熟悉。
我尝试过准备语句,但没有运气(除非我做错了什么,这很可能)
我不熟悉的存储过程。
<?PHP
$tech = (isset($_POST['Technician'])? $_POST['Technician'] : null);
$sql = "SELECT * FROM Errors WHERE Error LIKE '%$tech%' or Description LIKE '%$tech%'";
$name = trim($_POST['Technician']);
if(empty($name)){
print '<script type="text/javascript">alert("Please enter an Error Code or Error Description")</script>';
exit;
}
$stmt = sqlsrv_query($conn, $sql);
if ($stmt) {
$rows = sqlsrv_has_rows( $stmt );
if ($rows === true) {
echo "";
} else{
echo '<script type="text/javascript">alert("Please enter a valid Term")</script>';
} …Run Code Online (Sandbox Code Playgroud)