Ребята, у меня проблема в следующем коде. Мне нужно отправить массовые sms на 24 000 мобильных номеров. Но если я отправлю его после отправки 150 номеров, это покажет мне ошибку внутреннего сервера и остановит отправку других следующих номеров. Пожалуйста, ознакомьтесь с приведенным ниже кодом и ответьте на положительный код, который действительно может мне помочь.
<?php //Code using fopen //Change your configurations here. //--------------------------------- $username = "username"; $api_password = "api_password"; $sender = "sender"; $domain = "domain"; $priority = "1";// 1-Normal,2-Priority,3-Marketing $method = "POST"; //--------------------------------- for ($i = 0; $i < $var; $i++) { if (isset($_REQUEST['send'])) { $mobile = $explode_num[$i]; $lenthof_number = strlen($mobile); if ($lenthof_number >= 10) { $message = $_REQUEST['message']; $username = urlencode($username); $password = urlencode($api_password); $sender = urlencode($sender); $message = urlencode($message); $parameters = "username=$username&api_password=$api_password&sender=$sender&to=$mobile&message=$message&priority=$priority"; if ($method == "POST") { $opts = array( 'http' => array( 'method' => "$method", 'content' => "$parameters", 'header' => "Accept-language: en\r\n" . "Cookie: foo=bar\r\n" ) ); $context = stream_context_create($opts); $fp = fopen("http://$domain/pushsms.php", "r", false, $context); } else { $fp = fopen("http://$domain/pushsms.php?$parameters", "r"); } $response = stream_get_contents($fp); fpassthru($fp); fclose($fp); if ($response == "") echo "Process Failed, Please check domain, username and password."; else echo "$response"; }//third if }//second if }//first if }//main for ?>
Вероятно, ваша страница превысила максимальное время выполнения. Поместите следующий код вверху страницы и попробуйте:
ini_set("memory_limit","128M"); //ini_set("memory_limit","256M"); //this sets it unlimited ini_set("max_execution_time",0);
Добавьте это в начало своего скрипта PHP
<?php set_time_limit(0);