【发布时间】:2020-04-05 11:01:18
【问题描述】:
在我的代码中,它会在发送消息后将 SMS 发送到选定的电话号码。我想在警报中显示成功消息,但它不起作用。
我的代码:
<div class="content-wrapper">
<section class="content">
<div class="row">
<div class="col-lg-offset-1 col-md-12 col-sm-12 col-xs-12 col-lg-10">
<div class="col-md-12">
<div class="box box-primary">
<div class="box box-default">
<div class="box-body">
<form id="getsms" method="post">
<div class="row">
<div class="col-md-5 col-sm-8 col-xs-8 col-lg-5">
<div class="form-group">
<label>Numbers</label>
<input type="text" class="form-control" name="number" id="number" dir="" autocomplete="off" readonly value="<?php
//print_r($users);
for ($i=0;$i < count($users); $i++) {
echo $users[$i];
echo ",";
}
?>" />
</div>
</div>
<div class="col-md-12 col-sm-5 col-xs-5 col-lg-12">
<input type="hidden" name="txt-user-ids" id="txt-user-ids" readonly value="
<?php
for ($i=0;$i < count($user_ids); $i++) {
echo $user_ids[$i];
echo ",";
}
?>"
/>
<div class="form-group">
<textarea class="text_area" rows="10" cols="35" name="getmessage" id="myInput" required></textarea>
</div>
<div class="box-footer">
</div>
</div>
</div>
<button type="button" onclick="getmessageonmobile();" class="btn btn-success col-lg-8 col-sm-6 col-xs-6 col-md-offset-2" name="sendopt">Send</button>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
</div>
脚本:
<script>
function getmessageonmobile(){
$.ajax({
url: "<?php echo base_url(); ?>admin_controllers/CategoryController/bulkSms",
type: "post",
data: $('#getsms').serialize(),
dataType:'json',
}).done(function( data ) {
var res=jQuery.parseJSON(data);
if(data.status=="success"){
alert('Message sucessfully sent ');
setTimeout(function(){location.reload();},5000);
}else if(res.errors[0].code=="192"){
alert(res.errors[0].message);
}
else{
alert("Try again");
}
});
}
</script>
控制器:
function bulkSms(){
$getsms = $this->input->post('getmessage');
$number = $this->input->post('number');
$txtUserIds = $this->input->post('txt-user-ids');
$myArray = explode(',', $txtUserIds);
for ($i=0; $i<sizeof($myArray)-1; $i++) {
$smsData= array(
'message'=>$getsms,
'sms_user_id'=>$myArray[$i],
);
$this->db->insert('historyofmessage',$smsData);
$string_version=array();
$string_version = implode(', ', (array)$number);
$apiKey = urlencode('rTQHR7zsvVeKU79sojb6grGRAavnKW');
$numbers = array($string_version);
$sender = urlencode('TXTLCL');
$unicode=1;
$message = rawurlencode($getsms);
$numbers = implode(',', $numbers);
$data = array('apikey' => $apiKey, 'numbers' => $numbers, "sender" => $sender, "message" => $message,"unicode"=>$unicode);
$ch = curl_init('https://api.textlocal.in/send/');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo json_encode($response);
}
}
在图像中,我选择了两个不同的数字并发送一条消息,只是想处理响应并在消息发送或消息未发送时显示在警报中。
【问题讨论】:
-
你能显示响应json吗?
-
请不要发布代码图片,而是复制粘贴,以便我们轻松调试。
-
Response{"warnings":[{"code":3,"message":"Invalid number"}],"balance":80,"batch_id":960128131,"cost":1,"num_messages":1,"message":{"num_parts":1,"sender":"TXTLCL","content":"@U006A0068006B006A"},"receipt_url":"","custom":"","messages":[{"id":"11326265607","recipient":919999999999}],"status":"success"}
标签: javascript php html ajax codeigniter