Skip to content

Commit 7247dbc

Browse files
committedAug 5, 2020
更新第四週與第九週提示,更新十二週作業
1 parent 840b2ca commit 7247dbc

File tree

4 files changed

+29
-22
lines changed

4 files changed

+29
-22
lines changed
 

‎README.md

+2
Original file line numberDiff line numberDiff line change
@@ -372,6 +372,8 @@ HTML 的部分會簡單介紹幾個常見的 tag,以及 head 的一些屬性
372372

373373
觀看 [BE101] 用 PHP 與 MySQL 學習後端基礎並跟著動手做,看到「真正的實戰:留言板 - 修正問題篇」裡面的「PHP 內建 session 機制」就好,同時跟著裡面的教學把留言板實作出來。
374374

375+
(「基礎實戰:Job board 職缺報報」跟「基礎實戰:Blog 部落格」屬於比較早期拍的影片,程式碼的風格跟其他的可能會不一樣,建議你可以先跳過這兩個段落,實戰的部分直接看「真正的實戰:留言板 - 初階實作篇」,如果覺得看不太懂,再回來看這兩個早期拍的)
376+
375377
並且透過以下幾篇文章加深對 Cookie 與 Session 的理解:
376378

377379
1. [白話 Session 與 Cookie:從經營雜貨店開始](https://medium.com/@hulitw/session-and-cookie-15e47ed838bc)

‎homeworks/week12/README.md

+23-22
Original file line numberDiff line numberDiff line change
@@ -7,46 +7,47 @@
77
這一週呢,你要負責來增強這個專案,請加上以下功能:
88

99
1. 分頁功能(要能夠顯示現在在哪一頁、切換到其他分頁等等,一頁顯示 5 個留言就好,這樣比較好測)
10-
2. 由帳號機制改成以前那種可以自己輸入暱稱的方式留言(所以沒辦法與原本留言板的資料庫共用,要新開一個)
10+
2. 由帳號機制改成以前那種可以自己輸入暱稱的方式留言(所以沒辦法與原本留言板的資料庫共用,要新開一個 table
1111

12-
介面的部分請使用 Bootstrap,JS 的部分也請盡量用 jQuery,版面隨自己喜好設置就可以了。
12+
介面的部分請盡量使用 Bootstrap,JS 的部分也請盡量用 jQuery,版面隨自己喜好設置就可以了。
1313

1414
總結一下,這個作業有兩個東西要做:
1515

16-
1. 自己實作出留言板 API,要能夠新增留言以及顯示留言
16+
1. 自己實作出留言板的 API,要能夠新增留言以及顯示留言
1717
2. 串接自己做出來的 API
1818

19-
## hw2:打造短網址服務
19+
範例:待補
2020

21-
短網址服務的原理其實很簡單,那就是背後有一個 table 紀錄了短網址跟長網址的關聯,當使用者造訪短網址的時候,就把使用者用 302 redirect 導到長網址去即可。
21+
## hw2:Todo List
2222

23-
因此呢,請你做一個簡易短網址的 API,檔案名稱會是
23+
之前在第七週的時候有實作過一個 todo list,那時只有支援新增、刪除已經標記完成,但比較完整的 todo list 應該會長這個樣子
2424

25-
1. create_url.php(處理縮網址的需求)
25+
![](todo.png)
2626

27-
除此之外,你還需要兩個 PHP 檔:
28-
1. r.php (把短網址導到長網址)
29-
2. index.php(提供縮網址功能)
27+
參考連結:http://todomvc.com/examples/vanillajs/
3028

31-
r.php 的功能很簡單,就是接收短網址然後導到原本的網址去。
29+
需要支援的功能有:
3230

33-
例如說 r.php?id=abc123,可能就會連到 google.com 去之類的。
31+
1. 新增 todo
32+
2. 編輯 todo
33+
3. 刪除 todo
34+
4. 標記完成/未完成
35+
5. 清空 todo
36+
6. 篩選 todo(全部、未完成、已完成)
3437

35-
至於 create_url.php 則是負責縮網址的部分
38+
除此之外,請你再加上一個功能,那就是會有一個「儲存」的按鈕,按下去以後會把目前 todo 的狀態送到 server 去儲存,並且回傳一個獨特的 id,以後使用者如果有帶這個 id,就自動把它的 todo 載入進來
3639

37-
可以用 POST 的方式把要縮的網址傳到 create_url.php 去,而且可以接收一個參數叫做「custom_url」,如果有這個參數,代表使用者想要自訂短網址
40+
舉例來說,原本的網址可能是`https://example.com/todos.php`,按下儲存以後網址變成:`https://example.com/todos.php?id=5`,下次我用同樣網址進來時,就可以看到我之前儲存好的 todo item
3841

39-
例如說把 google.com 帶到 create_url.php,可能會產生一個短網址是:http://example.com/r.php?id=abc123
42+
這邊一樣是前後端串接,你必須要用 ajax 來傳遞資料。所以你要思考的問題是:
4043

41-
但如果我把 google.com 以及 custom_url=g 一起傳給 server,產生的短網址就會是:http://example.com/r.php?id=g
44+
1. 怎麼把 todo 的狀態變成字串傳到 server
45+
2. 怎麼樣偵測網址上的 id,並且送出 request 到後端抓取 todos
46+
3. 怎麼樣把 todos 顯示在前端
4247

43-
介面的部分請使用 Bootstrap,JS 的部分也請盡量用 jQuery,前端版面的部分請自己設計
48+
介面的部分請盡量使用 Bootstrap,JS 的部分也請盡量用 jQuery,版面隨自己喜好設置就可以了,不需要跟上面那個圖片長得一樣
4449

45-
總結一下,這個作業你會做出一個 index.php,畫面上會有兩個輸入框,一個讓使用者輸入長網址,一個輸入自訂短網址,還有一個按鈕叫做「產生短網址」。
46-
47-
當按鈕按下去以後,前端會用 ajax 去呼叫後端的 create_url.php,然後拿到一個縮好的網址,格式一定會是:http://example.com/r.php?id=xxx
48-
49-
接著使用者點了這個網址以後,就會透過 r.php 幫忙把後面帶的短網址轉換為原本的網址,並且導到原本的網址去,屬於你的縮網址服務就這樣完成了。
50+
範例:待補
5051

5152
## hw3:簡答題
5253

‎homeworks/week12/todo.png

55.6 KB
Loading

‎homeworks/week4/README.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# 作業
22

3+
## 備註
4+
5+
請注意!API 每一天會重置一次,在一天當中你做的任何操作都會影響到其他同學。如果你發現有些 id 不見了,那就是被其他同學刪掉了。建議大家要測試刪除功能時,可以先試著新增資料,然後再刪除自己剛剛新增的,才不會影響到其他人,感謝!
6+
37
## API 文件
48

59
Base URL: https://lidemy-book-store.herokuapp.com

0 commit comments

Comments
 (0)
Please sign in to comment.