PHP - 搜索查询

时间:2016-01-01 17:20:13

标签: php mysql

我想从数据库中选择查询。如果我写这段代码:

$selectOption = $_GET['name'];
echo $selectOption.'<br>';
$sql = "SELECT 'rpm' FROM sn WHERE power = '1s1s'";
$result = $conn->query($sql);

if ($result->num_rows > 0) {

while($row = $result->fetch_assoc()) {
echo "rpm: " . $row["rpm"];
}
} else {
echo "0 results";
}

它显示了我正确的答案。否则,如果我写这个:

$sql = "SELECT 'rpm' FROM 'sn' WHERE 'power' = '$selectOption'";

它显示 0结果。任何纠正上述查询的建议?

1 个答案:

答案 0 :(得分:1)

你需要做两件事,两者都在评论中说明: -

1.在查询中使用反引号(`),如下所示: -

 $sql = "SELECT `rpm` FROM `sn` WHERE `power` = '$selectOption'";

2.从SQL注入中防止查询。为此使用准备好的声明。链接在评论部分给出。为了你的帮助,我把它放在我的答案中: - How can I prevent SQL injection in PHP?