首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将span分配给某个用户名

如何将span分配给某个用户名
EN

Stack Overflow用户
提问于 2014-12-16 07:42:56
回答 3查看 271关注 0票数 0

找到了解决办法!谢谢“北基多南”和“道格·利瑞”。

解决方案守则;

代码语言:javascript
复制
if ($result->num_rows > 0) {
 // output data of each row
 while($row = $result->fetch_assoc()) {
     echo "<li class='list-group-item'>" . $row["user_name"];
if ($row["user_name"] == "TacoLover22") {
     echo "<span class='badge'>Dev</span>";
}
echo "</li>";
 }

我有一个用户名列表,我有一个代码来检查用户名是否存在,如果它确实存在,我希望在其中追加一个div。这是一张解释这个的图片

但是,我的代码可以工作,但它没有将该div分配给所选的用户名。

这是PHP代码;

代码语言:javascript
复制
<?php 

if (
    $row["user_name"] === "TacoLover22");{
    echo  "<span class='badge'>Dev</span>";
    }
?>

下面是获取所有用户名的另一个php代码;

代码语言:javascript
复制
<?php
$servername = "####";
$username = "####";
$password = "########";
$dbname = "########";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
     die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT user_name FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
     // output data of each row
     while($row = $result->fetch_assoc()) {
         echo "<li class='list-group-item'>" . $row["user_name"];
     }
} else {
     echo "0 results";
}

$conn->close();
?>  

此代码的结果可以找到这里。

编辑:这是建议中的完整代码,它似乎仍然不起作用。跨度现在还没有出现。

代码语言:javascript
复制
// output data of each row
while($row = $result->fetch_assoc()) {
echo "<li class='list-group-item'>" . $row["user_name"];
if ($row["user_name"] === "TacoLover22") {
     echo "<span class='badge'>Dev</span>";
}
echo "</li>";
}

谢谢你的帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-12-16 07:50:58

您必须在mysql-fetch-循环中追加<span> (注意:您正在讨论div,但使用的是span,这在html中是不同的)。

代码语言:javascript
复制
while($row = $result->fetch_assoc()) {
    echo "<li class='list-group-item'>" . $row["user_name"];
    if ($row["user_name"] == "TacoLover22")
    {
        echo  "<span class='badge'>Dev</span>";
    }
}

解释:-循环中正在迭代mysql-查询的结果集。变量$row是指向结果各自行的指针。

在while-循环完成后,“指针”将始终显示到mysql-查询的最后一个结果行。因此,$row["user_name"]将始终设置为数据库中找到的最后一个用户名。这就是为什么你必须在时间循环中访问它。

如何处理多个用户(根据请求):

我决定在这里使用switch而不是if elseif语句,因为阅读更好,写imho更少:

代码语言:javascript
复制
while($row = $result->fetch_assoc()) {
    echo "<li class='list-group-item'>" . $row["user_name"];

    switch($row["user_name"])
    {
        case "TacoLover22":
            echo "<span class='badge'>Dev</span>";
        break;
        case "AnotherUser":
            echo "<span class='badge'>User</span>";
        break;
    }
}
票数 1
EN

Stack Overflow用户

发布于 2014-12-16 07:48:43

我想这样就行了:

代码语言:javascript
复制
// output data of each row
while($row = $result->fetch_assoc()) {
    echo "<li class='list-group-item'>" . $row["user_name"];
    if ($row["user_name"] === "TacoLover22") {
         echo "<span class='badge'>Dev</span>";
    }
    echo "</li>";
}
票数 3
EN

Stack Overflow用户

发布于 2014-12-16 07:59:34

假设您正在使用sqli扩展,列user_username是特殊用户列表,否则您将需要2个表,一个表来存储用户,一个辅助表来存储特殊用户。

代码语言:javascript
复制
//query
$sql = "SELECT user_name FROM users";
//send to mysql, get result 
$sendquery = $conn->query($sql);
//fetch results as array
while ($result=$sendquery->fetch_array) {
  echo 'username:' . $result['user_name'] . '<span class='badge'>Dev</span>';
}

但是您的问题令人困惑,如果您有不同类型的用户,则应该使用两个表。

代码语言:javascript
复制
TABLE USERS user_id | name | dev_id | email | password | ...
TABLE DEVS dev_id | name | level | access | ....

SQL query, using LEFT JOIN

SELECT 
    usern.name as username, dev.name as devname
FROM USERS as user
LEFT JOIN DEVS as dev
USING dev_id

php output use $result['devname']

如果您只需要"TacoLover22“来显示,则在while循环中添加一个if,以防这是您唯一需要添加的人

代码语言:javascript
复制
//query
$sql = "SELECT user_name FROM users";
//send to mysql, get result 
$sendquery = $conn->query($sql);
//fetch results as array
while ($result=$sendquery->fetch_array) {
    if ($result['user_name'] == "TacoLover22") {
        echo 'username:' . $result['user_name'] . '<span class='badge'>Dev</span>';
}
    else {
        echo $result['user_name'];
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27499791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档