用戶在文本框和要發送的消息上輸入兩個日期時間段。我分別得到$ time1和$ time2和$ message的值。我在select語句中使用$ time1和$ time2,它應該在兩次之間讀取數據庫中的移動號碼。這些是接收消息的號碼。如何以逗號分隔的數組傳遞變量?
問題,如何將這些數字保存到一個變量中,假設他們是十個數字,我應該將這些數字傳遞給Web服務以接收消息。這些數字還需要用逗號分隔以區分它們。爲了分離,我認爲implode函數可以在數組中工作。 我是PHP新手,所以有人幫助我實現這一點。謝謝。
$message =mysqli_real_escape_string($conn, $_POST['message']);
$time1 = mysqli_real_escape_string($conn, $t1);
$time2 = mysqli_real_escape_string($conn, $t2);
$sql = "SELECT DISTINCT msisdn FROM customer WHERE DATE_FORMAT(time_paid, '%Y-%c-%e') BETWEEN ADDDATE('$time1',INTERVAL 0 HOUR) AND ADDDATE('$time2',INTERVAL '23:59' HOUR_MINUTE)";
$result = $conn->query($sql);
if ($result->num_rows > 0)
{
//Output data of each row
while($row = $result->fetch_assoc())
{
$mobilenumber = $row['msisdn'];
}
}
else
{
echo "No data in the server! ";
}
$conn->close();
sendbulk($mobilenumber, $message);
function sendbulk($mobilenumber, $message)
{
$serviceArguments = array(
"mobilenumber" => $mobilenumber,
"message" => $message
);
$client = new SoapClient("http://*****:8080/WebSms/smswebservice?wsdl");
$result = $client->process($serviceArguments);
return $result;
}
開始由於不覆蓋你從數據庫中'$移動電話號碼= $行獲得的數字['msisdn'];'應該是'$ mobilenumber [] = $ row ['msisdn'];'現在你將有一個數組,不只是一個數字 – RiggsFolly
或者如果你只得到一個結果,刪除while循環 – RiggsFolly