欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

ASP技術(shù)在WAP中的應(yīng)用

admin
2010年7月22日 22:55 本文熱度 5147
[p][b]第一節(jié):wap的潛能[br][br][/b]  這些日子,我們常聽到wap技術(shù),一種手機上網(wǎng)的技術(shù)。從技術(shù)上講,移動電話不可能和pc來競爭,移動電話的屏幕只能容下很少的字符,它的帶寬也是很受限制,而且輸入也很笨拙。那我為什么還要 介紹它了,嘿嘿,這里有兩個主要的我認為wap一定有成功的因素。 [br][br][b]隨處性: [/b][br][br]  只要你有手機,你到哪里都可以訪問wap網(wǎng)站。[br][br][b]帳單機構(gòu): [/b][br][br]  在不久的將來,我們就能通過我們的手機來支付我們的一切費用,查詢很多的信息。只是我們的手機費用中又多了一項費用"wap服務(wù)費"。 [br][br]  這樣我們就能用手機支付我們的商品費用,信用卡都不用了,它一定能夠成為新消費方式。[/p]
[p][b]第二節(jié):wap基礎(chǔ)[br][br][/b]  wap (wireless application protocol) v1.1是一種開放性規(guī)范,它試圖規(guī)范移動電話訪問信息和服務(wù)行業(yè)。這個規(guī)范是由wap forum來開發(fā)的,一個民間組織。1.2版本的wap協(xié)議將會被認為是最后的wap規(guī)范。 [br][br]  關(guān)于wap最基本的概念就是重復(fù)利用internet協(xié)議,這個協(xié)議必須很清楚地在現(xiàn)有的技術(shù)上輕松地調(diào)用wap服務(wù)。[br][br]  wap協(xié)議利用一種很像我們電腦網(wǎng)絡(luò)的分層結(jié)構(gòu)。較低層次不太像我們常用的web應(yīng)用,但是頂層還是我們的老朋友----http。數(shù)據(jù)一樣是從服務(wù)器上發(fā)出,從服務(wù)器上接收,信息能夠儲存在服務(wù)器上,調(diào)用也可能用cgi,也可以用其它的方法,比如asp.也就是說只要你會asp,那么你就可以在輕松地寫出你的第一個wap應(yīng)用程序了。 [br][br]  當然,就手機的帶寬和用戶能力方面來看,手機需要不同(更嚴格)的設(shè)備,所以在目前的條件下html就不能適應(yīng)wap所能提供的帶寬。 [br][br]  wap forum 的定位是wml (wireless mark-up language),一種xml格式的語言。wml是精簡的html。 [br][br]  wap forum同時也指定了wmlscript,很像javascript,只是用于手機而已,它能夠處理客戶端的程序。 [br][b]第三節(jié):wml[br][br][/b]  盡管我已經(jīng)講解了手機與服務(wù)器的通訊,但是真正的客戶端不是手機。一個軟件(wap gateway)實際上允當了這個角色。它將手機的請求轉(zhuǎn)換為http請求,同時也將服務(wù)器的回應(yīng)返回給手機,wml文件此時就被wap gateway編譯成二進制文件。盡管有些wap geteway能夠?qū)tml直接轉(zhuǎn)換為wml,但是也不要指望它們能任意地將html轉(zhuǎn)換為我們在手機上能看懂的東東。 [br][br]  當然,仿真器就不需要wap gateway來工作了,它會直接從服務(wù)器下載wml文件(或者直接在本地機上打開wml),同時將它顯示在手機的屏幕上。[/p]
[p][align=center][img]http://arch.pconline.com.cn/pcedu/empolder/wz/asp/10202/pic/200010101710440101.gif[/img][/align][/p]
[p][br][br]  [b]wap 仿真器[/b][br][br]  為了使用wap服務(wù),像吾等窮人買不起手機,就需要一個wap 仿真器。你可以去nokia website下載一個 nokia toolkit 1.2,同時你也得裝上java virtual machine 1.2.2,可以免費從sun公司下載,這里是個例子。[/p]
[p][align=center][img]http://arch.pconline.com.cn/pcedu/empolder/wz/asp/10202/pic/200010101710440102.gif[/img][/align][/p]
[p][align=center][b]wml 結(jié)構(gòu)[br][br][/b]  一個wml文檔是由板塊組成的,一個板塊包含有許多的卡片。在實際中,你可以把一個板塊看成一個由許多有名字的標簽組成的html。 [br][br]  手機下載一個完整的板塊,但是在一次只能顯示一個卡片。通過鏈接瀏覽不同的地方。 [br][br]  我們將會看到一個簡單的wml文檔,你得懂點最基本的xml。 [br][br]< ?xml version="1.0"? >[br][br]< !doctype wml public "-//wapforum//dtd wml 1.1//en" "http://wapforum.org/dtd/wml_1.1.xml" >[br][br]< wml >[br][br]< !-- root element -- >[br][br]< card id="card1" title="example 1" >[br][br]< p > < !-- 卡片只能支持p和do塊 -- > [br][br]< do type="accept" label="go to card 2" >[br][br]< go href="#card2"/ >[br][br]< /do >[br][br]this is the first card.[br][br]< /p >[br][br]< /card >[br][br]< card id="card2" title="example 1" >[br][br]< p >[br][br]this is the second card.[br][br]< /p >[br][br]< /card >[br][br]< /wml >[br][br]  一旦手機接收了這個塊,它就會顯示第一個卡片,當你按下左邊的軟鍵時,就會看到第二個卡片。[/align][/p]
[p][align=center][img]http://arch.pconline.com.cn/pcedu/empolder/wz/asp/10202/pic/200010101710440103.gif[/img] [img]http://arch.pconline.com.cn/pcedu/empolder/wz/asp/10202/pic/200010101710440104.gif[/img][/align][/p]
[p][align=center][/align][/p]
[p][align=center][img]http://arch.pconline.com.cn/pcedu/empolder/wz/asp/10202/pic/200010101710440105.gif[/img][/align][/p]
[br][b]wml基本的語言[br][br][/b]"p" element[br][br]作用與html一樣,只是如果你想顯示文字這個就是必須的。[br][br]"do" element[br][br]  實際上每個wap應(yīng)用必須支持導(dǎo)航條。do標簽最主要的type屬性的值就是accept,這個意味著當你按下軟鍵一個新的選項會被加到列表中來。label屬性指定顯示的文字。另外是一些選項:[br][br]go - 導(dǎo)航到另外一個卡片或板塊中去。他需要href 屬性。 [br][br]prev - 導(dǎo)航到上一個卡片中去 [br][br]refresh - 刷新顯示。 [br][br]noop - 無 [br][br]anchor[br][br]  作用和html中的一樣的。在wml中anchor鏈接的作用和do差不多,唯一的不同就是anchor不以選項的形式顯示。[br][br]< anchor >[br][br]go to card 2[br][br]< go href="#card2"/ >[br][br]< /anchor >[br][br][b]變量[/b][br][br]  wml結(jié)合變量的辦法有一點不同于html和javascript。wml的變量不僅可以被wmlscript來調(diào)用,還可以通過card直接用于wml文檔。換句話說就是變量不僅可以由用戶直接輸入,同時也可以由setvar元素來設(shè)置。當然變量能夠被腳本來操作,但這個不是必須的!這個觀點必須被更進一步的強調(diào)和闡明。例如,你可能需要一個card來獲得用戶的名字,下一個card就顯示"hello,飛刀",我們就可以這樣"hello,$(firstname)",有點像php,是不是,這個在傳統(tǒng)的html中是不可能辦到的![br][br]  既然變量的值能夠在各個card之間保存,那么它們就經(jīng)常被用于保存狀態(tài)信息,支持一些復(fù)雜的交互式wap服務(wù)。這種方法的一個問題就是當整個deck不得不重新引用時,這些狀態(tài)可能與用戶的瀏覽不能保持同步。所以,一些事件和屬性就被用來捕獲這些事件(onenterofrward 和 onenterbackward).刷新則根據(jù)一些變量的值被用做更新card.[br][b]用戶輸入[br][br][/b] 當然,為了使你的頁面變得更加的強大,變量就需要儲存(接收)用戶的標準輸入。這一切通過一些類似于html的元素來完成.[br][br]  input - 很像html,用戶通過手機的鍵盤來輸入。你能夠想像,這種輸入就不像我們使用pc上的鍵盤一樣實用,所以我們應(yīng)當盡量簡化這種輸入方式,有可能盡量使用select元素來供用戶選擇。name屬性是這個變量的名字,缺省值和大小的屬性顯然也是必須的。format為輸入入口指定了一個輸入面具。其它的請查看其它資料,在這我就不一一講述了! [br][br]select/option - 用戶選項的列表。同樣也很像html: [br][br]< select name='movie' >[br][br]< option value='1' >eyes wide shut< /option >[br][br]< option value='2' >notting hill< /option >[br][br]:[br][br]< option value='13' >buena vista social club< /option >[br][br]< /select >[br][br]multiple=true屬性告訴用戶代理(瀏覽器)多項選擇是被允許的. onpick事件發(fā)生于一個選項被選擇/被取消時. [br][br]postfield - 很像html中的hidden屬性,它將不顯示在屏幕中。它能同時將name與value傳送給服務(wù)器. [br][br]fieldset - 包含一大堆的信息強迫手機在一個屏幕中顯示,當然這得看手機的能力了
[p][b]其它的元素[br][br][/b]  img元素也同樣被支持,但是你得使用一種特殊的圖片格式,名叫wbmp.因為wap手機擁有有限的內(nèi)存和儲存空間。這種新的格式能夠讓wap設(shè)備快速的理解和生成圖片。wireless bitmaps的生成,可以通過下載一個photoshop和paint shop pro的插件就可以搞定了。最后大家要記住在你的服務(wù)器上設(shè)置正確的mime類型,下面我列出了所有與wap有關(guān)的mime:[br][br]wml text/vnd.wap.wml[br][br]wmlc application/vnd.wap.wmlc[br][br]wmlsc application/vnd.wap.wmlscriptc[br][br]wmlscript text/vnd.wap.wmlscript[br][br]ws text/vnd.wap.wmlscript[br][br]wsc application/vnd.wap.wmlscriptc[br][br]wmls text/vnd.wap.wmlscript[br][br]wbmp image/vnd.wap.wbmp[br][br]  一些傳統(tǒng)的強調(diào)元素也被支持,比如:em,i,b,small,strong等等,用法也和html一樣。br也同樣被支持,不過寫法有點不同,畢竟是xml嘛,要寫成這樣[br][br][br]  最后我們來看看time對象和ontimer事件,time對象保存著至card被調(diào)用至今的時間,如果我們定了ontimer事件,那么ontimer事件就會被激發(fā). [br][br]  還有很多我也懶得寫了,希望對你們建設(shè)wml網(wǎng)頁沒有什么影響.[br][br][b]wap 的開發(fā)問題[/b][br][br]  很不幸的是,事情并不是我們想像的那么簡單,不同的wap手機總是有一些小的不同的地方,就像m$的javascript與ns的不同一樣。例如,nokia 7710這樣第一部在挪威出售的wap手機,就不能正確的支持post方法。[br][br]  另一個限制就是deck的大小的問題。有些手機(nokia 7110)就是不支持超過1.4k的wml文檔,wap網(wǎng)關(guān)能夠?qū)⒛愕膚ml文檔壓縮成更小的二進制格式,但是你也不要希望奇跡出現(xiàn)。這時不僅是nokia 7110支持的東東不能顯示,一些強調(diào)標幟也被忽略了,另外fieldset標幟也很輕松地被它忽略了,是不是很煩!?嘿嘿,當你在仿真器上做出很cool的頁面,然后再到手機上一看,嘿嘿,砸了手機是你的第一選擇.[br][br]  雖然nokia toolkit 1.2仿真器上支持cookies,但是第一批wap手機就是不支持,這就意味著你將和你的asp中的session,說再見,至少也是很長的一段時間 [br][br]  下一節(jié),我們將真正做一個wml與asp相結(jié)合的網(wǎng)站.[br][b]第四節(jié):另一種預(yù)訂你電影票的方法[br][br][/b]  在上一節(jié)中,我講解了最基本的wap和wml的概念,這一節(jié)我們就來看看asp和wap是如何結(jié)合的. [br][br]  現(xiàn)在在奧斯陸,電影院提供了一種基于電話系統(tǒng)的來銷售門票,這個系統(tǒng)是很復(fù)雜的,還必須給用戶一些說明才能指導(dǎo)用戶買票,而且用戶還必須在報紙上找到某種電影的代碼,這個很煩,我們來介紹另一種方法。 [br][br]  這里這將給你展示一個簡單的讓手機用戶訂票的wap應(yīng)用:一個肯定讓人叫好的服務(wù)。用戶不必記住那些煩人的代碼,他們能夠直接從菜單中選取電影和電影院,并且用戶也不需要認證。在這個例子中用戶被要求在電影開始前40分鐘交費,但是在真正的生活中,用戶同樣可以通過手機來結(jié)帳. [br][br]  此應(yīng)用程序想像的條件是一個電影能夠在同一時間在多個電影院上映,一個電影院不同的時間上演不同的電影。 [br][br]  這里我沒有過多的考慮錯誤處理的問題,因為這不是本章節(jié)的重點,你喜歡你可以自己加上. [br][br]  為了簡單,我使用了access 97來做為數(shù)據(jù)庫,當然真正的系統(tǒng)不會用它了,其它的數(shù)據(jù)庫如sql server,也不必改動多少代碼. [br][br][b]數(shù)據(jù)庫圖表 [/b][/p]
[p][align=center][img]http://arch.pconline.com.cn/pcedu/empolder/wz/asp/10202/pic/200010101710440106.gif[/img][/align][/p]
[p][br][br][b]數(shù)據(jù)庫圖表 [/b][br][br].movie 和theater表是顯然需要的。show表用于追蹤現(xiàn)在還有多少空位可以出售。 [br][br][b]怎樣調(diào)試這個程序 [/b][br][br]  為了訪問這個wap服務(wù),你需要一個wap仿真器,這個程序主要是在nokia toolkit 1.2上調(diào)試,詳細情況請查看上一章節(jié)。 [br][br][b]選擇電影 [/b][br][br][b]在list表中選擇一個電影: [/b][/p]
[p][align=center][img]http://arch.pconline.com.cn/pcedu/empolder/wz/asp/10202/pic/200010101710440107.gif[/img][/align][/p]
[p][align=left]這里是代碼:[br][br]< !--#include file="conn.asp" -- >< % 'send the right mime type[br][br]response.contenttype = "text/vnd.wap.wml" [br][br]  第一件事就是聲明wml,仿真器如何不在正確的地方聲明xml,它是不會接受wml的盡管nokia 7110可以忽略這一點,但是不能保證其它的手機也行,所以你不得不做這事。同樣你也得設(shè)置好mime類型。[br][br]< ?xml version="1.0"? >[br][br]< !doctype wml public "-//wapforum//dtd wml 1.1//en" "http://wapforum.org/dtd/wml_1.1.xml" >[br][br]< wml >[br][br]  在進入下一個card以前會有一個閃爍的屏幕來顯示一個圖片wbmp一種新的格式。這個事件是由timer屬性決定的,這里我們設(shè)置的時間為5秒.ontimer事件引發(fā)后將帶你去另一個card.(wmbp的photoshop插件可以從網(wǎng)上免費下載).[br][br]< card id="splash" ontimer="#card1" title="welcome to" > < timer value="50"/ >[br][br]< p align="center" >[br][br]< br / >[br][br]< img src="pix/logo.wbmp" alt="wap movies"/ >[br][br]< /p >[br][br]< /card >[br][br]< card id="card1" title="choose a film" >[br][br]< % [br][br]sqlquery = "select [movie_id], [title] from movie"[br][br]set rsmovies = conn.execute(sqlquery)[br][br]: [br][br]% >[br][br]< p >[br][br]< select name='movie' >[br][br]< %[br][br]do while not rsmovies.eof[br][br]response.write("< option value='" & rsmovies("movie_id") & "' >" & rsmovies("title") & "< /option >" & vbcrlf)[br][br]rsmovies.movenext[br][br]loop % >[br][br]< /select >[br]這一部分是本文的焦點。從數(shù)據(jù)庫中讀出需要的數(shù)據(jù)顯示出來,作為一個asp程序員,這個沒有什么特別的,但是就是這個簡單的程序現(xiàn)在被用于一種全新的服務(wù)器就顯得不一樣了。這也使得我更加認為在基于wml的商業(yè)站的網(wǎng)絡(luò)編程asp更勝于java servlet. [br][br]< small > < anchor title="next!" >next[br][br]< go href="step2.asp" method="get" >[br][br]< postfield name="movie" value="$(movie)" / >[br][br]< /go >[br][br]< /anchor >[br][br]< /small >[br][br]< /p >[br][br][br]  表單的提交也可以通過軟開關(guān)函數(shù)(do 和 anchor)來完成。在這里,我是通過簡單的內(nèi)嵌鏈接來完成的,因為我覺得這樣能夠使用戶感覺直觀和友好。postfields大至和html中的hidden差不多,但是wml的變量不像html中的那樣需要在javascript中傳送,它可以直接寫在wml中,這一點上一節(jié)已經(jīng)講解了.在這里的傳遞的方法是get,post方法在wap的規(guī)范也是被支持的,仿真器也能識別它,但是很不幸,在nokia 7110中,這個post不被支持,所以你沒得選擇.[/align][/p]

該文章在 2010/7/22 22:55:28 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務(wù)費用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務(wù)都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved