这是我的代码。也许我有一个巨大的错误。但是,系统会将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×tamp=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×tamp=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());
?>
答案 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;,获取邮件内容的关键字是文本。