Internet數據庫連接器(IDC,Internet Database Connector)介紹

IDC簡介

   Internet數據庫連接器(IDC,Internet Database Connector)技術最早出現於Microsoft Internet Information Server 2.0版本中,Web客戶通過IDC訪問Web服務器上的數據。IDC使用戶通過瀏覽器可以瀏覽服務器上的信息和訪問後臺數據庫。IDC是ISAPI的一個具體實現,利用IDC生成一個從客戶端HTML頁面到服務器端IIS的數據庫操作。它是一個HTTPODBC.DLL(動態連接庫)。

 

   與傳統的CGI技術相比,IDC在一定程度上解決了CGI腳本較慢的訪問速度和使用維護復雜的問題。在CGI技術中,客戶提出請求,服務器把請求寫入初始化文件,進程從初始化文件中讀取查詢並對後臺數據庫執行查詢。進程將後臺數據庫返回數據形式化為HTML字符串,並傳送給服務器。服務器再把HTML串傳送給客戶。可以看出,這樣的流程是復雜緩慢的。特別在網絡擁塞時,CGI的速度會另人難以忍受。

 

IDC工作需求
   IDC要求客戶端有Web瀏覽器。服務器端需安裝各種數據源的ODBC(Open Database Connectivity)驅動,IDC調用相應的ODBC驅動程序來訪問數據庫。在服務器上運行IIS /IDC。

 

IDC工作原理
   IDC使用Internet數據庫連接器(.idc)文件訪問數據庫,用HTML擴展文件(.htx)文件構造輸出Web頁面。Internet數據庫連接器文件指定所要連接的ODBC數據源,HTML擴展文件的名稱和位置,以及要執行SQL語句。HTML擴展文件是服務器對SQL執行結果進行格式化而形成的HTML文件,它將最終結果傳送給用戶。

 

   以下為一個典型的工作流程。客戶端通過瀏覽器向服務器發出請求,同時通過HTTP請求一個IDC文件。服務器接收請求,並調用HTTPODBC.DLL接收該請求的所有參數。HTTPODBC.DLL用IDC文件中的SQL語句對數據源進行各種數據操作,再將結果通過IDC文件中指定的HTX文件傳回給客戶端。

 

IDC執行實例
   IDC執行需要三個ASCII文本文件,HTML文件,IDC文件和HTX文件。HTML文件需保存在INETPUB/WWWROOT/子目錄下,IDC文件和HTX文件需保存在INETPUB/SCRIPTS/子目錄下。可以使用任何文本編輯器對這三種文件進行編輯。服務器中要內裝Windows NT Server 4.0和SQL Server 6.5或以上版本。
下面將通過講解一個實例來說明IDC的程序設計和執行。該實例使用IDC技術完成對服務器後臺數據庫的查詢、添加、修改和刪除。

 

1    建立後臺數據庫
* 啟動Microsoft SQL Server 6.5中的SQL Enterprise Manager。
* 建設備。在Database Devices上擊右鍵,選New Device。
1.出現New Database Device框。輸入設備名、設備存儲地址、設備大小等信息,如設備名為stu95,設備存儲地址為c:\stu95.DAT(缺省),設備大小為1M(缺省)。單擊Create Now。

 

2.出現內容為“The database device was successfully created.”的提示框。單擊確定。在Database Devices下多了一個新建的設備stu95。
* 建數據庫。在Databases上擊右鍵,選New Database。
出現New Database框。輸入數據庫名、數據庫所在設備名、數據庫大小等信息,如數據庫名為stu,數據庫所在設備名為stu95,數據庫大小為1M(缺省)。單擊Create Now。在Databases下多了一個新建的數據庫stu。
* 建表。
1.單擊新建數據庫stu前的“+”號,出現Groups/Users和Objects兩個子目錄。
2.單擊Objects前的“+”號,在Tables上擊右鍵,選New Table。

 

3.出現Manage Tables框。輸入所需的字段。如:
Column Name        Datatype         Size       
name            char             8
age                 int             4(缺省,無法改變)
sex                 char             2
phone            char             12
email            char             50

 

4.單擊保存圖標,出現Specify Table Name框,在New Table Name欄中輸入表名,如people。單擊OK。
2    增加ODBC數據源
* 啟動Windows NT 4.0。
* 開始──設置──控制面板──雙擊ODBC圖標。
* 出現“ODBC數據源”對話框。單擊“係統DSN”按鈕。
* 出現“係統數據源”對話框。單擊“添加”按鈕。
* 出現“添加數據源”對話框。框中選定ODBC驅動程序,如SQL Server,並單擊“確定”。
* 出現專用於驅動程序的對話框,如ODBC SQL Server Setup,輸入數據源的名稱,如CLASS。在Options中輸入後臺數據庫的名稱,如stu。單擊“OK”按鈕,再次顯示“係統數據源”對話框,可以看到新建的數據源CLASS在框內。
* 單擊“確定”按鈕關閉“數據源”對話框。

 

3    編寫HTML文件
HTML文件通常保存在INETPUB/WWWROOT/子目錄下,本例保存了三個HTML文件,class.htm、add.htm和search.htm。其中class.htm為訪問入口,add.htm用於向後臺數據庫stu的people表中添加記錄,search.htm用於查詢後臺數據庫stu的people表中滿足條件的記錄。本例使用Microsoft FrontPage 98設計。下面分別是這三張主頁的HTML代碼。

 

class.htm文件:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<meta name="Microsoft Theme" content="none">
<meta name="Microsoft Border" content="none">
<title>同學通訊錄</title>
</head>
<body bgcolor="#FFFFFF">
<p><big>同學通訊錄:</big></p>
<p> </p>
<p><big><big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<href="search.htm">查詢</a></big></big></p>
<p><big><big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<href="http://misserver/add.htm">添加</a></big></big></p>
</body>
</html>

 

add.htm源文件
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<meta name="Microsoft Border" content="none">
<title>添加記錄</title>
</head>
<body>
<p> </p>
<p>請在下表中填寫相關的信息:</p>
<form method="POST" action="scripts/class/add.idc">
<table border="1" cellpadding="0" width="100%">
<tr>
<td width="50%"><div align="right"><p>姓名:</td>
<td width="50%"><input type="text" name="txtname" size="20"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>年齡:</td>
<td width="50%"><input type="text" name="txtage" size="2"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>性別:</td>
<td width="50%"><input type="radio" value="男" checked name="gender"><input
type="radio" name="gender" value="女"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>電話:</td>
<td width="50%"><input type="text" name="txtphone" size="20"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>Email:</td>
<td width="50%"><input type="text" name="txtemail" size="20"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p><input type="submit" value="添加" name="cmdadd"></td>
<td width="50%"><input type="reset" value="清除" name="cmdclear"></td>
</tr>
</table>
</form>
<p><href="class.htm">返回</a></p>
</body>
</html>

 

search.htm文件

<html>
<head>
<title>同學通訊錄</title>
</head>
<body bgcolor="#FFFFFF">
<form method="POST" action="/scripts/class/search.idc">
<p>輸入您想查詢的同學姓名:</p>
<p><input type="text" name="txtname" size="20"><input type="submit" value="開始"
name
="B1"><input type="reset" value="清除" name="B2"></p>
</form>
<p><href="class.htm">返回</a></p>
</body>
</html>

 

4    編寫IDC文件
   IDC文件應保存在INETPUB/SCRIPTS/子目錄下,可以在此目錄下進一步建立子目錄,本例在INETPUB/SCRIPTS/CLASS/子目錄下保存了四個IDC文件,add.idc、edit.idc|、delete.idc和search.idc。分別完成前臺網頁與後臺數據庫的記錄增加、記錄修改、記錄刪除和記錄檢索的功能。本例使用記事本設計,但保存時應存為後綴是.idc的文件。
示例.idc文件中數據源的名稱(Datasource)為“CLASS”。用戶名(Username)為sa、密碼(Password)未設,來保證到ODBC數據源的有效登錄,通常sa權限最高,它為係統默認的管理員。TEMPLATE模板指定用於輸出結果的相應HTX文件。SQL Statement是要執行的SQL語句。本例中四個SQL語句是從stu數據庫people表中選取NAME、AGE、SEX、PHONE、EMAIL字段,IDC對數據庫中的數據進行增加、修改、刪除和檢索等操作,並將結果通過相應的HTML擴展文件(.htx)輸出。
下面分別是這四個文件的代碼。
add.idc文件:

Datasource:class
Username:sa
Password:
Template:add.htx
SQLStatement:
+INSERT INTO people(NAME,AGE, SEX, PHONE, email)
+VALUES('%txtname%',convert(int,'%txtage%'),'%gender%',
+'%txtphone%','%txtemail%')

 

edit.idc|文件:

