480 likes | 644 Views
From 楊宏文 ppt. PHP ASP JavaScript. 蔡進義 cyt@pmlab.iecs.fcu.edu.tw. Outline. ASP PHP JavaScript. ASP. 全名 Active Server Pages 利用 Script 語法,學習無障礙 語法的大小寫皆可 任何瀏覽器均支援 任何資料庫均支援. ASP 的使用環境. Windows 9x : PWS 4.0 Windows NT Workstation : PWS 4.0 Windows NT Server : IIS 4.0
E N D
From 楊宏文ppt PHPASPJavaScript 蔡進義 cyt@pmlab.iecs.fcu.edu.tw
Outline • ASP • PHP • JavaScript
ASP • 全名 Active Server Pages • 利用 Script 語法,學習無障礙 • 語法的大小寫皆可 • 任何瀏覽器均支援 • 任何資料庫均支援
ASP的使用環境 • Windows 9x :PWS 4.0 • Windows NT Workstation:PWS 4.0 • Windows NT Server:IIS 4.0 • Windows 2000 Server/Professional:IIS 5.0 • Windows XP Professional:IIS 5.1
下載 HTML文件, 由客戶端瀏覽器執行 *.htm *.htm Web Server vs. Browser Web Server Client 端
下載 HTML文件, 由客戶端瀏覽器執行 *.asp *.htm Web Server vs. Browser Web Server 執行 asp 檔案,將結果轉成 HTML 格式 Web Server Client 端
<錯誤> <正確> 撰寫ASP之前… • 所有 ASP 的檔案副檔名應為 asp。 • ASP的程式碼應該存放在 <%…………%> • 標籤之內。 • ASP 檔案的執行,應該透過 asp-enable • 的 web 伺服器編譯,方能執行。
ASP的六大物件 • Response:將資料送給客戶端。 • Request:從客戶端取得資料。 • Server:提供伺服器運作參數。 • Session:儲存在一個Session內的使用者資訊,該資訊僅可為該使用者取用。 • Application:儲存在一個Application內的使用者資訊,該資訊可為所有使用者取用。 • ObjectContext:用來配合Microsoft Transaction Server進行分散式交易處理。
別忘了! Asp檔案必須透過Web 伺服器的解譯 方能執行 Response.Write 範例一 <% Response.write("<FONT COLOR=red>") Response.write("我的第一個 Active Server Page 程式") Response.write("</FONT><BR>") Response.write "今天日期是: " & date & "<BR>" Response.write ("現在時間是: ")& now %>
Outline • ASP • PHP • JavaScript
PHP • PHP: Hypertext Preprocessor • PHP 是一種跨平台、嵌入式的伺服器端執行的描述語言。 • 全球資訊網(WWW, World Wide Web) 興起後使得網路的使用由早期的文字、命令控制的模式進而演變到圖形、滑鼠控制的模式。 • 網路上的各種應用也以從單向的服務發展到互動式的服務 。
CGI(Common Gateway Interface) 是一種以不同的語言撰寫的互動式的程式。 • 例如C、Perl、ASP、Java 、 PHP等等。 使用者藉由瀏覽器送出相關的訊息到伺服器,由伺服器上的CGI 程式來負責解析使用者的要求在予以適當的回應,這些回應再送回給使用者。
PHP的特色 • 支援物件導向 • 跨平台 • 嵌入式 • 開放源碼 • 資料庫 • 通訊協定 • 輸出模式 • 操作摸式
PHP的應用 • 互動式網頁 • 動態網頁 • 留言版 • 討論區 • 計數器 • 電子商務 • 電子郵件 • 多媒體應用 …
PHP的歷史 PHP最早是在1994年由 Rasmus Lerdor開始發展 PHP 的計畫。一開始的時候, PHP 僅僅是個人使用後來才慢慢延伸成為目前炙手可熱的網頁技術。 1995年發表了第一個版本的 PHP, 當時僅僅只有一個簡單的解析器, 和少數的指令。很快的在 1995 年重新改寫解析器發表了第二個版本 PHP/FI, 在這個版本中加入了 mSQL 資料庫,並且開始支援動態網頁由於 PHP 開發容易獲得許多網路管理者的青睞迅速的發展開來 1996 年預估已經有15000台以上的伺服器採用PHP。到了 1997 年 Zeev Suraski 和 Andi Futmans 重寫解析器將 PHP/FI2 移植到 PHP 3 中, 於是第三版的PHP3也已經發展出來。至今大家已經使用PHP 4版作為開發工具,在第4版中提供了許多新的功能。
Outline • ASP • PHP • JavaScript
JavaScript 歷史 • 由網景公司(Netscape)發展而成。 • 前身是Live Script文稿語言。 • 網景與昇陽公司(Sun Micro)共同將之推為WWW文稿語言的標準,改名為JavaScript。
JavaScript 特性 • 容易使用、跨平台。 • 直敘語言(Scripting Language)。 • 直接嵌在(embedded)HTML文件中。 • 補HTML及JAVA的不足。 • 網頁設計者用以動態控制網頁間的互動。 • 最大功能 -- 減低網路的流量、提昇使 用者滿意度。
JavaScript 軟硬體需求 • 於解譯程式(Interpreter),無須編譯器(Compiler)、聯結器(Linker)、除錯器(Debugger) • 一般文書處理程式均可編輯。 (ex.Microsoft NotePad、Mac SimpleText、UNIX vi或emacs ...) • 支援JavaScript的瀏覽器均可閱讀。 (ex.Netscape Navigator 2.0 以上、Microsoft IE3.0以上...) • 許多平台均可使用。(ex.Windows、Solaris、Macintosh、SunOS、HP-UX、AIX、IRIX、Digital UNIX、Linux、NetBSD、FreeBSD...)
幾種常見的撰寫格式 • 利用專用標籤 • 包含於Script前後標籤(tag)之間。 • 指定使用語言及版本。 • 包含於說明標籤之中。 • 宣告成外部檔案。 • 利用HTML標籤 • 透過 event handler
格式一:包含於Script前後標籤之間 <Script> document.write("JavaScript程式一") </Script> document物件用於將目前的文件資訊輸出至使用者螢幕 write是document物件的眾多方法之一,作輸出的控制 如果希望HTML一載入時即執行Script, 建議將<Script>……</Script>嵌入 <Head>前後標籤之中。 <Head> <Script> … </Script> </Head>
格式二:指定使用語言 <Script language="JavaScript"> document.write("JavaScript程式二") </Script> 因為直敘語言不只一種,可利用語言屬性(language attribute)來標明所使用的語言。 Language=JavaScript or Language=VBScript or Language=JScript
格式三:宣告成外部檔案 <Script src = sayHello.js ></Script> sayHello.js 的內容 alert("hello! 歡迎光臨我的網站")
格式四:整合在Anchor之中 <Body> <A HREF="javascript:alert('這樣也可以')"> 按我吧!</A> </Body>
格式五:事件處理程序 <Body> <input type="button" value=" 按我吧 " onClick="alert('很簡單吧!')"> </Body> 並不是所有Javascript的程式碼都會放在 <SCRIPT>… </SCRIPT>標籤組當中
開始撰寫JavaScript • 檔案內容可以是單純的JavaScript程式檔,或是JavaScript與HTML混合的程式檔。 • 檔案的副檔名必須是 htm 或 html。 • 純粹的 JavaScript 程式檔,副檔名是 js。 • 瀏覽器載入程式後,立即依序由上而下執行。
Example <Script> var name = "Matt", msg = "Hello"; document.write(msg, "<b>", name, "</b>"); </Script> <A href="javascript:alert('Hello')"> 按我 </A> 練習
程式基本語法 • 每一行程式係由關鍵字(keyword)組成。 • 單一指令逐行撰寫。 • 同一行可包含多重指令,但須以分號 • (semi-colon)隔開。 • 每一行的結尾可以加上“;”,但不寫 • 也可以。
基本指令 • comment 敘述 (comment statement) • while 敘述 (while statement) • for 敘述 (for statement) • if 敘述 (if statement) • break 敘述 (break statement) • continue 敘述 (continue statement) • with 敘述 (with statement) • switch 敘述(switch statement)
基本指令 - comment • 提高程式可讀性 • 增加程式維護方便 • // 單列的註解敘述 • /* • 多列的 • 註解敘述 • */
基本指令 - while • 又稱while迴圈。 • 每一次迴圈均計算條件判斷式的值,若其值為真(true)則執行內含的敘述,否則跳出迴圈。 • While (邏輯判斷式) { • 程式碼區塊 • }
基本指令 - while <Script> var i=5 //全域變數i,初值為5 while (i>0) //while敘述,條件運算式為i>0 { document.write("i=",i,"<br>") i-- } </Script> Practice
基本指令 - for • 又稱為for迴圈(loop)。 • 依括號內三個選擇性參數的值,決定 • 迴圈的次數。 • for ([初值];[邏輯判斷式];[更新敘述])
基本指令 - for <Script> for (i=5; i>0; i--) { document.write("i=",i,"<br>") } </Script>
基本指令 - if • if的單一敘述法。 • 如果條件判斷式的值為真,執行敘述式。 • if (邏輯判斷式) 程式敘述 • if的多重敘述法。如果條件判斷式的值 • 為真,則執行敘述一,否則執行敘述二 • if (邏輯判斷式) {程式敘述區塊} • else {程式敘述區塊}
基本指令 - if <Script> if (5>3) document.write(“Hello") if (5>3) document.write(“Hello World!!!") else document.write(“Hello Taipei") </Script>
基本指令 - break 用來終止while或for迴圈。
基本指令 - break搭配for loop <Script> for (i=5; i>0; i--) { if (i == 3) break document.write("i=",i,"<br>") } </Script>
基本指令 - break搭配while loop <Script> var i=5 //全域變數i,初值為5 while (i>0) //while敘述,條件運算式為i>0 { if (i == 3) break document.write("i=",i,"<br>") i-- } </Script>
基本指令 - continue 僅僅終止while或for的某一個迴圈,然後繼續進行下一個迴圈。
基本指令 - continue搭配for loop <Script> for (i=5; i>0; i--) { if (i == 3) continue document.write("i=",i,"<br>") } </Script>
基本指令 - continue搭配while loop <Script> var i=5 //全域變數i,初值為5 while (i>0) //while敘述,條件運算式為i>0 { if (i == 3) continue document.write("i=",i,"<br>") i-- } </Script>
基本指令 - with • 簡化物件的處理。 • 建立敘述的預設物件(default object) • with (物件名稱) 敘述
基本指令 - with <script> with(document) { write("Hello World!"); write("<br>"); write("這是我的第一支JavaScript程式"); } </script>
基本指令 - switch • 依據不同情況執行敘述。 • 可以設定預設的敘述,來避免不符合所設定的情況發生。
範例 - switch <Script> var yourgender = prompt("你的性別是:\r男生請按1,女生請按2"); switch(yourgender) { case "1" : alert("你好哇!"); break; case "2" : alert("妳好哇!"); break; default : alert("別鬧了!"); break; } </script>