我开发了一个简单的聊天系统。我试图使管理颜色红色在聊天用户中脱颖而出。我的方法采用会话用户名,如果会话用户名是管理员,那么它将每个人的文本颜色变为红色。如何才能使管理颜色为红色(其他人都是黑色)?
这是我的php代码:
<?php
error_reporting(E_ALL & ~E_NOTICE);
session_start();
if (isset($_SESSION['id'])) {
$userId = $_SESSION['id'];
$username = $_SESSION['username'];
$userLabel = $_SESSION['nickname'];
}
$connect = mysqli_connect("", "", "", "root");
mysqli_select_db($connect, "webclyde_root");
$result1 = mysqli_query($connect, "SELECT * FROM chat ORDER by id DESC");
while ($extract = mysqli_fetch_assoc($result1)) {
if ($username == "admin") {
echo "<br><b><font color='#D00003'>" . $extract['name'] . ":</b></font> " . $extract['message'];
}
else {
echo "<br><b><font color='#000000'>" . $extract['name'] . ":</b></font> " . $extract['message'];
}
}
?>
答案 0 :(得分:3)
HTML5不支持字体标记。请改用CSS样式属性,例如:
echo "<br><b><p style='color:#D00003'>" . $extract['name'] . ":</b></p>" . $extract['message'];
if / else逻辑的示例:
if($username=="admin"){
$color = "#D00003";
} else {
$color = "#000000";
}
echo "<p style='color:".$color."'>". $extract['name'] . "</p>";
或者使用语句RamRaider而不是if / else语句:
$color = $username=='admin' ? 'red' :'black';
此外,您正在检查会话$ username是否为“admin”。我可以想象你想检查数据库中的用户名是否为'admin'。在这种情况下,在if语句中用$ extract ['name']替换$ username。
祝你好运!答案 1 :(得分:1)
用以下代码替换你的while语句:
while ($extract = mysqli_fetch_assoc($result1)) {
if ($username == "admin") {
$color = '#D00003';
}
else {
$color = '#000000';
}
echo "<br><b><font style='color:".$color."'>" . $extract['name'] . ":</b></font> " . $extract['message'];
}