[mysql]我只可以将数字存储在数据库中,在 php 中的简单吼

标签: MySQL PHP
发布时间: 2015/6/11 19:03:07
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我已经开始建立一些非常基本的吼 \ 在 php 聊天。它将只是一个基本的 mysql 表 (int) id 用作唯一索引和 (文本) 消息列。 它工作,但它在数据库中存储只有其中的数字。 我一直都在到处寻找解决方案,但还找不到。我怀疑问题驻留在 mysql 数据库或查询,但也许不太对劲的代码。

下面是代码:

<?php
// ****************
// Database Settings
// ****************

$sql_hst = "localhost";
$sql_db = "chatbox";
$sql_usr = "chatbox";
$sql_pwd = "chatbox";

// ****************
//  Core Functions
// ****************

function connectdb()
{
    //conection:
    global $sql_srv,$sql_usr,$sql_pwd,$sql_db;
    $link = mysqli_connect($sql_srv,$sql_usr,$sql_pwd,$sql_db) or die("Error " . mysqli_error($link));
    return $link;
}

function getMessages()
{
        $result = mysqli_query(connectdb(),"SELECT message FROM messages");
        while($row = mysqli_fetch_array($result))
        {
            echo $row['message'];
            echo "<br>";
        }
}

function postMessage()
{
if (isset($_POST['message'])) 
{
    mysqli_query(connectdb(), "INSERT INTO messages (message) VALUES (".$_POST['message'].")");
    //echo $_POST['message']; //test post data
}
}

connectdb();
postMessage();

//END OF MAIN PHP
?>
<!DOCTYPE html>
<html>
    <head><title>Chatbox</title>
    <style>
    body { background-color: gray; }
    input{width:375px;display:block;border: 1px solid #999;height: 25px;--moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3);box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3);}
    .message_box{ background-color: white; height: 500px; width: 100%;}
    .message_form{width: 100%;}
    .message_input{width: 100%;}
    .message_submit{}
    </style>
    </head>
    <body>

    <div class="message_box"><?php getMessages(); ?></div>
    <form class="message_form" action="chatbox.php" method="post">
    <input class="message_input" type="text" name="message">
    <!-- <input type="submit"> -->
    </form>
    </body>
</html>

解决方法 1:

看看是否这有助于:

function postMessage($message){
    mysqli_query(connectdb(), "INSERT INTO messages (message) VALUES ("'".mysqli_real_escape_string($message)."'")");
}

// connectdb(); // this is probably not needed since this function
// is called in postMessage function 
if (isset($_POST['message'])){
    postMessage($_POST['message']);
}
官方微信
官方QQ群
31647020