2016-04-03 71 views
-1

我正在使用mysql來託管一個數據庫,並且我正在檢查'最喜歡的'表以查看是否存在條目。當用戶點擊收藏夾按鈕時,表格會填充。當我在postman上運行查詢時,我回應查詢的結果,即使數據庫中的條目存在,我也會返回NULL。檢查數據庫查詢總是返回NULL

$conn = mysqli_connect($servername, $username, $password,$db); 

// Check connection 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 

// json response array 
$response = array("error" => FALSE); 

if (isset($_POST['memory_id']) && isset($_POST['uid'])) { 

    // receiving the post params 
      $memory_id=$_POST['memory_id']; 
     $user_id=$_POST['uid']; 
     echo $memory_id; 
     echo $user_id; 
      $result = mysqli_query($conn, "SELECT * FROM favorite WHERE memory_id='$memory_id' AND user_id='$user_id'"); 
     if($result) 
     { 
     echo json_encode($result); 
      // user failed to store 
       $response["favorite"] = TRUE; 
       echo json_encode($response); 


     } 
      else { 
        $response["favorite"]=FALSE; 
      echo json_encode($response); 
      } 
     } 


    else { 
    $response["error"] = TRUE; 
    $response["error_msg"] = "Required parameters user or memory is missing!"; 
    echo json_encode($response); 
} 

mysqli_close($conn); 
?> 
+0

我會仔細檢查你的$結果。僅僅因爲如果($ result)不返回false並不意味着你檢索到了結果。而且你沒有調用任何獲取方法,所以你沒有從數據庫請求數據。 http://php.net/manual/en/function.mysqli-fetch.php – Rottingham

+0

檢查它的錯誤,你會看到自己,你沒有這樣做。 –

回答

0

也許你忘了打電話給一些mysqli的取功能(如mysqli_fetch_assoc):

$q = mysqli_query($conn, "SELECT * FROM favorite WHERE memory_id='$memory_id' AND user_id='$user_id'"); 
$result = mysqli_fetch_assoc($q); 
if($result) 
{ 
    echo json_encode($result); 
...... 

注:假設你的最愛:: memory_id和喜愛:: USER_ID列是VARCHAR類型

+0

我之前嘗試過,但是當我嘗試過它的時候。謝謝。 – Sean