亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

列表顯示

一、連接數(shù)據(jù)庫、判斷錯誤和設置字符集

連接、錯誤判斷和字符集選擇都在上面已經(jīng)講過。老規(guī)矩,第一步使用mysqli_connect連接數(shù)據(jù)庫。在第一節(jié)我們講過,可以在第四個參數(shù)中加上庫選擇。就可以不用使用mysqli_select_db函數(shù)在后面再次選擇一個數(shù)據(jù)庫了。

返回的類型就是一個連接資源。我們在mysqli_errno、mysqli_error和mysqli_set_charset都要傳入資源,才能確定我們操作的是哪個連接。

$conn = mysqli_connect('localhost', 'root', 'secret', 'book'); 
if (mysqli_errno($conn)) {
    mysqli_error($conn);
    exit;
}
mysqli_set_charset($conn, 'utf8');

二、準備并發(fā)送SQL語句

我們需要查詢的的將候將用戶ID,用戶名、時間和IP都查出來。并且使用order by id 進行降序排序。

按照人的思維人們一般喜歡看最新注冊的一批用戶。而ID自增,也就是ID在越大,就是時間注冊越新的用戶。因此我們在寫SQL語句的時寫上的是order by id desc。

$sql = "select id,username,createtime,createip from user order by id desc";
$result = mysqli_query($conn, $sql);

三、判斷結果

查詢出來的結果只要SQL語句正確結果變量$result就為真。因此,在實現(xiàn)的時候我們需要多加一步判斷,不僅判斷$result。而且,判斷查詢出來的行數(shù)。

查詢出來的行數(shù)可以使用mysqli_num_rows。這個函數(shù)要求傳入$result查詢的結果變量。

如果有結果則顯示列表,如果沒有結果我們產(chǎn)生一句提示即可。

代碼片段如下:

if($result && mysqli_num_rows($result)){
    //顯示列表代碼段
}else{
    //提示沒有結果的代碼段
}

四、循環(huán)顯示數(shù)據(jù)

所有結果我們需要使用列表的形式展示出來。表格的行和列和數(shù)據(jù)表的行和列是一樣的。所示展示起來很方便。

先聲明一個表格,每次循環(huán)的時候輸出一行。將結果展示到各個列里面。

使用到的函數(shù)是mysqli_fetch_assoc,返回的會是一個關聯(lián)數(shù)組。

這個函數(shù)讀取一個結果集,會向后移動一次。讀取到最后沒有結果的時候會返回bool值的false。因此,我們選擇while來配合mysqli_fetch_assoc。

每次循環(huán)的結果賦值給$row,$row中是關聯(lián)數(shù)組。因此我在這次循環(huán)中,可以將行和列都顯示出來。

    echo '<table width="800" border="1">';
    while ($row = mysqli_fetch_assoc($result)) {
        echo '<tr>';
        echo '<td>' . $row['username'] . '</td>';
        echo '<td>' . date('Y-m-d H:i:s', $row['createtime']) . '</td>';
        echo '<td>' . long2ip($row['createip']) . '</td>';
        echo '</tr>';
    }
    echo '</table>';

五、增加編輯和刪除控制

1.??? 在刪除的時候我們分為單選刪除和多選刪除。

2.??? 而編輯的時候,我們會選擇一個用戶

我們在上一步的代碼中增加幾個小東西就在頁面中實現(xiàn)了刪除和編編。

我們來看看實際的效果圖,來推理具體的實現(xiàn)過程,效果如下:

QQ截圖20161010100211.png

在實現(xiàn)過程當中有幾個要點:

1.??? 單選擇刪除和編輯時需使用get方法傳入ID,我們才知道要編輯或者刪除的是哪個用戶。

2.??? 多選刪除時,需要使用傳入多個用戶。因此,我們可以使用form表單,使用post方法來提交這批用戶ID。

