我试图查询包含动物信息的数据库,通过搜索表格的动物或动物类别的记录来做到这一点。例如,输入可能是" Lion"在AnimalName字段中搜索,或者#34; Mammal"在“类别”字段中。但是,当我的代码准确读取输入的值并根据需要使用$ searchItem存储它时,即使输入的数据与记录匹配,它也不会从数据库接收响应。无论搜索到什么内容,它都将始终返回无结果(存储在$ result中)。
如果需要更多信息,我们将非常感谢您找出我的代码有什么问题。 输入数据时代码运行,请注意" input_type'存储是否基于AnimalName或Category进行搜索,以及" search_item'存储要搜索的字符串:
<?php
/*The "animaldatabase" database is being accessed, with the "animal" table being queried.*/
$searchType = $_GET['input_type'];
$searchItem = "'" . filter_var($_GET['searchedItem'], FILTER_SANITIZE_STRING) . "'";
$host="localhost";
$username="root";
$pword="root";
$database="animaldatabase";
require("db_connection.php");
if($searchType == "animal"){
$sql="SELECT * FROM animaltable WHERE AnimalName = $searchItem";
}
if($searchType == "category"){
$sql="SELECT * FROM animaltable WHERE Category = $searchItem";
}
$result = $mysqli->query($sql);
链接数据库连接代码:
<?php
//connect to the database using mysqli API
$mysqli = new mysqli($host, $username, $pword, $database);
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: (" .
$mysqli->connect_errno . ") "
. $mysqli->connect_error;
die;
}
?>