sql >> Databáze >  >> RDS >> Mysql

Dialogový tok PHP MySQL

kdykoli se spustí webhook, musíte poslouchat actions z odpovědí JSON, z actions provedli přepínač actions

index.php

<?php
require 'get_enews.php';

function processMessage($input) {
    $action = $input["result"]["action"];
    switch($action){

        case 'getNews':
            $param = $input["result"]["parameters"]["number"];
            getNews($param);
            break;

        default :
            sendMessage(array(
                "source" => "RMC",
                "speech" => "I am not able to understand. what do you want ?",
                "displayText" => "I am not able to understand. what do you want ?",
                "contextOut" => array()
            ));
    }
}
function sendMessage($parameters) {
    header('Content-Type: application/json');
    $data = str_replace('\/','/',json_encode($parameters));
    echo $data;
}
$input = json_decode(file_get_contents('php://input'), true);
if (isset($input["result"]["action"])) {
    processMessage($input);
}
?>

get_enews.php

<?php
function getNews($param){
    require 'config.php';
    $getNews="";
    $Query="SELECT link FROM public.news WHERE year='$param'";
    $Result=pg_query($con,$Query);
    if(isset($Result) && !empty($Result) && pg_num_rows($Result) > 0){
    $row=pg_fetch_assoc($Result);
    $getNews= "Here is details that you require - Link: " . $row["link"];
        $arr=array(
            "source" => "RMC",
            "speech" => $getNews,
            "displayText" => $getNews,
        );
        sendMessage($arr);
    }else{
        $arr=array(
            "source" => "RMC",
            "speech" => "No year matched in database.",
            "displayText" => "No year matched in database.",
        );
        sendMessage($arr);
    }
}
?>

Takže když je akce zachycena, bude provedena a přejde do getNews($param); funkce zde dostávám year jako odpověď od uživatele v mém případě a provádím dotaz v databázi a vracím odpověď z databáze.




  1. Oddity návratového kódu uložené procedury SQL Server

  2. Porovnejte hodnoty dvou sloupců

  3. Rychlý tip MySQL:Použití příkazu DROP USER

  4. Uživatel nemůže vidět databáze v mysql workbench