2011-07-26 56 views
1

對於php..I而言,我已經使用了GridView控件來控制列表記錄。在php中使用Gridview like控件

現在我想在php中使用控件列出帶有複選框選項的記錄,以選擇它們進行刪除並啓用頁面。任何人都可以指導初學者如何做到這一點?

在此先感謝。

回答

0

你的點子包括兩個方面;一個表格和一個處理來自表格的輸入的php文件。

File: table.php

<form method="post" action="process.php"> 
    <table> 
     <thead> 
     <tr> 
      <th>Title</th> 
      <th>Activate</th> 
      <th>Delete</th> 
     </tr> 
     </thead> 
     <?php foreach($records as $record): ?> 
     <tr> 
      <td><?php echo $record['title']; ?></td> 
      <td><input type="checkbox" name="activate_ids[]" value="<?php echo $record['id']; ?>" /></td> 
      <td><input type="checkbox" name="delete_ids[]" value="<?php echo $record['id']; ?>" /></td> 
     </tr> 
     <?php endforeach; ?> 
    </table> 
</form> 

File: process.php

<?php 

    //Gather the $_POST 
    $activate_ids = $_POST['activate_ids']; 
    $delete_ids = $_POST['delete_ids']; 

    //Let's make sure we only get ints 
    for($i = 0; $i < count($activate_ids); $i++)$activate_ids[$i] = intval($activated_ids[$i]);   
    for($i = 0; $i < count($delete_ids); $i++)$delete_ids[$i] = intval($delete_ids[$i]); 

    //Get the ids 
    $activate_ids_string = implode(',', $activate_ids); 
    $delete_ids_string = implode(',', $delete_ids); 

    //Make sure we don't have '' as a parameter for SQL 
    if($activate_ids_string == '') $activate_ids_string = 0 
    if($delete_ids_string == '') $delete_ids_string = 0; 

    //UPDATE the table 
    $sql_activate = 'UPDATE Records SET active=1 WHERE id IN (' . $activate_ids_string . ')'; 
    $sql_delete = 'DELETE FROM Records WHERE id IN (' . $delete_ids_string . ')'; 

    //Execute the queries and get the # of affected rows 
    $aff_rows_activate = mysql_num_rows(mysql_query($sql_activate)); 
    $aff_rows_delete = mysql_num_rows(mysql_query($sql_delete)); 

    //Last but not least, output how it went for both queries 
    if($aff_rows_activate === 1) echo 'Activated one record.'; 
    else echo 'Activated ' , $aff_rows_activate, ' records.'; 
    if($aff_rows_delete === 1) echo 'Deleted one record.'; 
    else echo 'Deleted ' , $aff_rows_activate, ' records.'; 

?> 

我還沒有機會嘗試一下上面的代碼,所以有可能仍然是一對情侶在它的語法錯誤的 - 但是,你應該能夠了解你需要做什麼來實現你想要的結果。

+0

發佈未經測試的代碼並不酷。 –

0

php是不同的形式asp。 asp有很多控件可以使用,但php有核心功能的核心功能。才達到烏爾目標u必須在表中使用表把複選框與烏拉圭回合在它的數據和使用AJAX來從表中刪除行或只是張貼在複選框點擊的頁面。但沒有這個控制,你必須自己編寫代碼,你可以說php就像C++一樣。和尋呼ü可以使用一些類被發現這裏enter link description here