只是送出一張表單? 一個「聯絡我們」背後, 其實沒那麼簡單

你可能做過這件事很多次。進到一個網站,找到「聯絡我們」。填上姓名。輸入 Email。
留下電話。打了一段:
「您好,我想詢問網站製作的費用。」
然後——
按下「送出」。
畫面跳出:
「感謝您的留言,我們會盡快與您聯絡。」
結束。整個過程可能不到一分鐘。
看起來,就只是把幾個字送出去而已。但如果我們把網站的牆壁掀開,你可能會發現……剛剛那封訊息,已經開始了一趟比你想像中忙碌很多的旅程。
你按下「送出」的那一刻,事情才正要開始
可以把一張網站表單想像成:
你到機場櫃檯,把行李交給地勤。
對旅客來說很簡單。護照給他。行李放上去。拿登機證。
走人。可是你的行李呢?它不會因為你轉身離開,就瞬間出現在目的地。它會經過輸送帶、掃描、分類、安檢、裝載,最後才進到正確的飛機。
網站表單也是一樣。你看到的只有:
「送出」
但網站看到的是:
「好,各位,有新的東西進來了!」
接著後台就開始忙了。


第一關:你填的資料,真的可以用嗎?
假設有人填:
姓名:王小明
Email:我不知道
電話:123
留言:哈囉
如果網站什麼都不檢查,就直接全部收進去……負責聯絡客戶的人大概只會看著螢幕發呆。所以一份表單送出以前,通常都會先經過基本檢查。
例如:
Email 有沒有 @?電話格式合不合理?必填欄位是不是空白?
文字是不是長得太離譜?有沒有少填重要資料?
這有點像寄包裹。你至少得先寫:
寄件人、收件人、地址。
如果收件地址只寫:
「台北那間公司。」
物流司機大概也只能祝你幸福。

「前端有檢查啊!」那後端為什麼還要再查一次?
這裡就出現一個很多人不知道的小秘密。你在畫面上看到的那些:
「此欄位必填」
「Email 格式錯誤」
「請輸入手機號碼」
通常只是第一層檢查。我們可以把它想成去夜店。門口第一個工作人員看你:
「有沒有帶證件?」
「穿拖鞋?」
「今天有沒有包場?」
這叫第一關。
但你通過門口,不代表你就可以直接跑去金庫。網站也是如此。前端的檢查主要是讓使用者方便。真正送進伺服器以後,後端還會再檢查一次。
因為對後端來說:
不能只相信畫面傳過來的東西。正常使用者會乖乖填表單。但有些程式,可不一定這麼乖。
所以真正重要的資料,網站通常會再確認一次。
前端是在提醒客人。
後端則是在保護整間店。
好,資料沒問題了。
接下來呢?這封訊息終於可以正式「進站」。通常接下來會發生幾件事。

① 把資料保存下來
姓名。電話。Email。留言內容。
時間。甚至來源頁面。網站可能會把這些資料保存到資料庫裡。你可以把資料庫想成公司的檔案室。
只是以前的檔案室是一排鐵櫃。現在的檔案室住在伺服器裡。目的都是一樣的:
不要讓重要資料憑空消失。
② 通知真正需要知道的人
資料存好了,不代表工作結束。總不能期待業務每天早上九點泡一杯咖啡,然後坐在後台一直重新整理:
「今天有人留言了嗎?」
「現在有嗎?」
「現在呢?」
所以網站通常還會主動通知相關人員。例如寄 Email。或者串接公司的通知系統。
甚至通知指定的部門或窗口。也就是說,你按下一次「送出」,
網站背後可能同時完成:
收資料 → 保存 → 找人 → 通知。
看起來只是一顆按鈕。其實已經偷偷跑了一場接力賽。
「那直接寄 Email 就好了啊?」
這也是很常見的想法。表單送出。寄一封信。結束。
確實,有些很簡單的網站可以這麼做。但問題是——
Email 不是百分之百可靠。
有可能進垃圾郵件。有可能郵件服務暫時異常。有可能收件設定發生問題。甚至某一天負責收信的人離職了,而信箱還沒換。
如果所有詢問都只存在 Email 裡,一旦郵件沒有正常送達,那筆詢問可能就真的消失了。所以比較完整的做法,常常是:
資料先留下來,Email 負責通知。
這就像餐廳點餐。服務生不會只跑進廚房大喊:
「五桌一份牛排!」
喊完就當作完成。
通常還是會有一張單。因為人會忘記。系統偶爾也會出問題。
重要的事情,最好留下紀錄。

