PHP Slim REST API在调用get函数后返回null
我已经使用PHP Slim开发了一个简单的REST API,并实现了一个简单的函数,该函数将在匹配专辑名和REST调用时返回曲目列表 这是我用来进行rest调用的index.php文件 这是getTracksByName函数,用于在匹配唱片集名称后返回列表a曲目PHP Slim REST API在调用get函数后返回null,php,rest,slim,Php,Rest,Slim,我已经使用PHP Slim开发了一个简单的REST API,并实现了一个简单的函数,该函数将在匹配专辑名和REST调用时返回曲目列表 这是我用来进行rest调用的index.php文件 这是getTracksByName函数,用于在匹配唱片集名称后返回列表a曲目 public function getTracksByName($album_keyword) { $stmt = $this->conn->prepare( "SELECT `album`.albu
public function getTracksByName($album_keyword) {
$stmt = $this->conn->prepare(
"SELECT `album`.album_name, `track`.track_artist, `track`.track_name "
. "FROM `category_album` ,`album` , `track` "
. "where `album`.album_id=`track`.album_id AND`album`.`album_name` LIKE ?");
$stmt->bind_param("i", $album_keyword);
if ($stmt->execute()) {
$res = array();
$stmt->bind_result($album_name, $track_artist, $track_name);
$stmt->fetch();
$res["album_name"] = $album_name;
$res["track_artist"] = $track_artist;
$res["track_name"] = $track_name;
$stmt->close();
return $res;
} else {
return NULL;
}
}
现在,在进行REST调用之后,它将为每个轨迹项返回空值。我将SQL查询从
。。。你叫什么名字
到
。。。你喜欢什么
它可以工作,但由于某些原因,它不能处理以下查询
。。。你叫什么名字
我对PHP绝对是新手,任何形式的帮助都将不胜感激 $stmt->bind_parami,$album_关键字;绑定INTEGER类型的参数。更改为$stmt->bind_参数,$album_关键字;绑定字符串类型的参数
在准备好的语句代码中有两个潜在问题 首先,告诉语句参数是int:
$stmt->bind_param("i", $album_keyword);
i表示整数。当你想要一个字符串s时
第二个问题是,在准备好的语句中使用LIKE时,仍然需要在标准LIKE中使用%符号
例如:
$stmt->bind_param("s", "%$album_keyword%");
$stmt->bind_param("s", "%$album_keyword%");