Datasource:class
Username:sa
Password:
Template:edit.htx
SQLStatement:
+UPDATE people
+SET NAME='%txtname%',AGE=convert(int,'%txtage%'),
+SEX='%gender%',
+PHONE='%txtphone%', email='%txtemail%'
+WHERE (name='%hidname%')
+AND(age=convert(int,'%hidage%'))
+AND(sex='%hidgender%')
+AND(phone='%hidphone%')
+AND(email='%hidemail%')

 

delete.idc文件:

Datasource:class
Username:sa
Password:
Template:delete.htx
SQLStatement:
+DELETE FROM people
+WHERE (name='%hidname%')
+AND(age=convert(int,'%hidage%'))
+AND(sex='%hidgender%')
+AND(phone='%hidphone%')
+AND(email='%hidemail%')

 

search.idc文件:

Datasource:class
Username:sa
Password:
Template:search.htx
SQLStatement:
+SELECT NAME,AGE, SEX, PHONE, email
+from stu.DBO.people
+where name='%txtname%'

 

5    編寫HTX文件
   HTX文件應保存在INETPUB/SCRIPTS/子目錄下,可以在此目錄下進一步建立子目錄,本例在INETPUB/SCRIPTS/CLASS/子目錄下保存了四個HTX文件,add.htx、edit.htx|、delete.htx和search.htx。.htx文件是含有以〈%%〉或〈!--%%--〉括起來的特殊標志的HTML文檔,將返回的數據格式化。文件中用Begindetail...enddetail、if...else...endif來控制取自數據庫的數據,並用一定的HTML格式返回結果。並用隱藏表技術來標識相關的網頁。 本示例用Microsoft FrontPage 98編寫。
下面分別是這四個文件的代碼。

 

add.htx文件:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<meta name="Microsoft Border" content="none">
<title>添加結果</title>
</head>
<body>
<p> </p>
<p>下面的信息是您剛添加到庫中的:</p>
<p> </p>
<form method="POST" action="edit.idc">
<input type="hidden" name="hidage" value="<%idc.txtage%>"><input type="hidden"
name
="hidemail" value="<%idc.txtemail%>"><input type="hidden" name="hidgender"
value
="<%idc.gender%>"><input type="hidden" name="hidname" value="<%idc.txtname%>"><input
type="hidden" name="hidphone" value="<%idc.txtphone%>"><table border="1" cellpadding="0"
width
="100%">
<tr>
<td width="50%"><div align="right"><p>姓名:</td>
<td width="50%"><input type="text" name="txtname" size="20" value="<%idc.txtname%>"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>年齡:</td>
<td width="50%"><input type="text" name="txtage" size="20" value="<%idc.txtage%>"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>性別:</td>
<td width="50%"><input type="text" name="gender" size="20" value="<%idc.gender%>"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>電話:</td>
<td width="50%"><input type="text" name="txtphone" size="20" value="<%idc.txtphone%>"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>Email:</td>
<td width="50%"><input type="text" name="txtemail" size="20" value="<%idc.txtemail%>"></td>
</tr>
<tr>
<td width="100%" colspan="2">nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input type="submit" value="修改" name="cmdedit"></td>
</tr>
</table>
</form>

<form action="delete.idc" method="POST">
<input type="hidden" name="hidage" value="<%idc.txtage%>"><input type="hidden"
name
="hidemail" value="<%idc.txtemail%>"><input type="hidden" name="hidgender"
value
="<%idc.gender%>"><input type="hidden" name="hidname" value="<%idc.txtname%>"><input
type="hidden" name="hidphone" value="<%idc.txtphone%>"><table width="528">
<tr>
<td width="528"><div align="left"><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input type="submit" value="刪除" name="cmddelete"></td>
</tr>
</table>
</form>
</body>
</html>


edit.htx|文件:

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>記錄已修改成功</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<meta name="Microsoft Theme" content="none">
<meta name="Microsoft Border" content="none">
</head>

<body>
<p>記錄已修改成功!<href="http://misserver/class.htm">返回</a></p>
</body>
</html>


delete.htx文件:

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>記錄已刪除成功</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<meta name="Microsoft Theme" content="none">
<meta name="Microsoft Border" content="none">
</head>

<body>
<p>記錄已刪除成功!<href="http://misserver/class.htm">返回</a></p>
<p> </p>
</body>
</html>


search.htx文件:

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="Microsoft Border" content="tl, default">
<title>查詢結果</title>
<meta name="Microsoft Theme" content="none">
</head>

