php - 使用 jQuery 和 PHP 的聊天功能不写入数据库
问题描述
我正在尝试使用 jQuery 和 PHP 创建聊天页面的开头。但是,当我设置了一个简单的页面来写入我的数据库时,出现了已添加的 echo 语句,但它没有添加到我的数据库中。
我创建了一个 php 网页聊天,包括 jQuery 语句和 HTML 文本框。每个 ID 对应于语句。第二个 php 页面addChat.php包含要写入我的数据库的 PHP 和 SQL 语句。
它没有显示任何错误,但不会添加到我的数据库中。任何帮助将不胜感激。
<head>
<script src="jquery-3.3.1.min.js" type="text/javascript"></script>
<script>
$(document).ready(function(){
$("#btn").click(function(){
$.post("addChat.php",{name: $("#name").val(), msg: $("msg").val()},function(data,status){
alert(data);
});
});
});
</script>
<?php
$con=new mysqli("localhost:3308","root","","fypdatabase");
$st=$con->prepare("insert into chat(name,message) values(?,?)");
$st->bind_param("ss", $_POST["name"],$_POST["msg"]);
$st->execute();
echo "Added";
解决方案
如果您需要提供端口,请将其作为最后一个参数
$con = new con('localhost', 'root', 'password', 'fypdatabase', 3308);
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", con_connect_error());
echo "error";
exit();
}
$st=$con->prepare("INSERT INTO chat(name,message) values(?,?)");
$st->bind_param("ss", $_POST["name"],$_POST["msg"]);
/* execute prepared statement */
$st->execute();
echo "Added";
/* close statement and connection */
$st->close();
/* close connection */
$con->close();
推荐阅读
- nestjs - 在实体 NestJS 中使用模块服务
- r - 如何计算以下排除 R 中的索引总和?
- docker - 构建 Docker 映像在一台机器上成功,但在另一台机器上失败,并出现“无法解析 ...”
- angular - 如何在不使用订阅的情况下从 observable 获取值
- javascript - 输入 mongoose.connect
- java - 从 Nexus 存储库下载 Pi4j 快照的过程?
- javascript - 在其他 jQuery 插件上调用函数时 jQuery 脚本停止
- tree - 如何解决 prolog 中的伐木工人测验问题?
- sql - 使用循环在proc中更改表名称和日期的月份
- azure-devops - 在 Azure Devops 管道上运行 Flutter 集成测试以进行 UI 自动化测试