2016-03-08 117 views
0

使用邮递员查看这段php是否按预期工作,但邮递员返回错误Malformed JSON: Unexpected 'U'并且数据库未更新,无法绕过此错误,因为它对我来说看起来很好?解析数据时出现格式错误的JSON响应

代码:

function placeVoteForCandidate() 
{ 
    global $connect; 

    $username = $_POST["username"]; 

    $query = "UPDATE User SET votesAttained=votesAttained+1 WHERE USER_NAME = $username"; 

    mysqli_query($connect, $query) or die (mysqli_error($connect)); 
    mysqli_close($connect); 

    $message['success'] = 'Vote added'; 
    echo json_encode($message); 
} 
+0

“$ username”周围的某些引号如何? –

+0

是的,忘记了我需要在PHP中这样做,欢呼! – GTucker

+0

votesAttained = votesAttained + 1这是什么? votesAttained应该是可变的权利? – Senanayaka

回答

1

当执行刚刚

echo json_encode('Vote added'); 

应该没有问题。是否有任何引发此错误的异常? 尝试将SQL语句更改为

$query = "UPDATE User SET votesAttained=votesAttained+1 WHERE USER_NAME = " . $username; 
+0

当我在$用户名附加引号时,它工作正常,因为查询是一个字符串,我只是错过了引号而没有意识到它,你的方式虽然完美 – GTucker