gpt4 book ai didi

php - Program-O 聊天机器人自动完成

转载 作者:行者123 更新时间:2023-11-29 18:22:16 26 4
gpt4 key购买 nike

我正在 Program-o chatbot 之上进行开发在大多数情况下,它运行良好。

  1. 我试图根据机器人从 AIML 定义中已知的信息自动完成“say”输入字段。
  2. 我的问题是我不知道他们的逻辑/SQL 如何确定返回的内容,以便我构建 SQL 以实现自动完成功能。
  3. 我正在使用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);
}

?>

最佳答案

我没有正确解决这个问题。您可以进行如下查询。确保包含 jQuery UI CSS 和 JS 文件才能使其正常工作。最后,下面的脚本不显示表单本身,但确保您有一个 id =“say” 的输入,以便正常工作。感谢更好的答案,但这就是我能想到的。谢谢

//Main File / index.php etc
<script>
$(function() {
$( "#say" ).autocomplete({
source: "search.php",
minLength: 1
});
});
</script>


//search.php
<?php
$host="localhost";
$username="uid";
$password="pwd";
$dbname="name";

//create a connection with dbname
$conn=mysqli_connect($host,$username,$password,$dbname);
if(!$conn)
{
die("error in establishing connection: ". mysqli_connect_error());
}

$search=$_GET['term'];

//select query to get data from table
$sql="SELECT pattern from aiml WHERE pattern LIKE '%".$search."%'";

//run the above query
$result=mysqli_query($conn,$sql);

//display all the records
while($row=mysqli_fetch_assoc($result))
{
//storing all the values of 'post_title' field one by one in an array
$data[]=$row['pattern'];
}

//return json data
echo json_encode($data);
?>

关于php - Program-O 聊天机器人自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46474010/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com