シンプル ASP は、アクセス データベースをロードし、XML を生成し、学習などのためにその XML データを LIST コンポーネントにロードします。まず、ASP は ACCESS データベースを読み取ります。
次のようにコードをコピーします。
<% @ language=VBScript @codepage=65001%>
<%
'明示的な変数宣言をオンにする
明示的なオプション
'出力タイプを設定
Response.contentType=テキスト/xml
'conn (Connection オブジェクト)、connstr (ConnectionString)、sql (SQL ステートメント) の 3 つの変数を定義します。
ディム conn、connstr、rs、sql、i
'ConnectionStringの値を定義します
i=1
connstr=provider=Microsoft.Jet.OLEDB.4.0;データ ソース=&Server.MapPath(test.mdb)&;
'サーバー接続オブジェクトの作成
set conn=Server.CreateObject(ADODB.Connection)
'データセットオブジェクトを作成する
set rs=Server.CreateObject(ADODB.RecordSet)
'データ接続を開く
conn.open connstr
'この文の意味は、単語データ テーブルの id フィールド値の昇順で最初の 100 件の Song1name フィールド値と dong1url フィールド値を取得することです。値は、データセットのプロパティとしてデータセット オブジェクトに添付されます。
sql=[テスト] から上位 100 件の [song1name]、[dong1url] を選択 ID 順に並べ替えます desc
'カーソル タイプとロック タイプは両方とも 1 に設定されます。これは、最速の読み取り速度を持つ前方読み取り専用の動作です。
rs.open SQL,conn,1,1
Response.Write(<?xml version='1.0'coding='utf-8'?><Taosha.com>)
' do while ループを実行し、条件を満たす最後の項目まで条件付きでループします。
rs.eof ではないときに実行します
'出力ファイルをFlash上のLoadVarsオブジェクトで認識できるように修正した部分です。
Response.Write(<曲情報><曲名>&rs(song1name)&</曲名><アドレス>&rs(dong1url))&</アドレス></曲情報>
'レコードが下に移動しました
rs.movenext
i=i+1
' do while をエコーするループ メソッドがメインのループ本体です
ループ
Response.Write(</Taosha.com>)
'データセットオブジェクトを閉じます
rs.close
'データベース接続を閉じます
接続閉じる
'データセットリソースを解放します
rs=何も設定しない
'データベース接続リソースを解放します
conn=何も設定しない
%>
コードのこの部分はデータベースを読み取ります。
実際に出力中に XML がどのように生成されるかを見てみましょう。さらに、対応する XML 形式も追加します。たとえば、<曲情報>や各種タグなどです。各ラベルは必ず閉じてください。
この xml.asp ファイルのコード全体は次のとおりです。
次に、FLASH にどのように読み込まれるかを見てみましょう。
ここでは、非常に単純である必要があります。
次のようにコードをコピーします。
//コンポーネントを定義する
var my_TextArea:mx.controls.TextArea;
var my_List:mx.controls.List;
var my_XML:XML = 新しい XML();
my_XML.load(http://www.taoshaw.com/taoshaw/study/accessAndList/xml.asp);
my_XML.onLoad = function(ok:Boolean) {
if (ok) {
for (i=0; i[td] my_List.addItem({label:this.firstChild.childNodes.childNodes[0].childNodes[0].nodeValue, data:this.firstChild.childNodes.childNodes[1].childNodes[ 0].nodeValue});
}
}
};
var my_Object:Object = 新しいオブジェクト();
my_Object.change = function(eventObj:Object):Void {
my_TextArea.text +=eventObj.target.selectedItem.label+/n;
};
my_List.addEventListener(change, my_Object);
このようにして、生成された XML ファイルが LIST にインポートされます。監視機能を通じてデータを呼び出すことができます。
これをしっかり学べば、フォト アルバム、動的記事管理、プレーヤーなどのバックグラウンド プロジェクトを作成するのは難しくありません。
外部ファイルをロードする必要がある FLASH を作成する場合は、エンコードの問題に特別な注意を払う必要があります。
まず、同じ FLASH 内に System.useCodepage=true; が 2 回出現しないように注意してください。
この文の本来の意味は、読み込んだ外部の非 Utf-8 形式ファイルのエンコーディングを uft-8 形式に変換することです。これを 2 回使用すると、必ずエラーが発生します。
一般的な連携方法は、外部ファイルを保存する際にuft-8またはGb2312のエンコード形式を選択することです。これら 2 つのエンコーディングの詳細な違いについては、まだよくわかりません。理解できる方がいらっしゃいましたら、アドバイスをいただければ幸いです。
ASP の i は意味がありません。取り外し可能です。投稿された部分の 26 行目では、括弧の位置が間違っています。
また、投稿者が投稿した AS の if(ok){} 内のコードの一部が欠落しています。 for ループが不完全です。
次のようにコードをコピーします。
useCodePage プロパティ
useCodePage:Boolean [読み取り/書き込み]
言語バージョン: ActionScript 3.0
プレーヤーのバージョン: Flash Player 9
外部テキスト ファイルを解釈するためにどのコード ページを使用するかを Flash Player に指示するブール値。 このプロパティが false に設定されている場合、Flash Player は Unicode を使用して外部テキスト ファイルを解釈します。 (これらのファイルは、保存するときに Unicode でエンコードする必要があります。) このプロパティを true に設定すると、Flash Player は、プレーヤーが実行されているオペレーティング システムのレガシー コード ページを使用して外部テキスト ファイルを解釈します。 useCodePage のデフォルト値は false です。
外部ファイルとしてロードされたテキスト (flash.display.Loader.load()、flash.net.URLLoader、flash.net.URLStream、または XML クラスを使用) は、Flash Player が認識できるように Unicode エンコードを使用して保存されている必要があります。ユニコードとして。 Unicode を使用して外部ファイルをエンコードするには、Unicode 対応アプリケーション (Windows 2000 のメモ帳など) にファイルを保存します。
ロードされている外部テキスト ファイルが Unicode エンコード形式でない場合は、useCodePage を true に設定する必要があります。 データがロードされる SWF ファイルの最初のフレームの先頭に次のコードを追加し、これがコードの最初の行になるようにします。
System.useCodePage = true;このコード行を使用すると、Flash Player は、Flash Player が実行しているオペレーティング システムのレガシー コード ページを使用して外部テキストを解釈します。 英語版 Windows オペレーティング システムの場合、このコード ページは通常 CP1252 であり、日本語オペレーティング システムの場合、このコード ページは通常 Shift-JIS です。 useCodePage が true に設定されている場合、Flash Player 6 以降は Flash Player 5 と同じようにテキストを処理します。 (Flash Player 5 は、すべてのテキストを、プレーヤーが実行されているオペレーティング システムの従来のコード ページでエンコードされたテキストとして扱います。)
useCodePage を true に設定した場合、テキストを表示するには、外部テキスト ファイルで使用されている文字が、プレーヤーが実行されているオペレーティング システムのレガシー コード ページに含まれている必要があることに注意してください。 たとえば、中国語の文字を含む外部テキスト ファイルをロードした場合、そのコード ページには中国語の文字が含まれていないため、CP1252 コード ページを使用するシステムではその文字を表示できません。
SWF ファイルで使用される外部テキスト ファイルをすべてのプラットフォームのユーザーが確実に表示できるようにするには、すべての外部テキスト ファイルを Unicode としてエンコードし、useCodePage を false に設定したままにする必要があります。 このようにすると、Flash Player 6 以降はテキストを Unicode として解釈します。