然後,還有一群不請自來的客人
如果你曾經經營過網站,你可能會遇過這種留言:
「BEST SEO SERVICE CLICK HERE!!!!」
或是:
「恭喜您獲得 500 萬美元遺產。」
甚至整篇都是不知道哪國語言的神秘文字。你心裡可能會想:
到底誰每天這麼閒?答案通常是:
不是人。
網路上有大量自動化程式,會不停尋找網站表單。找到之後,自動填。自動送。下一個。
再填。再送。它不累。不用吃飯。
也不用睡覺。一天送你幾千封,它完全沒有心理負擔。所以現在看起來只是一張普通的「聯絡我們」,背後常常還得想辦法判斷:
你到底是人,還是機器人?
這也是為什麼有些網站會出現:
「我不是機器人」
或要求你選:
「所有有紅綠燈的圖片。」
有時候選到最後,甚至會開始懷疑自己:
「等等……我真的是人嗎?」
還有一件更重要的事:你的資料
姓名。Email。電話。公司名稱。
詢問內容。這些看起來很普通。但它們都是使用者願意交給網站的資料。既然收了,就有責任好好處理。
這也是為什麼網站開發不只是:
「畫面漂不漂亮?」
「按鈕會不會動?」
後面還會牽涉到:
資料要存在哪裡?哪些人可以看到?是不是什麼人輸入網址就能看到?系統有沒有做好基本防護?
有沒有不必要地收集太多資料?就像客人把一封信交給你。你不會收到之後隨手丟在店門口。網站也是一樣。
所以,一張表單到底有多複雜?
如果只是畫面:
可能真的不複雜。姓名。Email。
電話。留言。送出。五個東西。
但如果問的是:
「這張表單能不能長期穩定地幫公司收客戶詢問?」
事情就完全不同了。你開始需要思考:
資料有沒有填正確?送出失敗怎麼辦?
重複送出怎麼辦?垃圾訊息怎麼辦?通知沒寄出去怎麼辦?資料要不要留存?
哪些人可以看到?未來如果要接 CRM 呢?如果要分給不同業務呢?如果海外客戶要進不同部門呢?
如果一天突然不是 5 封,而是 5,000 封呢?這也是網站開發很有趣的地方。
畫面上的東西,通常只是冰山露出水面的部分。
真正讓網站穩定運作的,
往往都是那些使用者看不到的地方。

好的網站,不是讓你看到很多技術
而是讓你幾乎感覺不到技術存在。你按下按鈕。它正常送出。資料沒有不見。
該收到的人收到。垃圾訊息被擋掉。需要保存的資料被保存。發生問題時也知道哪裡出了問題。
然後你繼續做自己的事情。這其實就是好的網站系統最舒服的狀態。使用者不需要知道後面跑了多少程式。就像你搭電梯,也不需要理解馬達、纜線與控制系統。
你只希望:
按 8 樓,它真的把你送到 8 樓。
網站也是。
你看到的是一顆按鈕。
我們看到的是它按下去之後,
資料會去哪裡、
誰會收到、
出錯怎麼辦、
怎麼保存,
以及怎麼讓這件事情每天重複發生,
依然穩定。
這些「看不到的地方」,
往往才是一個網站真正使用三年、五年之後,
開始感受到差異的地方。
好的網站,不只是把事情做出來。
而是讓事情可以一直好好地發生。
— STORYCODE
有一個想法,想找人一起實現?
從企劃到上線,我們陪你把每一個決定想清楚。



