編輯
  ```
2. 所以流程也要多一組對應設定: ```
  
    case "edit":
    add_form($sn);
    break;
  ```
3. 和新增一樣呼叫 add\_form() 函數,唯一不同的是,編輯時要傳入 $sn,如此,系統才知道要修改的到底是哪一筆資料。
 
### 三、修改 add\_form() 函數
1. 編輯和新增不同的地方有三: 
  1. 需傳入$sn
  2. 需多一個隱藏欄位 sn
  3. 下一個op不會是insert,應為update
2. 故,我們將函數改為: ```
  
  //編輯詞彙表單
  function add_form($sn=""){
    global $xoopsTpl,$xoopsDB;
    include_once(XOOPS_ROOT_PATH."/class/xoopsformloader.php");
    if($sn){
      $sql="select eng,cht from ".$xoopsDB->prefix("oxford")."  where `sn`='{$sn}'";
      $result=$xoopsDB->queryF($sql) or redirect_header('index.php', 3, mysql_error());
      list($eng,$cht)=$xoopsDB->fetchRow($result);
      $op="update";
    }else{
      $op="insert";
    }
  
    $form = new XoopsThemeForm('編輯詞彙', '', 'main.php', 'post', true);
    $input_eng =new XoopsFormText('英文', 'eng', 20 , 255 , $eng);
    $input_cht =new XoopsFormText('中文解釋', 'cht', 20 , 255 , $cht);
    $hidden_op =new XoopsFormHidden('op', $op);
    $hidden_sn =new XoopsFormHidden('sn', $sn);
    $submit_btn =new XoopsFormButton('', '', '儲存', 'submit');
    $form->addElement($input_eng);
    $form->addElement($input_cht);
    $form->addElement($hidden_op);
    $form->addElement($hidden_sn);
    $form->addElement($submit_btn);
    $f=$form->render();
    $xoopsTpl->assign("form" ,$f);
  }
  ```
 
### 四、流程新增update設定
1. 當使用者按下儲存時,如果是編輯,則op為update,因此,流程要多一組設定: ```
  
    case "update":
    update($sn);
    break;
    header("location:../index.php?eng={$_POST['eng']}");
  ```
 
### 五、新增update()函數
 ```
//更新詞彙
function update($sn=""){
  global $xoopsDB;
  $eng=$_POST['eng'];
  $cht=$_POST['cht'];
  $sql="update `".$xoopsDB->prefix('oxford')."` set `eng`='{$eng}' , `cht`='{$cht}' where sn='$sn'";
  $xoopsDB->queryF($sql) or redirect_header($_SERVER['PHP_SELF'],3, mysql_error());
}
```