mysqli_prepare 报表行未更新

mysqli_prepare statment rows not updating

下面的函数正在执行 $stmt 并打印成功,但显示已更新零行。如果我手动 运行 sql 它将更新数据库。但它没有从下面的 php 代码更新。我错过了什么吗?

 function updateLastActive($link, $id) {

    $stmt = mysqli_prepare($link,"update `account` set `lastActive` =now() where  id = ?"); 
    mysqli_stmt_bind_param($stmt, 'i', $id);
    if(mysqli_stmt_execute($stmt)){
        $num_of_rows = $stmt->num_rows; 
        echo 'success';
        echo $num_of_rows;
        return 1;
    }else{
        return 0;
    }}

mysqli_affected_rows()

Returns the number of rows affected by the last INSERT, UPDATE, REPLACE or DELETE query.

使用mysqli_affected_rows()代替$stmt->num_rows

 if (mysqli_stmt_execute($stmt)) {
        $num_of_rows = mysqli_affected_rows($link));
        echo 'success';
        echo $num_of_rows;
        return 1;
    } else {
        return 0;
    }