尝试使用Clickatell半工作来检索消息

时间:2012-03-27 14:03:10

标签: php sql clickatell

这是我的代码。也许我有一个巨大的错误。但是,系统会将API ID,消息ID和发件人放在其自己的列表中的数据库中。但是,现在我的工作很重要,我无法让它为消息文本添加回调。它似乎没有出现,我想知道我在检索它时出错了。

非常感谢你。 Maurissa

<?php 

//database connection 

$hostname_sCONN = "localhost"; 
$database_sCONN = "XXXXXX";
$username_sCONN = "XXXXX";
$password_sCONN = "XXXXXX"; 
$sCONN = mysql_pconnect($hostname_sCONN, $username_sCONN, $password_sCONN) or trigger_error(mysql_error(),E_USER_ERROR); 



// Declare variables for url string 
//http://www.mysite.com/callback.php?api_id=xxx&apiMsgId=xxx&cliMsgId=xxx&status=xxx&timestamp=xxx&to=xxx&from=xxx&charge=xxx 


//this will pull the query part of the url i.e. api_id=xxx&apiMsgId=xxx&cliMsgId=xxx&status=xxx&timestamp=xxx&to=xxx&from=xxx&charge=xxx 
$url = $_SERVER['QUERY_STRING']; 


//retrieve contents of the url 
$api_id = $_GET['api_id']; 
$from = $_GET['from']; 
$to = $_GET['to']; 
$text = $_GET['text']; 
$dated = $_GET['timestamp']; 
$apiMsgId = trim($_GET['apiMsgId']); 
$status = $_GET['status']; 
$charge = $_GET['charge']; 




mysql_select_db($database_sCONN, $sCONN); 
$sql = "INSERT INTO tbl_messages (msgid, apiMsgId, sender, recipient, dated, message) VALUES ('$api_id', '$apiMsgId', '$from', '$to', '$dated', '$text')"; 
$result = mysql_query($sql, $sCONN) or die(mysql_error()); 

mysql_free_result($rsOutbox); 

mysql_select_db($database_sCONN, $sCONN); 
$sql2 = "SELECT value1 FROM fgusers3 WHERE mobile = '".$from."'"; 
$result2 = mysql_query($sql2, $sCONN) or die(mysql_error());
mysql_free_result($rsOutbox); 

$query4 = "SELECT * FROM `$user` ORDER BY id_user DESC 
                    LIMIT 1";

$result4 = mysql_query($query4);
$row4 = mysql_fetch_array($result4);
$balance = $row4['balance'];


$finalbalance = $result2 + $balance;

$sql3 = "INSERT INTO `$user` (`date`, `credit`, `balance`) VALUES ('$today', '$result2', '$finalbalance')"; 
$result3 = mysql_query($sql, $sCONN) or die(mysql_error());

?>

2 个答案:

答案 0 :(得分:0)

如果您没有得到任何回复,这可能就是问题。

一个。发送消息的地方

时未启用回叫

示例(回叫可以是1,2或4)

http://api.clickatell.com/http/sendmsg?session_id=xxx&to=xxxx&text=xxxx&callback=3

B中。回调URL未在Clickatell中发送

℃。 Clickatell IP锁定

d。点击无法解析您的网址

请检查以上所有内容... var_dump输出然后我们可以处理如何将其更新到您的mysql数据库

====== Callbank信息========

0没有返回消息状态。 002,003,011

2仅返回消息的最终状态。 004,005,006,007,008,010,01

3返回消息的中间状态和最终状态。除001以外的所有状态

由于 :)

答案 1 :(得分:0)

你必须捕获&#39;文字&#39;而不是&#39; message&#39;,获取邮件内容的关键字是文本。