Моя проблема в том, что я использую цикл while, но посылает только одно сообщение. Все записи хранятся в базе данных. Я хочу отправлять сообщения всем номерам, которые хранятся в базе данных. Как я могу это сделать?
Вот что я пробовал до сих пор:
<?php $sql = "select * from subscribe where type ='$cat' and city ='$city'"; $query = mysql_query($sql); if ($query != null) { while ($row = mysql_fetch_array($query)) { $name = $row['name']; $phoneNum = $row['fone']; $condition = 'true'; $message = "Hi Now you can buy your product."; include('sendsms.php'); $debug = true; ozekiSend($phoneNum, $message, $debug); } } ?>
Файл: sentms.php
<?php ######################################################## # Login information for the SMS Gateway ######################################################## $ozeki_user = "admin"; $ozeki_password = "abc123"; $ozeki_url = "http://127.0.0.1:9501/api?"; ######################################################## # Functions used to send the SMS message ######################################################## function httpRequest($url) { $pattern = "/http...([0-9a-zA-Z-.]*).([0-9]*).(.*)/"; preg_match($pattern, $url, $args); $in = ""; $fp = fsockopen("$args[1]", $args[2], $errno, $errstr, 30); if (!$fp) { return("$errstr ($errno)"); } else { $out = "GET /$args[3] HTTP/1.1\r\n"; $out .= "Host: $args[1]:$args[2]\r\n"; $out .= "User-agent: Ozeki PHP client\r\n"; $out .= "Accept: */*\r\n"; $out .= "Connection: Close\r\n\r\n"; fwrite($fp, $out); while (!feof($fp)) { $in.=fgets($fp, 128); } } fclose($fp); return($in); } function ozekiSend($phone, $msg, $debug = false) { global $ozeki_user, $ozeki_password, $ozeki_url; $url = 'username=' . $ozeki_user; $url.= '&password=' . $ozeki_password; $url.= '&action=sendmessage'; $url.= '&messagetype=SMS:TEXT'; $url.= '&recipient=' . urlencode($phone); $url.= '&messagedata=' . urlencode($msg); $urltouse = $ozeki_url . $url; if ($debug) { echo "Request: <br>$urltouse<br><br>"; } //Open the URL to send the message $response = httpRequest($urltouse); if ($debug) { echo "Response: <br><pre>" . str_replace(array("<", ">"), array("<", ">"), $response) . "</pre><br>"; } return($response); } ######################################################## # GET data from sendsms.html ######################################################## $phonenum = $_POST['recipient']; //here how i receive data from while loop???// $message = $_POST['message']; $debug = true; ozekiSend($phonenum, $message, $debug); ?>