2016-05-28 4 views
0

私のapiはmySqlとうまくいっていますが、MSSQLに変更するとエラーが発生します。 実際に私はすでにMSSQLからすべてのデータを取得しますが、私の他のAPIは動作しませんでした。ここ は、すべての件のデータを取得するための私の作業コードです:SlimフレームワークとMSSQLデータベースを備えた快適なAPI

$app->get('/mirror', 'getAll'); 
$app->get('/mirror/{skincare_process_info_id}', function($request,$response,$args){ 
    get_skin_id($args['skincare_process_info_id']); 
}); 
$app->run(); 

function getAll() { 
    $sql = "select * FROM SkincareProcessInfo ORDER BY skincare_process_info_id"; 
    try { 
     $db = connect_db(); 
     $stmt = $db->query($sql); 
     $skin = $stmt->fetchAll(PDO::FETCH_OBJ); 
     $db = null; 
     echo '{"skin process info": ' . json_encode($skin) . '}'; 
    }catch(PDOException $e) { 
     echo '{"error":{"text":'. $e->getMessage() .'}}'; 
    }  
} 

それが正常に動作しますが、私の他のAPIの中で: ここでidでデータを取得するための私のAPIがあります:

function get_skin_id($skin_id){ 

    $sql = "SELECT * FROM SkincareProcessInfo WHERE `skincare_process_info_id` = '$skin_id'"; 

    try{ 
     $db = connect_db(); 
     $stmt = $db->query($sql); 
     $skin = $stmt->fetchAll(PDO::FETCH_ASSOC); 
     $db = null; 
     if($stmt == 1){ 
      echo '{"skin process info": ' . json_encode($skin) . '}'; 
     }else{ 
      echo 'false'; 
     } 

    }catch(PDOException $e){ 
     echo '{"error":{"text":'. $e->getMessage() .'}}'; 
    } 
} 

と、ここで私が得たエラーです:

Fatal error: Call to a member function fetchAll() on boolean in C:\xampp\htdocs\SLIM\mirror.php on line 57 
+0

ジョークをピンで固定することはできますか?あなたは "mySql"と言っていますが、私がMSSQLに変更したときにエラーが発生しました "...?私は言う:mySqlしかし、私はMSSQLに変更すると、私は多くの日の間に他の後にエラーが発生した。 –

答えて

1

この

$db = connect_db(); 
$query = $db->prepare("SELECT * FROM SkincareProcessInfo WHERE skincare_process_info_id = ?"); 
$query->execute(array($skin_id)); 
$fetch = $query->fetchAll(PDO::FETCH_ASSOC); 
$rowCount = $query->rowCount(); 
if($rowCount > 0){ 
echo '{"skin process info": ' . json_encode($fetch) . '}'; 
}else{ 
echo 'false'; 
} 
みてください
+0

ありがとうアリは、今働いている。 – Hsueh

関連する問題