代码在同一台服务器上运行正常。
我的问题是如何在一台服务器上进行更新?
因此,如果我将www.domain1.com
发布到www.domain2.com(api)
emailadres
,我该如何实现?我得到了404页。
$app = new \Slim\Slim();
$app->put('/user/update/:id/', function( $id ) use( $app ){
global $connection;
$app->response()->header("Content-Type", "application/json");
if( $id && $id > 0 ){
$result = $connection->query( 'SELECT * FROM `users` WHERE id = '.(int)$id.' ;' );
}else{
$result = array();
}
if ($result) {
$post = $app->request()->put();
$result = $connection->query( "UPDATE `users` SET email = '".$_POST['email']."' WHERE id = $id;");
echo json_encode(array(
"status" => (bool)$result,
"message" => "User updated successfully"
));
}
else{
echo json_encode(array(
"status" => false,
"message" => "User id $id does not exist"
));
}
});
$app->run();?>
形式:
<form action="" method="post">
<input type="text" name="email" value=""/>
<input type="hidden" name="_METHOD" value="PUT"/>
<input type="submit" value="Update user"/>
</form>
答案 0 :(得分:0)
if($_POST){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"http://domain.com/user/update/7/");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "email=".$_POST['email']."&_METHOD=put");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$server_output = curl_exec ($ch);
curl_close ($ch);
}
需要发送_METHOD = put