PHP SLIM删除问题始终获取成功消息

PHP SLIM删除问题始终获取成功消息,php,mysql,slim,Php,Mysql,Slim,运行此脚本时,即使id不存在且未影响任何记录,我也始终会收到成功消息“successfully deleted”。知道为什么吗?我怎样才能解决这个问题 $app->post('/api/delete', function(Request $request, Response $response) { $id = $request->getParam('id'); $sql = "DELETE FROM test WHERE id=:id"; try{

运行此脚本时,即使id不存在且未影响任何记录,我也始终会收到成功消息
“successfully deleted”
。知道为什么吗?我怎样才能解决这个问题

$app->post('/api/delete', function(Request $request, Response $response)   {

  $id = $request->getParam('id');

  $sql = "DELETE  FROM test WHERE id=:id";

  try{
      // Get DB Object
      $db = new db();
      // Connect
      $db = $db->connect();
      $stmt = $db->prepare($sql);
      $stmt->bindParam(':id', $id);

      $stmt->execute();
      echo '{"notice": {"text": "successfully deleted"}}' ;

    } catch(PDOException $e){
      //echo '{"error": {"text": '.$e->getMessage().'}}';
      return $response->withStatus(400)->write('{"error": {"text": '.$e->getMessage().'}}');
    }
});
需要在那里使用:-


只要查询执行,它就不会抛出异常。在您的情况下,它成功执行,并且影响了0行。
 try{
  // Get DB Object
  $db = new db();
  // Connect
  $db = $db->connect();
  $stmt = $db->prepare($sql);
  $stmt->bindParam(':id', $id);

  $query=$stmt->execute();
  if($query)
     echo '{"notice": {"text": "successfully deleted"}}' ;
  else
     echo '{"notice": {"text": "Some Error Occured"}}' ;
} catch(PDOException $e){
  //echo '{"error": {"text": '.$e->getMessage().'}}';
  return $response->withStatus(400)->write('{"error": {"text": '.$e->getMessage().'}}');
}
$app->post('/api/delete', function(Request $request, Response $response)   {

  $id = $request->getParam('id');

  $sql = "DELETE  FROM test WHERE id=:id";

  try{
      // Get DB Object
      $db = new db();
      // Connect
      $db = $db->connect();
      $stmt = $db->prepare($sql);
      $stmt->bindParam(':id', $id);

      $stmt->execute();
      $count = $stmt->rowCount();
      if($count >0){
        echo '{"notice": {"text": "successfully deleted"}}' ;
      }

    } catch(PDOException $e){
      //echo '{"error": {"text": '.$e->getMessage().'}}';
      return $response->withStatus(400)->write('{"error": {"text": '.$e->getMessage().'}}');
    }
});