推奨:サイトマップを使用して、検索エンジンを支援しますウェブサイトを構築する目標は、可視性を高め、ユーザーのトラフィックを増やすことです。検索エンジン最適化は、ウェブサイトのトラフィックを増やす方法です。別のアプローチは、SiteMapを使用することです。これにより、検索エンジンに含まれるページまたはインデックスを指定できます。サイトマップの概念はもともとGoogleによって作成されました
プログラミング言語をよく学習するために不可欠な2つの条件があります。 1つは、理論と実践を組み合わせて、実用的なルーチンを通じて本の理論を検証することが理論の理解を深めることです。もう1つは、学習し、学習とアプリケーションの経験と経験を書き留め、経験やレッスンとして洗練し、将来のアプリケーションで改善することを学びます。これにより、このプログラミング言語の理解が確実に向上します。以下は、ASPプログラミングの学習と使用に関する2つの経験です。これが役立つことを願っています。
ASPページのVBScriptとJScriptの間の相互作用
ASPには、さまざまな言語でスクリプトプログラムを管理する機能があり、適切なスクリプトエンジンを自動的に呼び出して、スクリプトコードを解釈し、組み込み関数を実行できます。 ASP開発環境は、2つのスクリプトエンジン、つまりVBScript(デフォルト)とJScriptを提供します。ただし、開発者はこれら2つの言語のみを使用することに限定されず、適切なActiveXスクリプトエンジンを提供できる限り、スクリプト言語を使用できます。
スクリプト言語の選択は、多くの場合、さまざまな理由に基づいていることがよくあります。おそらく、開発者が最もよく精通している言語であり、おそらく特定のプロジェクトに最も特徴のサポートを提供するもの、あるいは最も効率的な言語です。さまざまな環境と要件により、スクリプト言語を選択する際にさまざまな要因に注意を払い、ある時点で、選択したスクリプト言語が他の言語で直接機能を提供できない、またはスクリプトが書かれているが別のスクリプト言語を使用しているという問題に直面します。
私は今何をすべきですか?現在のスクリプト言語でこれらのスクリプトを書き換える必要がありますか?または、1つのスクリプト言語で他のスクリプト言語の組み込み関数を呼び出すことは可能ですか?この記事が説明するのは、ASPアプリケーションでVBScriptスクリプトとJScriptスクリプトと対話する方法で、2つのスクリプト言語の特別なサポートを最大化することです。
1。VBScriptおよびJScriptの組み込み関数
VBScriptとJScriptには、同じまたは類似の多数の組み込み関数があります。ただし、あるスクリプト言語に組み込まれた関数は、別のスクリプト言語で常に対応する機能を持っているわけではありません。たとえば、VBScriptは、jscriptには存在しない文字列を操作し、フォーマットデータを操作するための多くの機能を提供します。これらの関数には、strreverse()、filter()、formatcurrency()などが含まれます。一方、jscript、文字列エンコードなどのためにjscriptが提供する関数は、join()、pow()、bit操作、エスケープ()、unscape()などのvbscriptでは定義されていません。
それでは、JScriptプログラムでVBScript関数が必要な場合はどうすればよいですか?
2。異種スクリプトの相互呼び出し
JScriptスクリプトで組み込みのVBScript関数を呼び出す必要がある場合は、VBScriptユーザー定義関数(VBScriptビルトイン関数はこちら)を記述し、Public JScript関数を呼び出すようにJScriptスクリプトでこのユーザー定義関数を呼び出す必要があります。
たとえば、呼び出されるVBScriptビルトイン関数がformatcurrency()である場合、次のカスタム関数を宣言できます。
| 以下は引用されたコンテンツです。 <スクリプト言語= vbscript runat = server> function formatvalue(value) formatvalue = formatcurrency(value) エンド関数 < /script> |
次に、jscriptコードでは、通常のjscript関数のようにformatvalue()を呼び出すことができます。 VBScriptコードは、jscript関数を呼び出し、同様の方法を使用して実装することもできます。
同じルールを適用すると、スクリプト内のユーザー定義の関数を呼び出すことができます。ただし、jscriptスクリプト内からパラメーターなしでVBScriptプロシージャ(sub)を呼び出す場合、注意する必要があります。現時点では、foo()を使用してvbscript sub fooプロシージャを呼び出すなど、パラメーターなしでjscript関数を呼び出すなど、jscriptでそれを呼び出す必要があります。
3。データ共有
場合によっては、VBScriptとJScript機能を組み合わせることが非常に便利ですが、異なる言語のスクリプト間でデータを共有することも役立ちます。この共有を実装する方法は簡単です。使用している言語に関係なく、ページレベルで宣言された変数は任意に参照できます。
オブジェクトの使用方法も似ています。適切な言語を使用して、プロパティの読み取り、変更、またはオブジェクトを呼び出すことができます。もちろん、特定のオブジェクトのプロパティと方法は、そのオブジェクトのインスタンスを作成した言語によって定義されます。上記の例VBScriptプロシージャコールと同様に、パラメーターのないVBScriptオブジェクトのメソッドがJScriptから呼び出される場合、その呼び出し方法はJScriptの呼び出しルールにも従います。
IV。配列管理
配列共有の問題はもう少し複雑です。アレイは、他の変数のような異なる言語のスクリプト間で共有することもできますが、互換性の問題に注意する必要があります。
VBScriptアレイは、jscriptのvbscriptシンボル、つまり、シンボルmyarray [2]を参照するJScriptのアレイ要素の代わりに、myarray(2)の配列要素を参照することができます。さらに、特別なJScriptオブジェクト-VBARRAYオブジェクトを使用して、VBScriptアレイをJScriptアレイに変換することもできます。次のコードでは、vbscriptアレイmyvbarrayからjscriptアレイmyjsarrayを作成します。
| 以下は引用されたコンテンツです。 var temp = new vbarray(myvbarray) var myjsarray myjsarray = temp.toarray() |
上記のコードは、最初に一時的なvBarrayオブジェクトを作成し、次にtoarray()メソッドを使用してJScriptアレイに変換します。その後、myjsarrayは、myjsarray [1]などの通常のJScriptアレイのように使用できます。ただし、ToArray()メソッドは、多次元VBARRAYを1次元JScriptアレイに変換することに注意する必要があります。
VBScriptからのJScriptアレイを参照することはより複雑です。 VBScriptでは、JScriptアレイに関連するメソッドとプロパティに直接アクセスできますが、JScriptアレイの単一の要素に直接アクセスする方法はありません。つまり、VBScriptスクリプトのJScriptアレイの長さプロパティを次のように読み取ることができます。
x = myjsarray.length
ただし、配列の単一の要素を直接読み取ることはできず、次のVBScriptコードが正しくありません。
x = myjsarray(3)
この問題を解決する可能性のある方法は、次のコードに示すように、VBScriptがデフォルトのスクリプト言語であると想定されるように、変換プロセスを実行することです。
| 以下は引用されたコンテンツです。 <% 薄暗い温度 薄暗いmyvbarray temp = myjsarray.join(、) myvbarray = split(temp、、) %> |
JScript Join()メソッドは、アレイmyjsarray要素をスプリッターとしてコンマを使用して文字列に変換し、vbscript split()関数は文字列をvbscriptアレイに変換します。 VBScript環境でJScriptの結合方法を呼び出していることに注意してください。この例によれば、jscript機能を使用してjscriptのvbarrayオブジェクトのtoarray()メソッドをシミュレートして、jscriptアレイのVBScriptアレイへの変換を実装できます。
テンプレートを使用して動的なASPページを作成します
テンプレートに関しては、誰もがいくつかの概念を持っていると思います。単語には多くのテンプレートがあります。一般的なレイアウトを設計した後、自分の言葉でプレースホルダーのキャラクターを記入するだけです。これはおそらくここでテンプレートの意味です。ページの比較的安定した部分は固定されており、他の部分はさまざまな状況で異なる内容を入力しています。実際、DreamWeaverにはテンプレート関数もありますが、静的な機能はコンテンツを手動でしか埋めることができません。ここでは、動的な自動コンテンツの充填についてです。
まず、テンプレートファイルが使用される理由を説明しましょう。テンプレートが、Webページ機能とレイアウトのより完全な概念を提供できる場合があります。単語のテンプレート形式が表示されると、最終レイアウトがどのように見えるかがわかり、ここでも同じことが言えます。たとえば、ASPステートメントを保持し、さまざまなテンプレートを使用して異なるページスタイルを作成できます。
このようにして、さまざまなスタイルのWebページごとに異なるASPページを作成する必要はありません。これにより、明らかに多くの時間とエネルギーを節約できます。さらに、テンプレートファイルによりページコードを閲覧しやすくなり、ASPとHTMLがめまいがすることを心配する必要はありません。 ASPについてまったく心配することなく、HTMLに集中することができます。もう1つのことは、タッチパッドが非常にシンプルで、間違いなくすぐにそれを理解することです。この記事では、データベースが使用されます - 広く使用されている従業員テーブル。従業員ID、名前、写真、および写真の履歴書と脚注が含まれます。このアクセスデータベースの構造は次のとおりです。
| 以下は引用されたコンテンツです。 ファイル名-mydatabase.mdb テーブル名 - 従業員 id 自動カウント(autonumber) フルネーム テキスト - 最大100文字 ピカール テキスト - 最大255文字 義務 コメントタイプ ピカプシオン テキスト - 最大50文字 |
非常にシンプルなデータベースですよね?もちろん、必要に応じて拡張できます。それはあなた自身のビジネスです。私はあなたがすでにデータベースの基本操作を理解していると思いますので、私はそれにあまり労力を費やす必要はありません。実際、ここのコードは非常に簡単です。いくつかの基本的なことを知っている限り、あなたはそれを理解することができます。データベースを確立した後、テンプレートファイルの作成を開始できます。このファイルは、各ページのスケルトンです。私はフォームを使用しませんでした、それは少し面倒で、私は怠zyであり、それを追加する必要はありませんでした、それはASPページに追加されることでした。結局のところ、それは次のように見えます:
| 以下は引用されたコンテンツです。 フルネーム: %name%<br>任務の説明: %任務% この写真は撮影されました:e% 従業員ID:%empid% |
それでおしまい!これは簡単なテンプレートです。 Template.tmpとして保存し、以下のASPページに参照します。さまざまなHTMLタグをテンプレートに追加できることに注意してください。 TouchバージョンのWebページの構造とスタイルを完全に定義できます。実際にWebページを書くのと同じように、キーポイントをマークするだけです。それがテンプレートの本質です。おそらく、これらの%はデータベース内のフィールドの意味に対応することに囲まれていることに気づいたことがあります。以下のASPコード、テンプレートファイルとデータベースファイルの読み方をご覧になり、それらを一緒にこねてから、必要なHTMLページを出力します。
それがすべてコードです、それはとても簡単ですね。それが行うのは、テンプレートファイルを開き、各行を順番に読み取り、テンプレート内の%IMG%および%name%タグをデータベースで読み取る実際のフィールド値を置き換えることです。さらに、レイアウト形式全体が妨害されないように、HTMLのキャリッジリターンとして、職務分野の大きなテキストのキャリッジリターンを解釈します。それはどうですか?それをするのは簡単です。テンプレートは、一部のアプリケーションで実際に奇跡的な役割を果たすことができ、時間と労力を節約できます。理論的には、このコードを変更してFilesystemObjectを使用してテキストを読み書きすることもできます。これにより、データをデータベースに保存する必要がないようにします。インスタントニュースリリースなどの一部のアプリケーションでは、これはより便利な場合があります。
共有:Webページに一般的に使用されるASP機能'-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------