<body bgcolor="#FFFFFF">
<%if idc.txtname eq ""%>
<h2>通訊錄中</h2>
<%else%>
<h2>通訊錄中含<i> <%idc.txtname%> </i>字樣的查詢結果為</h2>
<%endif%>
<table border="1" cellpaddint="10">
<%begindetail%><%if CurrentRecord eq 0%> <caption>查詢結果:</caption>
<tr>
<td><b>姓名</b> </td>
<td><b>年齡</b></td>
<td><b>性別</b></td>
<td><b>電話</b></td>
<td><b>Email</b></td>
</tr>
<%endif%> <tr>
<td><%name%>
</td>
<td align="right"><%age%>
</td>
<td><%sex%>
</td>
<td><%phone%>
</td>
<td><%email%>
</td>
</tr>
<%enddetail%></table>
<%if CurrentRecord eq 0%><i><b>

<p></b></i><em><font color="#0000FF"><strong><big>沒有含<%idc.txtname%>的記錄,請重新檢索</big></strong><b></b></font>
</em></p>
<%endif%>
<p><href="http://misserver/search.htm">返回</a></p>
</body>
</html>

 

6  調試
可在服務器和客戶機上分別調試。

服務器:
* 打開資源管理器,雙擊INETPUB/WWWROOT/下的class.htm。
* 出現“同學通訊錄”頁面,如果此時數據庫中沒有記錄,我們可先進行添加,然後再進行檢索。

客戶機:
* 在任何一臺與服務器相連的計算機中,打開瀏覽器,如Internet Explorer。
* 在URL中打入HTTP://202.112.80.222/class.htm(服務器的IP地址為202.112.80.222或輸入服務器名)。
* 出現“同學通訊錄”頁面。

class.htm文件:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<meta name="Microsoft Theme" content="none">
<meta name="Microsoft Border" content="none">
<title>同學通訊錄</title>
</head>
<body bgcolor="#FFFFFF">
<p><big>同學通訊錄:</big></p>
<p> </p>
<p><big><big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<href="search.htm">查詢</a></big></big></p>
<p><big><big>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<href="http://misserver/add.htm">添加</a></big></big></p>
</body>
</html>

 

 

add.htm源文件

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<meta name="Microsoft Border" content="none">
<title>添加記錄</title>
</head>
<body>
<p> </p>
<p>請在下表中填寫相關的信息:</p>
<form method="POST" action="scripts/class/add.idc">
<table border="1" cellpadding="0" width="100%">
<tr>
<td width="50%"><div align="right"><p>姓名:</td>
<td width="50%"><input type="text" name="txtname" size="20"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>年齡:</td>
<td width="50%"><input type="text" name="txtage" size="2"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>性別:</td>
<td width="50%"><input type="radio" value="男" checked name="gender"><input
type="radio" name="gender" value="女"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>電話:</td>
<td width="50%"><input type="text" name="txtphone" size="20"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>Email:</td>
<td width="50%"><input type="text" name="txtemail" size="20"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p><input type="submit" value="添加" name="cmdadd"></td>
<td width="50%"><input type="reset" value="清除" name="cmdclear"></td>
</tr>
</table>
</form>
<p><href="class.htm">返回</a></p>
</body>
</html>

 

search.htm文件

<html>
<head>
<title>同學通訊錄</title>
</head>
<body bgcolor="#FFFFFF">
<form method="POST" action="/scripts/class/search.idc">
<p>輸入您想查詢的同學姓名:</p>
<p><input type="text" name="txtname" size="20"><input type="submit" value="開始"
name
="B1"><input type="reset" value="清除" name="B2"></p>
</form>
<p><href="class.htm">返回</a></p>
</body>
</html>

 

4 編寫IDC文件
   IDC文件應保存在INETPUB/SCRIPTS/子目錄下,可以在此目錄下進一步建立子目錄,本例在INETPUB/SCRIPTS/CLASS/子目錄下保存了四個IDC文件,add.idc、edit.idc|、delete.idc和search.idc。分別完成前臺網頁與後臺數據庫的記錄增加、記錄修改、記錄刪除和記錄檢索的功能。本例使用記事本設計,但保存時應存為後綴是.idc的文件。

 

   示例.idc文件中數據源的名稱(Datasource)為“CLASS”。用戶名(Username)為sa、密碼(Password)未設,來保證到ODBC數據源的有效登錄,通常sa權限最高,它為係統默認的管理員。TEMPLATE模板指定用於輸出結果的相應HTX文件。SQL Statement是要執行的SQL語句。本例中四個SQL語句是從stu數據庫people表中選取NAME、AGE、SEX、PHONE、EMAIL字段,IDC對數據庫中的數據進行增加、修改、刪除和檢索等操作,並將結果通過相應的HTML擴展文件(.htx)輸出。
