SlimHttpRequest类的对象无法转换为double



我试图发送一个友谊请求,将用户ID组合在一个表中,但似乎我在某个地方犯了错误。以下是代码片段:

public function sendRequest($user_one_id, $user_two_id, $status, $action_user_id) {
    $stmt = $this->conn->prepare("INSERT INTO relationship(user_one_id, user_two_id, status, action_user_id) VALUES (?, ?, ?, ?)");
    $stmt->bind_param("iiii", $user_one_id, $user_two_id, $status, $action_user_id);
    $result = $stmt->execute(); // HERE IS AN ERROR
    $stmt->close();
    if (!$result) {
        return NULL;
    } else {
        return TRUE;
    }
}

我得到的错误:

Object of class SlimHttpRequest could not be converted to double

编辑:

这就是我调用方法的方式:

$app->post('/send_request', function() use ($app) {
// check for required params
verifyRequiredParams(array('user_one_id', 'user_two_id', 'status', 'action_user_id'));
// reading post params
$user_one_id = $app->request('user_one_id');
$user_two_id = $app->request('user_two_id');
$status = $app->request('status');
$action_user_id = $app->request('action_user_id');
$response = array();
$db = new DbHandler();
$relationship = $db->sendRequest($user_one_id, $user_two_id, $status, $action_user_id);
if ($relationship != NULL) {
    $response["error"] = false;
    $response["request"]["user_one_id"] = $relationship["user_one_id"];
    $response["request"]["user_two_id"] = $relationship["user_two_id"];
    $response["request"]["status"] = $relationship["status"];
    $response["request"]["action_user_id"] = $relationship["action_user_id"];
} else {
    $response["error"] = true;
    $response["message"] = "An error occurred. Please try again later.";
}
echoRespnse(200, $response);
});

verifyRequiredParams函数中发生了什么?在你发布的代码中,我没有看到任何SlimHttpRequest对象的转换。

$user_one_id = $app->request('user_one_id');
$user_two_id = $app->request('user_two_id');
$status = $app->request('status');
$action_user_id = $app->request('action_user_id');

据我所知,这是您对Slim请求对象执行任何操作的唯一代码行。您能验证您设置的这些变量中的值是否正确吗?像var_dump()一样,在代码中放一个exit,看看它说了什么。

最新更新