PHP 聊天框 : Cannot Send to MySQL Database

标签 php mysql sql database

代码:

        $user = $_POST["user"];
        $message = $_POST["message"];
        $message = htmlspecialchars($message);
        
        $db=mysqli_connect("host","username","pwd","db");
        
        if (mysqli_connect_errno()){
            echo "Failed to connect to MySQL: " . mysql_connect_error();
        }
        
        #Connected   

        if(isset($message) == true && $message != "" && $message != " "){
            if(isset($user) == false){
                $user = "visitor";
            }
            
            $sql="
            INSERT INTO ChatBox (DateTime, User, Content)
            VALUES
            (now(),'$_POST[User]','$_POST[Content]')
            ";
 
            if (!mysqli_query($db,$sql))
            {
            die('Error: ' . mysqli_error($db));
            }
            }

            mysqli_close($db);

这是我在聊天框中的代码。

但是,我使用行 if(isset($message) == true && $message != ""&& $message != ""){ 来确定 $_POST[' message'] 是否为空。

最后,我无法在聊天框中插入任何内容。

这是我的聊天框链接:http://jamie-is-cool.comeze.com/chat.php

问题是:点击发送!后没有任何反应。它只是重新加载并没有发送。

我应该做什么?

完整的代码列表可用 here .

最佳答案

如果语句 if( isset( message) ... 返回 true,则插入代码块将会着火。

但是在您的 HTML 表单中,不存在名为 message 的元素,而是包含 usercontent 的元素。

<form action="chat.php" style="margin:0px;padding:1px;" method="POST">
  User: <input type="text" style="width:15%;" name="User" /> | 
  <input type="text" style="width:65%;" name="Content" />
  <input type="submit" value="Send!" style="width:10%;" />
</form>

将名为 message 的输入类型元素添加到具有某些值的表单,然后提交即可成功。

<form action="chat.php" style="margin:0px;padding:1px;" method="POST">
  User: <input type="text" style="width:15%;" name="User" /> | 
  <input type="text" style="width:65%;" name="Content" />
  <input type="text" style="width:65%;" name="message" />
  <input type="submit" value="Send!" style="width:10%;" />
</form>

为了更好的显示,请相应调整表单的显示宽度。

关于PHP 聊天框 : Cannot Send to MySQL Database,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23024092/

相关文章:

php - 多维数组;仅对第一个子数组进行 Foreach

Mysql取列中的值除以整列的平均值

mysql - ActiveRecord,选择查询数组返回 ActiveRecord::StatementInvalid in ImportsController#index

mysql - 索引扫描关系的缩减因子

sql - Count(*) 不同于 sys.partitions 中的行

php - 如何使用 mysqli 在事务中仅创建部分查询?

php - WordPress: wpdb->insert VERSUS wpdb->prepare(wpdb->query("INSERT

mysql - 使用 count 和 group by 对同一个表进行 2 个不同的查询

mysql - 将重复显示为 1 所需的 SQL 语句

php - PHP preg_functions 多字节安全吗?