gpt4 book ai didi

Php 聊天选择消息

转载 作者:行者123 更新时间:2023-11-29 19:27:22 24 4
gpt4 key购买 nike

我目前正在编写一个聊天系统,并且我已经将消息放入我的数据库(MySql)中,所以我的问题是我不知道如何从我的数据库中获取这些消息并显示它。

<ol class="chat">
<li class="other">
<div class="message">
<p></p>
</div>
</li>
</ol>

我希望消息显示在其中

这是“从数据库获取消息”的良好开端

$query = "SELECT messages, sender FROM `messages`";

感谢所有回复!

好的,这是我的完整 PHP 代码:

<?php
ob_start();
session_start();
include '../Datenbank/dbconnect.php';

// if session is not set this will redirect to login page
if (!isset($_SESSION['user'])) {
header("Location: ../login/index.php");
exit;
}

// select loggedin users detail
$res = mysql_query("SELECT * FROM users WHERE userId=" . $_SESSION['user']);
$userRow = mysql_fetch_array($res);

$error = false;
$sender = $userRow['userName'];

$conn = mysql_connect('localhost', 'root', '', 'dbtest');

$query = "SELECT messages, sender, timestamp FROM `messages` ORDER BY `timestamp`";

$result = mysql_query($conn ,$query);

echo '<ol class="chat">';

while ($res = mysql_fetch_assoc($result)) {
echo "
<li class='other'>
<div class='message'>
<p>Message: ".$res['messages']."</p>
<p>Sender: ".$res['sender']."</p>
<p>Time: ".$res['timestamp']."</p>
</div>
</li>";

}

echo '</ol>';

mysql_close($conn);

if (isset($_POST['send'])) {
$test = true;
$message = $_POST['message'];
if (empty($message)) {
$error = true;
$messageError = "Please enter your message.";
}
if (!$error) {
$query = "INSERT INTO messages(message,sender) VALUES('$message','$sender')";

$res = mysql_query($query);

if ($res) {
unset($message);
} else {
$errTyp2 = "danger";
$errMSG2 = "Something went wrong, try again later...";
}
}
};
?>

Dbconnect.php:

<?php

error_reporting( ~E_DEPRECATED & ~E_NOTICE );


define('DBHOST', 'localhost');
define('DBUSER', 'root');
define('DBPASS', '');
define('DBNAME', 'dbtest');

$conn = mysql_connect(DBHOST,DBUSER,DBPASS);
$dbcon = mysql_select_db(DBNAME);

if ( !$conn ) {
die("Connection failed : " . mysql_error());
}

if ( !$dbcon ) {
die("Database Connection failed : " . mysql_error());
}

最佳答案

您使用什么 PHP SQL 方法? mysql_connect、mysqli_connect 还是 PDO?由于 mysql_connect 已弃用,我将给出 mysqli 和 PDO 的示例。

MySQLi 示例

// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn)
{
die("Connection failed: " . mysqli_connect_error());
}

// sql your query
$sql = "SELECT messages, sender FROM messages";
$result = mysqli_query($conn, $sql);

echo '<ol class="chat">';

while($row = mysqli_fetch_assoc($result)) {
{
echo "
<li class='other'>
<div class='message'>
<p>Message: ".$row['messages']."</p> <!-- output message -->
<p>Sender: ".$row['sender']."</p> <!-- output sender name -->
</div>
</li>";
}

echo '</ol>';

mysqli_close($conn);

PDO 示例

try
{
// create connection
$conn = new PDO("mysql:host=$servername;dbname=$dbname",$username,$password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stmt = $conn->prepare("SELECT messages, sender FROM messages"); // your sql query
$stmt->execute();

echo '<ol class="chat">';

while($row = $stmt->fetch(PDO::FETCH_ASSOC))
{
echo "
<li class='other'>
<div class='message'>
<p>Message: ".$row['messages']."</p> <!-- output message -->
<p>Sender: ".$row['sender']."</p> <!-- output sender name -->
</div>
</li>";
}

echo "</ol>";
}
catch(PDOException $e)
{
echo "Connection Error : " . $e->getMessage();
}
$conn = null;

Mysql_connect 示例(警告!此方法在 PHP 7 中已弃用)

// create connection
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
// select database
mysql_select_db('DATABASE_NAME');

$sql = "SELECT messages, sender FROM messages"; // your sql query
$result = mysql_query( $sql, $conn ); // retrieve result

if(! $result )
{
die('Could not get data: ' . mysql_error());
}

echo '<ol class="chat">';

while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
echo "
<li class='other'>
<div class='message'>
<p>Message: ".$row['messages']."</p> <!-- output message -->
<p>Sender: ".$row['sender']."</p> <!-- output sender name -->
</div>
</li>";
}

echo "</ol>";
mysql_close($conn);

关于Php 聊天选择消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42042272/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com