データベース レコードから URL にすべての電話番号を送信する必要がありますが、送信するたびに 300 の電話番号のみを制限する必要があります。
次のシナリオを実行できる php スクリプトが必要です。
- データベースから 2,000 レコードを取得します。
- すべての行をループし、それぞれを変数などに保存します。(重要)
- カウント合計には 2,000 レコードがあります。
- URL に書き込むたびに 300 レコードをループします。(非常に重要)
- URLを送信します(この部分は説明不要です)
- 次の 300 レコードをループして URL に書き込み、2,000 レコードまで繰り返します。
この場合、2,000 / 300 = 7 回のループで、最初の 6 回と最後の時間で 300 レコードが 200 レコードしか送信されないと考えています。
上で述べたように、300 レコードのループは非常に重要であり、次のループはレコード 301 から 600 までを知ることができます。
編集済み
以下は私の元のコードですが、すべての電話番号を読み取り、それらすべてを私の URL にダムします。
$smsno = trim($_REQUEST['string_of_phone_number_eg_0123456;0124357;0198723']);
$message = trim($_REQUEST['message']);
$phoneNo = explode(";", $smsno);
// ----------
//
// Need to count total $phoneNo, eg total is 2,000 phone numbers
// Loop 300 times for the phone numbers, eg 001-300, 301-600, 401-900, ..., 1501-1800, 1801-2000
// Every 300 records, eg $phoneStr = '0123456;0124357;0198723;...' total 300 phone numbers in this string
// Write into my URL: $link = "http://smsexample.com/sms.php?destinationnumber=$phoneStr&messagetosms=$message";
//
// ----------
300 レコードごとにループして文字列に書き込み、この文字列を URL にスローする方法がわからないため、ここから解決策を探しています。
最初の 300 レコードを作成できますが、最初の 300 レコードが文字列に書き込まれ、URL にスローされた後、次の 300 レコードを取得し、URL への 2 回目のスローを実行するのを待つ方法。
例えば、
300 レコードの最初のループ:
$phoneStr = phoneNumber01;phoneNumber02;phoneNumber03;...;phoneNumber300
$link = "http://smsexample.com/sms.php?destinationnumber=$phoneStr&messagetosms=$message";
次の 300 レコードの 2 番目のループ$
phoneStr
= phoneNumber301;phoneNumber302;phoneNumber303;...;phoneNumber600
等々。