下面分別是這四個文件的代碼。
add.idc文件:
Datasource:class
Username:sa
Password:
Template:add.htx
SQLStatement:
+INSERT INTO people(NAME,AGE, SEX, PHONE, email)
+VALUES('%txtname%',convert(int,'%txtage%'),'%gender%',
+'%txtphone%','%txtemail%')

 

edit.idc|文件:
Datasource:class
Username:sa
Password:
Template:edit.htx
SQLStatement:
+UPDATE people
+SET NAME='%txtname%',AGE=convert(int,'%txtage%'),
+SEX='%gender%',
+PHONE='%txtphone%', email='%txtemail%'
+WHERE (name='%hidname%')
+AND(age=convert(int,'%hidage%'))
+AND(sex='%hidgender%')
+AND(phone='%hidphone%')
+AND(email='%hidemail%')

 

delete.idc文件:
Datasource:class
Username:sa
Password:
Template:delete.htx
SQLStatement:
+DELETE FROM people
+WHERE (name='%hidname%')
+AND(age=convert(int,'%hidage%'))
+AND(sex='%hidgender%')
+AND(phone='%hidphone%')
+AND(email='%hidemail%')

 

search.idc文件:
Datasource:class
Username:sa
Password:
Template:search.htx
SQLStatement:
+SELECT NAME,AGE, SEX, PHONE, email
+from stu.DBO.people
+where name='%txtname%'

 

5 編寫HTX文件
   HTX文件應保存在INETPUB/SCRIPTS/子目錄下,可以在此目錄下進一步建立子目錄,本例在INETPUB/SCRIPTS/CLASS/子目錄下保存了四個HTX文件,add.htx、edit.htx|、delete.htx和search.htx。.htx文件是含有以〈%%〉或〈!--%%--〉括起來的特殊標志的HTML文檔,將返回的數據格式化。文件中用Begindetail...enddetail、if...else...endif來控制取自數據庫的數據,並用一定的HTML格式返回結果。並用隱藏表技術來標識相關的網頁。 本示例用Microsoft FrontPage 98編寫。
下面分別是這四個文件的代碼。
add.htx文件:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<meta name="Microsoft Border" content="none">
<title>添加結果</title>
</head>
<body>
<p> </p>
<p>下面的信息是您剛添加到庫中的:</p>
<p> </p>

 

<form method="POST" action="edit.idc">
<input type="hidden" name="hidage" value="<%idc.txtage%>"><input type="hidden"
name="hidemail" value="<%idc.txtemail%>"><input type="hidden" name="hidgender"
value="<%idc.gender%>"><input type="hidden" name="hidname" value="<%idc.txtname%>"><input
type="hidden" name="hidphone" value="<%idc.txtphone%>"><table border="1" cellpadding="0"
width="100%">
<tr>
<td width="50%"><div align="right"><p>姓名:</td>
<td width="50%"><input type="text" name="txtname" size="20" value="<%idc.txtname%>"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>年齡:</td>
<td width="50%"><input type="text" name="txtage" size="20" value="<%idc.txtage%>"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>性別:</td>
<td width="50%"><input type="text" name="gender" size="20" value="<%idc.gender%>"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>電話:</td>
<td width="50%"><input type="text" name="txtphone" size="20" value="<%idc.txtphone%>"></td>
</tr>
<tr>
<td width="50%"><div align="right"><p>Email:</td>
<td width="50%"><input type="text" name="txtemail" size="20" value="<%idc.txtemail%>"></td>
</tr>
<tr>
<td width="100%" colspan="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input type="submit" value="修改" name="cmdedit"></td>
</tr>
</table>
</form>

<form action="delete.idc" method="POST">
<input type="hidden" name="hidage" value="<%idc.txtage%>"><input type="hidden"
name="hidemail" value="<%idc.txtemail%>"><input type="hidden" name="hidgender"
value="<%idc.gender%>"><input type="hidden" name="hidname" value="<%idc.txtname%>"><input
type="hidden" name="hidphone" value="<%idc.txtphone%>"><table width="528">
<tr>
<td width="528"><div align="left"><p>

posted @ 2007-10-22 15:52  Athrun  阅读(826)  评论(0编辑  收藏  举报