接續上周的上傳團片介紹,今天先是要大家在網頁上把資料庫裏的圖片資料叫出來在網頁上顯示,順便也介紹了一下<img>這個指令,透過PHP把存在資料表中的檔名及路徑放在<img>標籤中的src屬性中,這樣就可以讓圖片顯示出來了

從資料表中叫出圖片

接著是在網頁的表格後面增加一個欄位,並且要大家嘗試著使用兩種不同的方式來刪除資料,同時也要刪除圖片,和上周教的一次多筆刪除不同,這次老師要我們做的是一次刪一筆就可以了,所以我們採用了超連結和按鈕兩種方式來刪除資料,超連結使用的是GET的方式來傳遞要刪除的資料資訊,而按鈕則是採用POST的方式,並且增加了一個隱藏欄位(type=”hidden”)來放置資料的資訊,並以每筆資料單獨一個<FORM>的方式來確保一次只傳遞一筆資訊.

以兩種不同的方式來刪除資料

 

再來是修改的功能,老師的例子是接在刪除後面來做,但為了方便自己看,所以我獨立一個檔案來處理,這裏的流程是當按下”修改”時,會帶著要修改的資料資訊到修改頁面去,然後在修改或重新上傳圖片完成後,會再回到列表頁面來.這裏比較麻煩的是圖檔的操作,老師的做法是把原本資料庫中儲存的檔名取出來直接取代上傳的新圖檔的檔名,所以在更新資料表的語法中就不需要去更新圖檔的檔名,只需要更新圖檔的文字標題就可以了,這個地方的程式邏輯需要花點時間想一下才能理解,因為之前都是一個語法完成修改的動作,但這裏的修改是分成圖檔的操作和資料庫的更新分開進行.

修改資料頁面

修改資料及上傳新檔案

不過這裏有個小問題是,修改完後,列表的標題雖然馬上更新了,但是圖片並沒有跟著更新,需要用ctrl+f5來強制刷新頁面才會看到新的圖,上網查了一下,這是因為檔名相同,所以瀏灠器會先抓緩衝區中暫存的圖片來使用,PHP沒有什麼好的解決方式,但是用javascript可以強制更新,之後有教到js的時候再說了.

修改完成後回到列表頁面

最後是複習之前教過的登入功能及SESSION,但這次老師要我們做的不只是登入這麼簡單,還加上了把密碼做md5加密的功能,真正意義上的會員登入功能,然後老師就出了作業給大家回家練習,這是一個會員系統的雛型,有等級管理及權限區分的功能在裏頭,算是滿有難度的挑戰題.

回家作業題目

最後修改日期: 2018-11-24

留言

撰寫回覆或留言

發佈留言必須填寫的電子郵件地址不會公開。