,这做的是,当用户点击该按钮时,它将执行的Ajax代码,然后获取输入的值,并将其发送到PHP文件中的函数然后将其发送回Ajax代码以显示来自MySQL表的消息。Ajax代码无法正常工作,即使它是(我认为)正确
我试着改变我的代码,改变divID,改变语法,清除代码块,但似乎没有工作。
AJAX
<script>
$(document).ready(function() {
$("#snd").click(function() {
var msgg = $('input[name=message]').val();
$.ajax({
type: "POST",
url: 'automatedchat_func.php',
data: {newmsg: msgg},
success: function(data) {
$("#conversation").html(data);
}
});
});
});
</script>
HTML 修订
<div class="convo">
<div class="convo_field" id="conversation">
</div>
<div class="obj">
<div class="txtbox">
<form method="POST">
<input type="input" id="msg" name="message" placeholder="Type exact or related word(s) of your question"/>
</form>
</div>
<div class="but_send"><button id="snd" name="send">SEND</button></div>
</div>
</div>
PHP 修订
<?php
include 'database/connect.php';
session_start();
$sql = "SELECT * FROM ai WHERE keywords LIKE '%$_POST[message]%' OR '$_POST[message]%_' OR '$_POST[message]_'";
$result = $conn->query($sql);
if ($row = $result->fetch_assoc()) {
echo "Hi ". $_SESSION['name'] .".<br> " . $row['message'];
}
?>
您收到了什么错误?你有没有从浏览器检查控制台?并检查它给出了什么错误 –
那么你的JS和HTML看起来像它会工作,你确认PHP脚本实际上返回任何东西? MySQL是否失败 - 是一个实际返回的行..? – Stuart
另外(我希望你已经知道),你的SQL是广泛存在的滥用(期待几个链接到[鲍比表](https://xkcd.com/327/) – Stuart