首页 > 解决方案 > 使用 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";

标签: phpjquerymysqlsqlajax

解决方案


如果您需要提供端口,请将其作为最后一个参数

 $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();

推荐阅读