外观如何: https://jsfiddle.net/jef2L8m6/
外观如何: https://jsfiddle.net/jef2L8m6/1/
我知道它看起来很糟糕,这只是出于测试目的。
部分后端代码:
<?php //Selects all of the logged in users messages.
$name = $_SESSION["name"];
$con = mysqli_connect('localhost','root','','chat');
if (!$con) {
die('Could not connect: ' . mysqli_error($con));
}
mysqli_select_db($con,"ajax_demo");
$sql="SELECT * FROM `chat` ORDER BY date";
$result = mysqli_query($con,$sql);
$numrows = mysqli_num_rows($result);
if( $numrows == "0" or !isset($_SESSION["name"])){
echo "<div class='msg'>You are not registered (Or there are no messages to display)</div>";
exit();
}else{
echo "";
}
echo "<div class='msg_container'>";
while($row = mysqli_fetch_array($result)) {
echo "<div class='msg_user'>";
echo "<div class='username_user'><span>" . $row['username'] . "</span></div>";
echo "<div class='message_user'><span>" . $row['message'] . "</span></div>";
echo "</div>";
}
echo "";
mysqli_close($con);
?>
非常感谢您花时间阅读本文。
我试图找出如何根据名称更改每个单独用户的div标签?
有没有办法用PHP做到这一点,我尝试过两个单独的查询,一个只选择用户消息,另一个选择每个人(不包括用户)
但由于它没有正确排序,所以它们都没有工作。
如果出来的用户名不等于会话中的用户名,我可以用PHP以某种方式更改div吗?
非常感谢,如果你不认为我解释得很好,请给我一些反馈,我会更改/添加你需要的东西,谢谢!
答案 0 :(得分:1)
非常感谢你,#you; mulder&#34;,你让我想到一个解决这个问题的简单方法非常有帮助。
我觉得这么简单太复杂了!
以下是可能有所帮助的任何人的最终代码:
while($row = mysqli_fetch_array($result)) {
$class_msg = "msg";
$class_username = "username";
$class_message = "message";
if ($row['username'] == $_SESSION['name']) {
$class_msg = "msg_user";
$class_username = "username_user";
$class_message = "message_user";
}
echo "<div class='$class_msg'>";
echo "<div class='$class_username'><span>" . $row['username'] . "</span></div>";
echo "<div class='$class_message'><span>" . $row['message'] . "</span></div>";
echo "</div>";
}
答案 1 :(得分:0)
while($row = mysqli_fetch_array($result)) {
$class = 'msg';
if ($row['username'] == $_SESSION['name']) {
$class = 'msg_user';
}
echo "<div class='" . $class . "'>";
// other codes here
}