如何在php中循环发送SMS


how to send SMS within a loop in php

我试图使用循环发送多条短信,但不起作用。如果只有一行要提取,那么它就工作了。

代码:

while ($row = mysql_fetch_array($result)) {
    $dealer_name = $row['dealer_name'];
    $dealer_contact_no = $row['contact_no'];
    $date = new DateTime($row['date']);
    $date = $date->format('d-M-y');
    $due_date = new DateTime($row['due_date']);
    $due_date = $due_date->format('d-M-y');
    //////////////////sms body 
    $msg .= 'Bill Payable-' . "%0A";
    $msg .= 'Bill No:' . $row['ref_no'] . "%0A";
    $msg .= 'Date:' . $date . "%0A";
    $msg .= 'Total Amt:' . $row['total_amount'] . "%0A";
    $msg .= 'Pending Amt:' . $row['pending_amount'] . "%0A";
    $msg .= 'Due Date:' . $due_date . "%0A";
    $msg .= 'Days:' . $row['days'] . "%0A";
    $msg .= '-' . $sender_name;
    $username = "abc";
    $password = "1922345418";
    $text = $msg;
    $phones = $dealer_contact_no;
    if (strlen($phones) == 10) {
        header('Location:http://bulksms.mysmsmantra.com:8080/WebSMS/SMSAPI.jsp?username=' . $username . '&password=' . $password . '&sendername=NETSMS&mobileno=' . $phones . '&message=' . $text . '');
    }
}

使用php file_get_contents

while($row = mysql_fetch_array($result)){
file_get_contents('http://bulksms.mysmsmantra.com:8080/WebSMS/SMSAPI.jsp?username='.$username.'&password='.$password.'&sendername=NETSMS&mobileno='.$phones.'&message='.$text.'');
}

标题是在第一次调用时退出循环

您可以使用cURL

while($row = mysql_fetch_array($result))
{
    $url = 'http://bulksms.mysmsmantra.com:8080/WebSMS/SMSAPI.jsp?username=' . $username . '&password=' . $password . '&sendername=NETSMS&mobileno=' . $phones . '&message=' . $text;
    $ch = curl_init(); 
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    $output = curl_exec($ch);
    curl_close($ch);
}

这里给出了更多使用cURL的例子:掌握cURL 的技巧