首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >短信网关不会发送短信

短信网关不会发送短信
EN

Stack Overflow用户
提问于 2017-10-15 21:21:43
回答 1查看 43关注 0票数 0

我正在尝试做一个简单的选择,并通过短信网关发送它,但当我发送的消息,应该运行的功能,没有任何反应。这是我写的函数。发送者应发送"utakmice x“,其中x是从数据库发送的下x个事件的数量:

代码语言:javascript
复制
function utakmice($broj) {
  $conn = connect();
  if ($conn->connect_error) {
    $smsporuka = "Ne moze se uspostaviti konekcija sa bazom, pokusajte kasnije.";
  } else {
    $query = "SELECT * FROM utakmica ORDER BY datum LIMIT = $broj;";
    $rezultat = mysql_query($query);
    if($rezultat) {
      if(mysql_num_rows($rezultat) !== 0) {
        $smsporuka="";
        while($red = mysql_fetch_array($rezultat)) {
          $smsporuka .= "(".$red["id_tekma"]." ".$red["protivnik"].",".$red["cena"]."RSD datum: ".$red["datum"].")";
        }
      } else {
        $smsporuka = "Nema selektovanih utakmica!";
      }
    }
  }
  disconnect($conn);
  sendResponse($smsporuka);
}

以下是函数之前的代码,函数信息按照它应该工作的方式工作:

代码语言:javascript
复制
function sendResponse($t) {
  $reply = rawurlencode($t);
  header("Content-Type: text/html; charset=utf-8");
  header("text: ".$reply);
}

if(empty($text) || strlen($text) == 0 || $text == "") {
  $smsporuka = "Poslali ste sms poruku u losem formatu, za vise informacija posaljite INFO.";
  sendResponse($smsporuka);
} else {
  $text = str_replace(";", "", $text);
  $explodeovanText = explode(' ',trim($text));
  $komanda = strtolower($explodeovanText[0]);
  switch ($komanda) {
    case "info":
      info();
      break;
    case "utakmice":
      utakmice($explodeovanText[1]);
      break;
    case "dodaj":
      dodaj($explodeovanText[1], $explodeovanText[2]);
      break;
    case "rezervisi":
      rezervisi($explodeovanText[1], $explodeovanText[2]);
      break;
    case "otkazi":
      otkazi($explodeovanText[2]);
      break;
  }
}

function info() {
  $smsporuka = "Posaljite UTAKMICA da bi ste videli narednih 5 protivnika i datume utakmica. Posaljite REZ_x_y, gde je x id utakmice, a y broj mesta koje rezervisete.";
  sendResponse($smsporuka);
}
EN

回答 1

Stack Overflow用户

发布于 2017-10-16 08:36:33

我解决了!mysql函数应该是mysqli,查询不正确。以下是解决方案。同样在开始时,我将默认参数设置为5。

代码语言:javascript
复制
function utakmice($broj = 5) {
  $smsporuka = "";
  $conn = connect();
  if ($conn->connect_error) {
     $smsporuka = "Ne moze se uspostaviti konekcija sa bazom, pokusajte kasnije.";
  } else {
      $query = "SELECT * FROM utakmica ORDER BY datum LIMIT $broj;";
      $rezultat = mysqli_query($conn, $query);
      if($rezultat) {
        if(mysqli_num_rows($rezultat) !== 0) {
           $smsporuka="";
           while($red = mysqli_fetch_array($rezultat)) {
             $smsporuka .= "(".$red["id_tekma"]." ".$red["protivnik"].",".$red["cena"]."RSD datum: ".$red["datum"].")";
           }
        } 
        else {
    $smsporuka = "Nema selektovanih utakmica!";
        }
      }
   }
disconnect($conn);
sendResponse($smsporuka);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46755479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档