2012-03-11 183 views
1

我想通过PHP Codeigniter中的以下内容发送文本消息。通过PHP Codeigniter和电子邮件发送短信网关发送短信

如果我从我的gmail客户端发送一封电子邮件到同一个“##########@vtext.com”,我收到短信。

如果我使用下面的相同代码,但替换我的Gmail帐户,我通过电子邮件收到消息。

但是,我似乎无法触发通过下面的代码发送给我的短信。

我认为这可能与电话服务中某处的垃圾邮件过滤器有关。

任何建议,或者通过PHP/Codeigniter发送短信的免费解决方法?谢谢!

public function textMe() 
    { 
     $this->load->library('email'); 
     $this->email->to('##########@vtext.com'); [number edited out] 
     $this->email->from('[email protected]','Test'); 
     $this->email->subject("Test Subject"); 
     $this->email->message('Test Message'); 
     $this->email->send(); 
     echo $this->email->print_debugger(); 
    } 

回答

0

好了,你可以使用TextMarketer.co.uk。它有一个伟大的解决方案,电子邮件到SMS和其他类型,如CMS也支持。

1

Codeigniter助手在这种情况下很有用。帮助器功能将在需要的地方提供。下面保存文件中应用/ Heplers/sendsms_helper.php

/*Start sendsms_helper.php file */ 

    function sendsms($number, $message_body, $return = '0'){  
     $sender = 'SEDEMO'; // Need to change 
     $smsGatewayUrl = 'http://springedge.com'; 
     $apikey = '62q3z3hs49xxxxxx'; // Change 

     $textmessage = urlencode($textmessage); 
     $api_element = '/api/web/send/'; 
     $api_params = $api_element.'?apikey='.$apikey.'&sender='.$sender.'&to='.$mobileno. 
'&message='.$textmessage;  
     $smsgatewaydata = $smsGatewayUrl.$api_params; 
     $url = $smsgatewaydata; 
     $ch = curl_init(); 
     curl_setopt($ch, CURLOPT_POST, false); 
     curl_setopt($ch, CURLOPT_URL, $url); 
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
     $output = curl_exec($ch); 
     curl_close($ch);   
     if(!$output){ 
      $output = file_get_contents($smsgatewaydata); 
     } 

     if($return == '1'){ 
      return $output;    
     }else{ 
      echo "Sent"; 
     }   
    } 

    /*  * End sendsms_helper.php file  */ 
  • **用途:**
      1. 负载sendsms帮手通过$ this->负载>帮手( 'sendsms_helper');
    • 呼叫sendsms功能发送('919918xxxxxx','测试消息');