短信在localhost上运行完美,但在线它无效

时间:2016-12-28 08:30:38

标签: php sms runtime-error

<?php
if(isset($_POST["submit"]))
{
$adm=$_POST["admno"];
$phn=$_POST["phn1"];
include("model.php");
$db = new database;
$r=$db->register($adm);
while($row=mysql_fetch_array($r))
{

if($row["phn_no1"]==$phn  || $row["phn_no2"]==$phn  || $row["phn_no3"]==$phn)
{
$formatted = "".substr($phn,6,10)." ";
$password = $formatted + $adm;
echo $password;
$db->setpassword($adm,$password);
$pre = 'Dear%20Parents,Your%20Password%20is%20';
$suf = '%20ThankYou.CV';
$sms = $pre.$password.$suf;

$ch = curl_init("http://www.perfectbulksms.in/Sendsmsapi.aspx
USERID=ID&PASSWORD=Pass$&SENDERID=SID&TO=$phn&MESSAGE=$sms");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
$result = curl_exec($ch);
curl_close($ch);
header("Location:password.php?msg=new"); 

}
else
{
header("Location:register.php?msg=invalid");

}
}
}
?>

此代码在本地主机上完美运行但在线上下一页需要很长时间,并且在线时不会将短信发送到手机。虽然它正在生成密码但不会将其发送到手机并花费太多时间来生成密码。但是在本地主机上它正在发送消息。

1 个答案:

答案 0 :(得分:0)

curl_close之前尝试此操作以找出问题。

if( $result === false)
{
    echo 'Curl error: ' . curl_error($ch).' '.curl_errno($ch);
}

看起来像你和短信服务器之间的连接超时问题。