2013年3月15日 星期五

建立自用帳目系統~網頁設計篇


資料庫設計告一段落,
接下來就是把輸入與報表輸出做出網頁,
提供一個方便使用的介面,
本來想著說,只是自用的介面,
加上設計的介面格式已經限定了輸出輸入,應該不會很難…
我錯了,實際上還蠻困難的。

主因當然是,生疏…
PHP的一堆特性都忘光了,尤其是矩陣與物件,
再來現在網頁一堆看似簡單的功能,
都是用Javascript寫出來的功能,這東西我不會。
所以寫起來就是進展緩慢到,花了整整一週的空閒時間才搞定一半,
不過現在算能用就是了。

這篇是介紹與PHP、HTML與Javascript奮戰的部分

寫這個介面的狀況非常多,先從PHP講起好了。
要寫這麼簡單功能的PHP不難搞,
不過不用圖形化介面來編輯就常常搞出一堆狀況
因為記得當年是用Dreamweaver來寫,所以語法都會幫我檢查
但是現在只使用UltraEdit預先編輯與VI直接編輯,
就常死在刮號與分號的符號漏掉問題上 XD
自然網頁就常跑不出來,這是太依賴工具的原罪

再來就是矩陣特性的掌握,與字串串連的運用上
花了好一陣子才完全理解,也才能把一些重複的指令函數化,
讓現在新增功能事倍功半地快速達成。
不然重複的東西,不論是重新打一堆字,或是用貼的
不但浪費時間,也因為版面太混亂而容易出錯。

不過網頁這東西只有PHP不能成事,
顯示與輸入還是要靠原始的HTML來處理,
所以寫網頁還真是麻煩啊,
接下來回到基礎HTML。

HTML的部分,是基礎中的基礎,大部分的特性都還記得。
大概屬建立「表單」格式,也就是form的部分花了不少時間。
因為取得表單的資料,有兩種格式,一個是POST;一個是GET。
考慮在何時使用何種方式,是個重點中的重點。
使用POST的好處是資料隱密性較高,
因為會看不到有哪些資料被傳遞,
使用GET的好處是可以做成超連結選項,
因為傳遞的變數是直接掛在網址上。
可以看的出來兩者屬性完全相反,
在掌握特性上寫了不少測試網頁測試。

上述那些都掌握完成後,接下來就遇到了日期輸入的問題。
要做出一個能夠直接輸入,或是依日曆點選的日期輸入功能的話。
原本並非單純使用HTML可以達成的,要嘛就用php寫,要嘛就用JavaScript寫
這兩者程式碼都不短,老實說要理解然後套入目前的網頁要花一些時間。
好加在常用的網頁瀏覽器Chrome支援HTML5,
直接以Date這個新類別就輕輕鬆鬆地解決了這難搞的問題
讓原本複雜的工作輕鬆多了。謝謝這個新標準。

建立這個帳目系統到此算是差不多啦
雖然持續會加入新的顯示方式,如使用JavaScript的分頁顯示,
或是漫畫等用品資料表的建立等等,
不過大致上先讓系統堪用就好。

只是在建立這個系統同時,
真是再次深切地感受到何謂「隔行如隔山」
沒錯,寫程式的基本我都還記得,
可是不同的語法,就有不同的習性。
了解這些習性到怎樣的程度,是否能夠活用,
就是專家、初學者與外行人的差別。
再加上網頁介面是個純視覺的東西,
要能好看順眼還是要美工配合,寫得好不容易啊。
我還是固守本業,這東西當娛樂就好 XD

沒有留言: