2013-12-23 109 views
0

我正在創建一個網站,我需要的是創建一個只能由網站管理員訪問的「修改和刪除用戶」頁面。此頁面必須可以刪除和更改用戶數據。 這些用戶存儲在數據庫表中,並且有用戶名,密碼,名稱等信息。帶有複選框的動態表格

所以我想創建一個類似於phpmyadmin中出現的表,允許我通過選擇輸入類型=「複選框」來刪除用戶。

現在我有一個簡單的查詢,它從我的數據庫獲取數據並將結果寫入表中。但我不知道如何做輸入類型=「複選框」的一部分。

這是我的代碼:

<table id="tableList" border="1px"> 
    <tr> 
     <td>#</td> 
     <td>Username</td> 
     <td>Password</td> 
     <td>Name</td> 
     <td>City</td>          
    </tr> 
    <?php 
     $conn = dbConnect(); 
     $utente = $_SESSION['username']; 
     $query = "SELECT * FROM users"; 
     $result = mysql_query($query); 
     $count = 1; 
     while($row = mysql_fetch_array($result)) { 
     echo "<tr> 
        <td>$count</td> 
        <td>$row[user]</td> 
        <td>$row[password]</td> 
        <td>$row[nome]</td> 
        <td>$row[cognome]</td> 
        <td>$row[citta]</td> 
        <td>$row[sesso]</td> 
        <td>$row[email]</td>            
       </tr>"; 
     $count++; 
     } 
    ?> 
</table> 

現在我要補充的是指整個錶行的複選框。 我不怎麼做,請幫我... 非常感謝你:)

PS:我該如何允許編輯數據?我的意思是每個領域(你的名字,城市,用戶名等)。 但是,現在消除整個人更重要。 (我對我的英文不好)表示抱歉。

回答

0

只需添加另一個山坳有一個複選框

<form method = 'POST' action = 'deleteuser.php'> 
    <table id="tableList" border="1px"> 
    <tr> 
     <td>#</td> 
     <td>Username</td> 
     <td>Password</td> 
     <td>Name</td> 
     <td>City</td>          
    </tr> 
    <?php 
     $conn = dbConnect(); 
     $utente = $_SESSION['username']; 
     $query = "SELECT * FROM users"; 
     $result = mysql_query($query); 
     $count = 1; 
     while($row = mysql_fetch_array($result)) { 
     echo "<tr> 
        <td>$count</td> 
        <td>$row[user]</td> 
        <td>$row[password]</td> 
        <td>$row[nome]</td> 
        <td>$row[cognome]</td> 
        <td>$row[citta]</td> 
        <td>$row[sesso]</td> 
        <td>$row[email]</td> 
        <input type = 'checkbox' name = 'user$row[user]'> 
       </tr>"; 
     $count++; 
     } 
    ?> 
    </table> 
</form> 

你也可以已經把一個簡單的按鈕,但有些人可能會說,你不應該做的GET請求任何顯著更新。

然後,您需要在您的deleteuser.php做:

  • 確認它實際上是你是誰刪除用戶
  • 更新用戶與「刪除= 1」字段(可逆)。

對於編輯它們會變得更加棘手,但基本上可以將整個表格排成一個表格,每個列都是一個並提交給「edit.php」。

+0

感謝您的回覆:) – user245679

0

創建一個TD與複選框

<form method = 'POST' action = 'actionpage.php'> 
<table id="tableList" border="1px"> 
    <tr> 
     <td>#</td> 
     <td>Username</td> 
     <td>Password</td> 
     <td>Name</td> 
     <td>City</td> 
     <td>Delete</td> 
    </tr> 
    <?php 
     $conn = dbConnect(); 
     $utente = $_SESSION['username']; 
     $query = "SELECT * FROM users"; 
     $result = mysql_query($query); 
     $count = 1; 
     while($row = mysql_fetch_array($result)) { 
     echo "<tr> 
        <td>$count</td> 
        <td>$row[user]</td> 
        <td>$row[password]</td> 
        <td>$row[nome]</td> 
        <td>$row[cognome]</td> 
        <td>$row[citta]</td> 
        <td>$row[sesso]</td> 
        <td>$row[email]</td> 
        <td><input type='checkbox' name='users' value=$row['user_id']></td> 
       </tr>"; 
     $count++; 
     } 
    ?> 
</table> 
</form> 

這樣做,你會得到陣列USER_ID的actionpage.php

把你的邏輯他們的刪除。

+0

謝謝,我會盡快嘗試:) – user245679

+0

大聲笑我(不OP)剛學到了新東西。謝謝。不過,我認爲你的意思是用戶[]'。 –

+0

我做了以下操作:形式爲​​並在文件中.php(deleteUser.php)我做了if(isset($ _ POST ['submit-deleteuser'])){ $ del_id = $ _POST ['users']; foreach($ del_id as $ value){ $ sql =「DELETE FROM users WHERE user ='」。$ value。「'」; $ result = mysql_query($ sql); } }但無效:( – user245679