gpt4 book ai didi

php - 尝试阻止 SQL 注入(inject)后,未从我的数据库收集结果

转载 作者:行者123 更新时间:2023-11-30 01:29:27 26 4
gpt4 key购买 nike

我目前正在尝试使用 mysqli 语句来防止 sql 注入(inject)。但是,完成此转换后,我不再从数据库中获取结果。我有一个表单,用户可以通过缩小年份间隔、一年中的月份和位置来选择经济数据。这是我当前的编码问题:

<?php

if (isset($_POST['submitted'])) {


$gYear = $_POST["year"];
$gYear2 = $_POST["year2"];
$gMonth = $_POST["month"];
$gSelect = $_POST["location"];

if ($gYear > $gYear2) {

die('ERROR: Your second year cant be a time period before the first year you selected');
}

else {

$query = $conn->prepare("SELECT $gSelect, Year FROM unemployed WHERE year BETWEEN ? AND ? and month= ?");
$query->bind_param('sss', $gyear, $gYear2, $gMonth);

$query->execute();

$result = = $conn->query($query)

echo"<table>";
echo "<tr><th>Year</th><th>Time</th><th>$gSelect</th></tr>";

while ($row = $result->fetch_object()){


echo "<tr><td>";
echo $row->Year;
echo "</td><td>";
echo $gMonth;
echo "</td><td>";
echo $row->$gSelect;
echo "</td></tr>";

}




echo "</table";

}

} // end of main if statement

?>

在我尝试更新查询以防止注入(inject)之前它就起作用了。我目前正在使用 php 5.2.14 来解决这个问题,以防你们想知道。我错过了一个声明吗?谁能帮我弄清楚我的问题是什么?任何帮助将不胜感激。

最佳答案

$query->get_result()

在您的 PHP 版本中似乎不可用。请参阅here寻求解决方法。

编辑:更正,感谢评论

关于php - 尝试阻止 SQL 注入(inject)后,未从我的数据库收集结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17636117/

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