我刚刚为我正在处理的 CAD/MDT 创建了一个简单的 API,当我执行 /citations/userid/1 时,我设法让它显示正确的信息。这将显示 SQL 数据库中的所有正确值,但是,如果我执行 /citations/issued_by/kevingorman1000,它只会抛出错误。我不知道错误是什么,因为我使用的是 Slim php 并且似乎无法显示错误。任何想法为什么它不起作用?我在下面添加了我的代码..$app->get('/citation/issuedby/{issued_by}', function(Request $request, Response $response){$issued_by = $request->getAttribute('issued_by');$sql = "SELECT * FROM ncic_citations WHERE issuedby = $issuedby";try{ // Get DB Object $db = new db(); // Call Connection to DB $db = $db->connect(); $stmt = $db->query($sql); $issby = $stmt->fetchAll(PDO::FETCH_OBJ); $db = null; echo json_encode($issby);} catch(PDOExecption $e) { echo '{"error"} : {"text": '.$e->getMessage().'}';}});任何想法为什么会这样?它只允许通过号码获取还是我还需要做其他事情?第一次使用这个,对 PHP 也有点陌生。
2 回答
慕工程0101907
TA贡献1887条经验 获得超5个赞
这是因为 SQL 错误(字符串周围缺少引号)。
您尝试发送查询
$sql = "SELECT * FROM ncic_citations WHERE issuedby = kevingorman1000";
正确的查询必须是
$sql = "SELECT * FROM ncic_citations WHERE issuedby = 'kevingorman1000'";
- 2 回答
- 0 关注
- 170 浏览
添加回答
举报
0/150
提交
取消