【问题标题】:No response from database query as JSON数据库查询没有响应为 JSON
【发布时间】:2019-04-23 23:50:25
【问题描述】:

我想获取当前登录用户喜欢的一系列文章,但我的服务器没有任何响应。我正在做一个带有 userId 集的 http 帖子,该帖子将在我的查询中使用,我用来获取该特定用户喜欢的文章。我的查询如下:

SELECT *, (CASE likes.userId WHEN $userId THEN 1 END) AS like FROM article INNER JOIN likes on likes.articleId = article.id WHERE likes.userId = '$userId'

我确实从我的 PHP 文件中的 http 帖子中获取了 userId,但不知何故我觉得我的 PHP 文件没有运行查询。

我的PHP文件代码如下:

require "dbconnect.php";

$data = file_get_contents("php://input");

if(isset($data))
{
$request = json_decode($data);

$userId = $request->userId;
}

$sql = "SELECT *, (CASE likes.userId WHEN '$userId' THEN 1 END) AS liked         FROM article INNER JOIN likes on likes.articleId = article.id WHERE likes.userId    = '$userId'";

$result = mysqli_query($con,$sql);

while($row = mysqli_fetch_array($result))
{
$likedata[] = $row;
}

$count = mysqli_num_rows($result);

if($count > 0)
{
echo json_encode($likedata);
}

谢谢,

【问题讨论】:

  • 回显查询 $sql 然后退出;并检查您是否获得了特定的查询值
  • @Chrisshi 我在数据库本身以及我自己的 userId 中多次运行查询,它显示了我喜欢的文章,这是我得到的输出 picture
  • 打印likedata[]数组并检查查询是否返回任何值
  • @Chrisshi 我打印了数组,它返回的只是这个imgur.com/a/EfAWPdX
  • 你能去掉 if($count > 0) { } 条件,只回显 json_encode($likedata);

标签: php http ionic-framework


【解决方案1】:

试试这个 json_encode($likedata,JSON_UNESCAPED_UNICODE);这可能是由于非utf8编码的字符

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-16
    • 2012-10-24
    • 1970-01-01
    • 1970-01-01
    • 2012-02-16
    • 2010-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多