0
私はProgram-o chatbotの上に開発しており、大部分は素晴らしいです。Program-O Chatbotオートコンプリート
- ボットがAIML定義から既に知っていることに基づいて、入力フィールドのオートコンプリートをしようとしています。
- 私の問題は、ロジック/ SQLがオートコンプリート機能のためにSQLを構築するために返されるものを特定する方法を知りません。
- 私はJSON/jQueryのチャットボットのバージョンを使用しており、コードを大幅に変更していません。 JqueryとjQuery UI CDNライブラリ(オートコンプリートJS用)が追加されました。オートコンプリートコードはDavid Carrです。
ご協力いただきありがとうございます。
//I added autocomplete JS within index.php
$(function() {
//autocomplete
$(".auto").autocomplete({
source: "search.php",
minLength: 1
});
});
//Search.php included within index.php
<?php
define('DB_SERVER', 'localhost');
define('DB_USER', 'root');
define('DB_PASSWORD', 'root');
define('DB_NAME', 'demo');
if (isset($_GET['say'])){
$return_arr = array();
try {
$conn = new PDO("mysql:host=".DB_SERVER.";port=8889;dbname=".DB_NAME, DB_USER, DB_PASSWORD);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare('SELECT something FROM someTable WHERE something LIKE :say');
$stmt->execute(array('term' => '%'.$_GET['term'].'%'));
while($row = $stmt->fetch()) {
$return_arr[] = $row['something'];
}
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
/* Toss back results as json encoded array. */
echo json_encode($return_arr);
}
?>