php - MySQL:使用 while 循环链接未显示在正确的列中

标签 php mysql

我的 MySQL 循环遇到问题。 我正在尝试在数据库中建立一个链接到事件和停用我的用户。

我尝试使用 while 循环来显示数据库中的所有用户,然后在他们旁边放置一个链接。

但问题是链接没有显示在正确的用户旁边,我还尝试为链接分配 ID 和用户名,并且显示了正确的信息。

该链接显示比正确用户低 1 步。

Here is img

这是我的代码。

    require('./connect.php');
    $query = "SELECT * FROM users ORDER BY id ASC";
    $result = mysqli_query($con, $query);
    $numrows = mysqli_num_rows($result);
    if ($numrows > 0) {
        echo '<table class="table" border="1">
        <tr style="background-color: #0DF; color: #222; font-weight:bold;">
            <td>ID:</td>
            <td>User Name:</td>
            <td>Email:</td>
            <td>First Name:</td>
            <td>Last Name:</td>
            <td>Domain:</td>
            <td>Country:</td>
            <td>Phone:</td>
            <td>Plan:</td>
            <td>Duration:</td>
            <td>Payable:</td>
            <td>Paid Date:</td>
            <td>Active Plan:</td>
            <td>Active:</td>
            <td>Register Date:</td>
        </tr>';
        while ( $row = mysqli_fetch_assoc($result) ) {
            $dbid = $row['id'];
            $dbuser = $row['username'];
            $dbemail = $row['email'];
            $dbfname = $row['first_name'];
            $dblname = $row['last_name'];
            $dbdomain = $row['domain'];
            $dbcountry = $row['country'];
            $dbphone = $row['phone'];
            $dbplan = $row['plan'];
            $dbduration = $row['duration'];
            $dbpayable = $row['payable'];
            $dbpaid_date = $row['paid_date'];
            $dbactive_plan = $row['active_plan'];
            $dbactive = $row['active'];
            $dbdate = $row['date'];
            echo '
            <tr>
                <td>'.$dbid.'</td>
                <td>'.$dbuser.' <a href="http://www.mydomain.com/admin.php?id='.$dbid.'">Delete</a></td>
                <td>'.$dbemail.'</td>
                <td>'.$dbfname.'</td>
                <td>'.$dblname.'</td>
                <td>'.$dbdomain.'</td>
                <td>'.$dbcountry.'</td>
                <td>'.$dbphone.'</td>
                <td>'.$dbplan.'</td>
                <td>'.$dbduration.'</td>
                <td>'.$dbpayable.'</td>
                <td>'.$dbpaid_date.'</td>
                <td>'.$dbactive_plan.' '.$changeStatus.'</td>
                <td>'.$dbactive.'</td>
                <td>'.$dbdate.'</td>
            </tr>';

            if ( $dbactive_plan == 0) {
                $status = "Activate";
                $changeStatus = '<a href="http://www.mydomain.com/admin.php?status=1&user='.$dbuser.'">'.$status.'</a>';
            }
            else {
                $status = "Deactivate";
                $changeStatus = '<a href="http://www.mydomain.com/admin.php?status=0&user='.$dbuser.'">'.$status.'</a>';
            }
        }//while loop
        echo '</table>';

最佳答案

require('./connect.php');
    $query = "SELECT * FROM users ORDER BY id ASC";
    $result = mysqli_query($con, $query);
    $numrows = mysqli_num_rows($result);
    if ($numrows > 0) {
        echo '<table class="table" border="1">
        <tr style="background-color: #0DF; color: #222; font-weight:bold;">
            <td>ID:</td>
            <td>User Name:</td>
            <td>Email:</td>
            <td>First Name:</td>
            <td>Last Name:</td>
            <td>Domain:</td>
            <td>Country:</td>
            <td>Phone:</td>
            <td>Plan:</td>
            <td>Duration:</td>
            <td>Payable:</td>
            <td>Paid Date:</td>
            <td>Active Plan:</td>
            <td>Active:</td>
            <td>Register Date:</td>
        </tr>';
        while ( $row = mysqli_fetch_assoc($result) ) {
            $dbid = $row['id'];
            $dbuser = $row['username'];
            $dbemail = $row['email'];
            $dbfname = $row['first_name'];
            $dblname = $row['last_name'];
            $dbdomain = $row['domain'];
            $dbcountry = $row['country'];
            $dbphone = $row['phone'];
            $dbplan = $row['plan'];
            $dbduration = $row['duration'];
            $dbpayable = $row['payable'];
            $dbpaid_date = $row['paid_date'];
            $dbactive_plan = $row['active_plan'];
            $dbactive = $row['active'];
            $dbdate = $row['date'];
            if ( $dbactive_plan == 0) {
                $status = "Activate";
                $changeStatus = '<a href="http://www.mydomain.com/admin.php?status=1&user='.$dbuser.'">'.$status.'</a>';
            }
            else {
                $status = "Deactivate";
                $changeStatus = '<a href="http://www.mydomain.com/admin.php?status=0&user='.$dbuser.'">'.$status.'</a>';
            }
            echo '
            <tr>
                <td>'.$dbid.'</td>
                <td>'.$dbuser.' <a href="http://www.mydomain.com/admin.php?id='.$dbid.'">Delete</a></td>
                <td>'.$dbemail.'</td>
                <td>'.$dbfname.'</td>
                <td>'.$dblname.'</td>
                <td>'.$dbdomain.'</td>
                <td>'.$dbcountry.'</td>
                <td>'.$dbphone.'</td>
                <td>'.$dbplan.'</td>
                <td>'.$dbduration.'</td>
                <td>'.$dbpayable.'</td>
                <td>'.$dbpaid_date.'</td>
                <td>'.$dbactive_plan.' '.$changeStatus.'</td>
                <td>'.$dbactive.'</td>
                <td>'.$dbdate.'</td>
            </tr>';
        }//while loop
        echo '</table>';

关于php - MySQL:使用 while 循环链接未显示在正确的列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24615557/

相关文章:

php - 不显示单字符搜索的结果

mysql - MySQL TableView 添加索引的方法

mysql - 如何在rails中一行显示多个表中的数据

mysql - MySql 中的排名逻辑问题

php - 如何使用动态ID进行查询?

MySQL错误1351无法创建 View

PHP Time Since 函数错误

php - 日期年份错误

php - 如何在php或apache中限制文件上传速度?

php - 我可以在 MySQL 中存储图像吗