0%

[技能檢定]題組一 步驟10 撰寫更新圖片api

更新圖片的表單我們在步驟6時已經建立好了,但是更新圖片的按鈕是到步驟8時列出資料才看到,我們在按下按鈕時會同時發出table及id兩個參數供表單放入隱蔵欄位中;
一共有三個功能會使用到類似的表單,而我們的設計方便讓我們只需要專注在表單中文字差異的部份即可。

  1. 撰寫更新圖片的api
    ./api/update.php

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    include_once "db.php";

    $table=$_POST['table'];
    $DB=${ucfirst($table)};

    //更新圖片必然是從即有的資料中去更新,因此先根據id來撈出資料
    $row=$DB->find($_POST['id']);

    //判斷圖片是否上傳成功
    if(isset($_FILES['img']['tmp_name'])){

    //搬移圖片到img資料夾中
    move_uploaded_file($_FILES['img']['tmp_name'],'../img/'.$_FILES['img']['name']);

    //更新資料中的圖片名稱
    $row['img']=$_FILES['img']['name'];
    }

    //更新完成後回存進資料表
    $DB->save($row);

    //將請求導回到原本發出請求的後台頁面中
    to("../back.php?do=$table");
  2. 到此我們完成了網站標題的後台管理功能,也完整的測試了一輪CRUD的功能,到這邊都沒有問題的話,接下來就可以快速的把其它功能建立起來,相同的地方我們都可以延用 /view/backend/title.php 的模板即可以,只需要專注在修改不同的地方,比如中間列表的欄位或是分頁的功能上。