0

所以我有一个聊天室类型的数据库,其中用户插入的文本被存储到数据库中,作为他们的用户名在一个字段中,他们的消息在另一个字段中。我想让我的页面输出数据库信息,以便人们可以看到彼此的消息。我该怎么做呢?

此外,是否可以创建一个 for 循环来检查数据库是否已使用新消息更新,因此它会重新加载页面?(然后页面再次输出数据库信息更新大家的消息)

请帮忙..我很困惑。

4

3 回答 3

2

查看 PHP 手册中的MySQL 函数。您需要连接到服务器/数据库并运行选择查询以从表中获取数据。

至于循环:您可以使用 JavaScript setInterval 函数并将其与 AJAX 调用结合起来定期轮询新记录。

于 2009-04-07T13:07:50.930 回答
0
  1. 要从 mysql 数据库中读取任何内容,您可以使用mysql_connect()mysql_query()函数,例如:
$link = mysql_connect('localhost', 'root', '');
$results = mysql_query('select * from messages');

while($row = mysql_fetch_array($results))
{
    echo $row['username'] . ': ' . $row['message'].'<br />';
}
  1. 要显示新消息,最好的方法是使用 AJAX 并从那里轮询数据库,或者将单独的页面加载到 DIV 中,或者将 XML 取回并放入 HTML 标记中。我建议将JQuery用于此类任务。查看http://www.sitepoint.com/article/ajax-jquery/以获取示例。
于 2009-04-07T13:13:33.833 回答
0

就像其他人所说的那样,您将需要连接到您的数据库,然后查询您拥有数据的表。

while($row = mysql_fetch_assoc($results))
{
    echo $row['username'] . " said: " . $row['message'] . "<br />";
}

我使用 mysql_fetch_assoc() 而不是 mysql_fetch_array() 因为数组是关联数组(不是按整数索引,而是按名称(关联))

至于动态显示页面上的更新,这涉及到AJAX。基本上这意味着您的页面将调用后台脚本以从数据库中获取新记录。这将需要您的“消息”表中的一个新字段,例如“msg_delivered”,您可以在获取它时将其设置为“1”。

如果您有兴趣制作 AJAX 聊天客户端,您应该检查一下:http ://htmltimes.com/javascript-chat-c​​lient-in-jquery.php

于 2009-04-07T15:16:59.760 回答