ASP の学習手順:
1. 5 つのオブジェクト リクエスト、レスポンス、セッション、サーバー、アプリケーション
2. 2 つのデータベース コンポーネント Adodb.Recordset Adodb.Connection
3. Request.From(フォーム名)でFromフォームデータを取得します
4. Request.QueryString(Url パラメータ) URL パラメータを取得します
5.index.asp?act=保存
6. Request.QueryString(act)
1.リクエスト
Request.Cookies(Cookie) Get Cookies Cookie は通常、ユーザー情報を保存するために使用され、セッションも同じタイプを持ちます。違いは、Cookie がユーザーのハードディスクに保存されることです。 Request (パラメータ名) を使用して、Request の値を取得するだけです。
2. 対応
Response.ブラウザへの出力の書き込み
Response.Redirect リダイレクト
Response.End はブラウザへの出力を停止します
Response.Cookies はクライアントに Cookie を書き込みます
Response.Cookies(CookieName) = テスト
Responsp.Cookies(CookieName).Domain=china228.com このように書くと、すべての China228.com ドメイン名で Request.Cookies(CookieName) を使用することで取得できます。
3. セッション
Session(SessionName) = セッションに情報を保存
If Session(SessionName) <> then セッションが存在するかどうかの判断は、通常、Session(SessionName) = Clear Session を検証するために使用されます。
Session.Abandon はすべてのセッションをクリアします
Session.TimeOut = 100 セッションの有効期限の単位を秒に設定します
セッションはサーバーに保存されます。セッションが再起動されると、プロセス プールはなくなり、強制的にクリアするプログラムを作成しない限り、それを制御することはできません。
4. サーバー
Server.Mappath は、仮想パスを実際のパスに変換します。プログラムが C ドライブ上にある場合は、ルート ディレクトリに基づく path = c:/ と同じ path = Server.Mappath(/) を使用します。
Server.CreateObject は、一般的に使用される登録コンポーネントです。 Server.CreateObject(Adodb.RecordSet) はデータベース コンポーネントを登録します。
5. アプリケーションはグローバル オブジェクトです。セッションと同じですが、アプリケーションにはグローバルな情報が格納されます。
アプリケーション(サイト) = Http://www.webjx.com サイト内のすべてのファイルがこのアプリケーションを呼び出すことができる限り、第 2 レベルのドメイン名はこのアプリケーションを呼び出すことはできませんが、Cookie を使用して利用可能なドメイン名を設定します。
================================================= =====
6. Adodb.Connection データベースに接続するには、まず Conn オブジェクトを登録します Set Conn = Server.CreateObject(Adodb.Connection) //Server オブジェクトの CreateObject メソッドを使用し、次に Connection の open メソッドを使用してデータベースに接続します Conn.Openプロバイダー=Microsoft.Jet.OLEDB .4.0;データ ソース=&Server.Mappath(Date.mdb) Server.Mappath(Date.mdb) は、カレントディレクトリ下の Date.Mdb です。通常、これを Conn.asp に置きます。
<%
ディムコン、コンストラ
Conn = Server.CreateObject(Adodb.Connection) を設定します
ConnStr = Provider=Microsoft.Jet.OLEDB.4.0;データ ソース=&Server.Mappath(Date.mdb)
Conn.Open ConnStr
%>
Dim は変数を定義することですが、asp は弱い型付け言語なので、使用する前に定義する必要がある C# や Java などとは異なり、定義する必要はありません。
Execute メソッド Conn.Execute(Sql) SQL ステートメントを実行します Conn.Execute(Insert Into Tablename(1,2,)Values(1,2))
Conn.Close オブジェクトを閉じます。 insert データの一部を挿入します。 update データを変更します。 delete delete select クエリを実行します。
7. Adodb.Recordset は、登録されたオブジェクトでもあるレコード セットを返します。 Set Rs = Server.CreateObject(Adodb.Recordset) この rs は Com コンポーネントであるため、自分で定義できます。 (つまり、作成された deihl C++ DLL を使用します。ASP 自体では実装できない一部の関数) は ASP の組み込みオブジェクトではないため、オブジェクトを登録する必要があります
次に、Open メソッドを使用してレコード セットを開きます。 Rs.Open Select * From TableName,Conn,1,3 Rs.Open Sql ステートメント,Conn object,1,3 (1,3 パラメーターについては後で説明します) SQL ステートメントは次のとおりです。一般に、クエリ ステートメント Conn オブジェクトは、上記の Connection によって開かれたデータベース オブジェクトです。
1 データベースのカーソルの種類を開きます
3 このパラメータを 1 に変更すると、ライブラリの操作、更新、削除ができなくなります(Rs.Addnew、Rs.Update、Rs.Delete は使用できなくなります)。2 に変更した場合は、排他的な形式でオープンされます。 (ユーザーが変更している場合) ライブラリにアクセスすると、データの整合性を維持するためにライブラリがロックされます)
3. ライブラリに対して、削除、変更、更新、追加などのあらゆる操作を実行できます。
ここでは通常、ライブラリを操作する必要がないため、データの追加と変更を行う場合は Rs.Open Sql,Conn,1,1 の 2 種類を使用します。 Rs.Open Sql,Conn,1,3 Rs を使用します。 .Bof は、データの最初の部分である場合は True を返し、それ以外の場合は Rs.Fof はデータの最後の部分である場合は True を返し、それ以外の場合は False を返します。 rs.eof の場合、これを使用してデータベースにレコードがあるかどうかを判断できます。 rs.bof は、現在のカーソルが最初でも最後の項目でもない場合はレコードがないことを意味し、rs.eof がレコードがあることを意味する場合は、ループを使用して Rs を出力します。 Conn と同じように理解され、変数です。
Set Rs = Server.CreateObject(Adodb.Recordset)
Rs.Open SQL、Conn、1、1
If Not Rs.Eof then レコード セットの最後にない場合は、レコードがあることを意味します
レコードセットの終わりがループから抜け出すまで、Do While Not Rs.Eof
Response.Write Rs(フィールド名)
Rs.MoveNext カーソルが下に移動します
ループ
終了の場合
Rs.Close //オブジェクトの登録を解除する
Set Rs = Nothing //リソースを解放する
ASP は弱く型指定された定量的オブジェクトであるため、型を定義する必要はありません。
C#ならそれで終わり
int i; string str; asp is dim i、str、および asp は、初期値を割り当てることができない変数を定義します。
C# int i = 1;
aspdimii=1
ポインターの動きについて話しましょう (上のカーソルはポインターである必要があります。カーソルは ASP ではなく C 言語です)
Rs.MoveNext 1 行下に移動
Rs.MovePrevious 1 行上に移動
Rs.Movefirst 最初の項目に移動
Rs.MoveLast 最後の項目に移動
Rs.Absoluteposition = n は、レコード ポインタを n 番目の行に移動します。
一般的に使用されるのは Rs.MoveNext です。
ASP ページングのいくつかのメソッド属性について説明する
Rs.Pagesize = n 1 ページあたり N 個のデータを表示します
Rs.absolutepage = n は、レコード ポインタをページ N の最初のデータに移動します。
Rs.RecordCount レコードセット内のレコードの総数
Rs.PageCount レコードセット内の総ページ数
<%
ディムコン、コンストラ
Conn = Server.CreateObject(Adodb.Connection) を設定します
ConnStr = Provider=Microsoft.Jet.OLEDB.4.0;データ ソース=&Server.Mappath(Date.mdb)
Conn.Open ConnStr
Set Rs = Server.CreateObject(Adodb.Recordset)
Rs.Open SQL、Conn、1、1
ページサイズ = 20
Rs.PageSize = PageSize '1 ページあたり 20 項目を表示します
curpage = Request.QueryString(Page) '現在のページ番号を取得します
curpage = Or IsNumeric(curpage) Or (curpage-Rs.pagecount) > 0 の場合
' curpage が空に等しいか、数値型でない場合、または curpage が合計数より大きい場合
反り=1
'その場合、curpage は 1 に等しくなります
終了の場合
Rs.absolutepage = curpage '現在のレコードセットのページを設定します
i=1
If Not Rs.Eof then レコード セットの最後にない場合は、レコードがあることを意味します
Rs.Eof かつ i < PageSize でない場合に実行します。データ セットの最後のレコードであるか、i が Rs.PageSize より大きい場合に終了します。
Response.Write Rs(フィールド名)
i = i + 1 i + 1 ループごとに 1 回
Rs.MoveNext ポインタが下に移動します
ループ
終了の場合
%>
<%if curpage=1 then%>
フロントページ
<%else%>
<a href=?page=1>ホームページ</a>
<%end if%>
<%if curpage=1 then%>
前のページへ
<%else%>
<a href=?page=<%=curpage-1%>>前のページ</a>
<%end if%>
<%if rs.pagecount<curpage+1 then%>
次のページ
<%else%>
<a href=?page=<%=curpage+1%>>次のページ</a>
<%end if%>
<%if rs.pagecount<curpage+1 then%>
最後のページ
<%else%>
<a href=?page=<%=rs.pagecount%>>最後のページ</a>
<%end if%>
curpage は、上記の Reqeust.Querystring を使用して取得された現在のページであることに注意してください。
フロントページ:
これは、現在のページが最初のページ (つまり、ホームページ) であるかどうかによって決まります。それ以外の場合は、「ホームページ」という単語が表示されます。ホームページに直接ジャンプします。
前のページ:
現在のページが最初のページの場合、リンクは無効になります。ここでは、<%=curpage-1%> を使用します。これは、現在のページ番号から 1 を減算することを意味します。前のページ。
次のページ:
ここでは、比較のために rs.pagecount 属性を使用する必要があります。合計ページ数が現在のページ番号に 1 を加えたものより小さい場合、これは最後のページであることを意味し、それ以外の場合はリンクが無効になります。次のページへ。
最後のページ:
次のページと同じ関数で、最後のページの場合はリンクが無効であると判断され、それ以外の場合は現在のページが rs.pagecount (総ページ数) として指定されます。
<%
Rs.Close //オブジェクトの登録を解除する
Set Rs = Nothing //リソースを解放する
%>
Rs.Addnew 新しいレコードを追加します。オープン データ セットは 1,3 である必要があります。
Set Rs = Server.CreateObject(Adodb.Recordset)
SQL = Select * From Tealename
Rs.Open SQL、Conn、1、3
Rs.Addnew() はレコードセットの末尾にレコードを追加します
Rs(フィールド名1) = 値1
Rs(フィールド名2) = 値2
Rs(フィールド名 3) = 値 3
Rs.Update() はデータベースへの変更を更新します
Rs.Close
Rs=何も設定しない
%>
Rs.Updateアップデートデータ
Set Rs = Server.CreateObject(Adodb.Recordset)
Sql = Select * From Tealename Where id = 1 'ID 1 のデータを変更します
Rs.Open SQL、Conn、1、3
Rs(更新するフィールド名1) = 更新値1
Rs.Update() はデータベースへの変更を更新します
Rs.Close
Rs=何も設定しない
Rs.削除 削除
Set Rs = Server.CreateObject(Adodb.Recordset)
Sql = Select * From Tealename Where id = 1 'ID 1 のデータを削除します
Rs.Open SQL、Conn、1、3
Rs.Delete() '現在のレコードを削除しますが、ポインタは下に移動しないので、複数のデータを削除したい場合はループを使用する必要があります
Rs.Close
Rs=何も設定しない
2 つの主要なデータベース操作オブジェクトのプロパティに関する講義は完了です。