官术网_书友最值得收藏!

Adding tracking for each user

We want to be able to track each user's response to the survey we sent and this is how we will do that.

In the previous recipe, we stored the phone number, survey ID, and the unique session ID for each person we sent the survey to.

Now we want to store each user's response for tracking later.

Getting ready

The complete source code for this recipe can be found in the Chapter3/ folder.

How to do it...

Let's set up tracker.php that listens for responses from our subscribers using the following steps:

  1. On your web server, create a file and name it tracker.php with the following code:
    <?php
    include("config.php");
    include("pdo.class.php");
    $pdo = Db::singleton();
    if( isset($_POST['Body']) ){
      $phone = $_POST['From'];
      $phone = str_replace('+','',$phone);
      $action = strtolower($_POST['Body']);
      $sid = $_POST['SmsSid'];
      $sql = "UPDATE responses SET answer='{$action}' WHERE phone_number='{$phone}' AND sms_sid='{$sid}'";
      $pdo->exec( $sql );
      $msg = "Your answer has been recorded";
      print_sms_reply($msg);
    }
    function print_sms_reply ($sms_reply){
      echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";    
      echo "<Response>\n<Sms>\n";
      echo $sms_reply;
      echo "</Sms></Response>\n";
    }
    ?>
  2. Finally, you have to point your Twilio phone number to it.
    How to do it...

    Insert the URL to this page in the SMS Request URL box. Then, any calls that you receive on this number will be processed via tracker.php.

How it works...

When a user replies to a survey, the tracker.php file is triggered.

We then perform a look-up based on their phone number and unique session ID and store their response in the Responses table.

Then, when we display the results later, we can use the responses, associate them with the answers we sent, and get a look at what people think.

主站蜘蛛池模板: 望城县| 吉木乃县| 六枝特区| 苍溪县| 扬州市| 张掖市| 玛多县| 泰宁县| 通江县| 和平区| 北票市| 辉南县| 通山县| 三穗县| 濉溪县| 奉节县| 五华县| 张掖市| 耒阳市| 项城市| 古丈县| 荣昌县| 泾阳县| 长春市| 什邡市| 莱阳市| 太湖县| 镇巴县| 夏邑县| 宝鸡市| 沂水县| 太白县| 萝北县| 乐山市| 鄂伦春自治旗| 专栏| 正安县| 博野县| 临武县| 宁德市| 莱阳市|