我想向我的數據庫中的所有用戶發送推送通知,但通過此代碼,我只向我的數據庫中的最後一個用戶發送通知。Android,向多個用戶發送推送通知
<?php
$connect = mysqli_connect("localhost", "***", "***", "***");
$message = $_POST["message"];
$title = $_POST["title"];
$path = "https://fcm.googleapis.com/fcm/send";
$server_key = "***";
$sql = "SELECT fcm_token FROM User";
$result = mysqli_query($connect, $sql);
while($row = mysqli_fetch_assoc($result)) {
$headers = array("Authorization:key=" .$server_key, "Content-Type:application/json");
$fields = array("to"=>$row["fcm_token"], "notification"=>array("title"=>$title, "body"=>$message));
$payload = json_encode($fields);
$curl_session = curl_init();
curl_setopt($curl_session, CURLOPT_URL, $path);
curl_setopt($curl_session, CURLOPT_POST, true);
curl_setopt($curl_session, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl_session, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_session, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl_session, CURLOPT_IPRESOLVE, CURL_IFRESOLVE_V4);
curl_setopt($curl_session, CURLOPT_POSTFIELDS, $payload);
}
$result = curl_exec($curl_session);
curl_close($curl_session);
mysqli_close($connect);
$response = array();
$response["success"] = true;
echo json_encode($response);
?>
任何人都知道解決方案嗎?
'$結果= curl_exec($ curl_session);' 是不是在你的'while'週期。 –
@PavelStrelchenko不工作是這樣的:警告:mysqli_fetch_assoc()期望參數1是mysqli_result,字符串給出 –
所以,你需要聲明另一個變量=)像這樣:'$ curl_result = curl_exec($ curl_session);' –