單選刪除我們可以在delete.php后面我們跟上?加上id和值就點擊時進行刪除請求即可。
echo '<td><a href="delete.php?id=' . $row['id'] . '">刪除用戶</a></td>';?編輯用戶也是同理,我們在edit.php加上?寫上id和值,點擊時就知道是需要編輯的哪個用戶了。
echo '<td><a href="edit.php?id=' . $row['id'] . '">編輯用戶</a></td>';

而多選刪除,我們需要使用到html中的checkbox,傳入多個用戶ID的時候需要在name 后加上id[]。使用form表單將表格包起來,在表格外加上一個submit標簽就實現(xiàn)了多選刪除。

<form action="delete.php" method="post">
echo '<td><input type="checkbox" name="id[]" value="' . $row['id'] . '" /></td>';
echo '<input type="submit" value="刪除" />';
echo '</form>';

代碼如下:

echo '<form action="delete.php" method="post">';
    echo '<table width="800" border="1">';
    while ($row = mysqli_fetch_assoc($result)) {
        echo '<tr>';
        echo '<td><input type="checkbox" name="id[]" value="' . $row['id'] . '" /></td>';
        echo '<td>' . $row['username'] . '</td>';
        echo '<td>' . date('Y-m-d H:i:s', $row['createtime']) . '</td>';
        echo '<td>' . long2ip($row['createip']) . '</td>';
        echo '<td><a href="edit.php?id=' . $row['id'] . '">編輯用戶</a></td>';
        echo '<td><a href="delete.php?id=' . $row['id'] . '">刪除用戶</a></td>';
        echo '</tr>';
    }
    echo '</table>';
    echo '<input type="submit" value="刪除" />';
    echo '</form>';

七、關閉數(shù)據(jù)庫連接

我們操作完數(shù)據(jù)庫,關閉掉這個數(shù)據(jù)庫連接。

mysqli_close($conn);

我們整實現(xiàn)的用戶列表list.php代碼如下:

<?php
$conn = mysqli_connect('localhost', 'root', 'secret', 'book');
if (mysqli_errno($conn)) {
    mysqli_error($conn);
    exit;
}
mysqli_set_charset($conn, 'utf8');
$sql = "select id,username,createtime,createip from user order by id desc";
$result = mysqli_query($conn, $sql);
if ($result && mysqli_num_rows($result)) {
    echo '<table width="800" border="1">';
    while ($row = mysqli_fetch_assoc($result)) {
        echo '<tr>';
        echo '<td>' . $row['username'] . '</td>';
        echo '<td>' . date('Y-m-d H:i:s', $row['createtime']) . '</td>';
        echo '<td>' . long2ip($row['createip']) . '</td>';
        echo '<td><a href="edit.php?id=' . $row['id'] . '">編輯用戶</a></td>';
        echo '<td><a href="delete.php?id=' . $row['id'] . '">刪除用戶</a></td>';
        echo '</tr>';
    }
    echo '</table>';
} else {
    echo '沒有數(shù)據(jù)';
}
mysqli_close($conn);


繼續(xù)學習
||
<?php $conn = mysqli_connect('localhost', 'root', 123456789, 'book'); if (mysqli_errno($conn)) { mysqli_error($conn); exit; } mysqli_set_charset($conn, 'utf8'); $sql = "select id,username,createtime,createip from user order by id desc"; $result = mysqli_query($conn, $sql); if ($result && mysqli_num_rows($result)) { echo '<table width="800" border="1">'; while ($row = mysqli_fetch_assoc($result)) { echo '<tr>'; echo '<td>' . $row['username'] . '</td>'; echo '<td>' . date('Y-m-d H:i:s', $row['createtime']) . '</td>'; echo '<td>' . long2ip($row['createip']) . '</td>'; echo '<td><a href="edit.php?id=' . $row['id'] . '">編輯用戶</a></td>'; echo '<td><a href="delete.php?id=' . $row['id'] . '">刪除用戶</a></td>'; echo '</tr>'; } echo '</table>'; } else { echo '沒有數(shù)據(jù)'; } mysqli_close($conn); ?>
提交重置代碼