请问各位高手们,Asp中创建的变量,在Delphi中怎么样为其赋值呢?  反过来,Delphi中创建的变量,在Asp中怎么样又怎么样为其赋值???  请各位大哥大姐们帮忙呀...  比如下面的asp代码,用Dim定义的变量,假如在Delphi中怎么为其赋值?<%
Dim SelCountRs,SelCountSQL,NewAccessCount,UpdateCountSet SelCountRs=Server.CreateObject("ADODB.RecordSet")
SelCountSQL="Select * From AccessCount Where  administrator='admin' "
SelCountRs.Open SelCountSQL,Conn,1,1
NewAccessCount=SelCountRs("AccessCount")+1 '取得登陆本站的总人数
UpdateCount="Update AccessCount Set AccessCount="&NewAccessCount&" Where administrator='admin'"
Conn.execute(UpdateCount)Dim isLoginRs,isLoginSQL,LoginCount
Set isLoginRs=Server.CreateObject("ADODB.RecordSet")
isLoginSQL="Select  Count(isLogin) as LoginCount  From Dv_User Where isLogin=true"
isLoginRs.Open isLoginSQL,ConnShop,1,1
LoginCount=isLoginRs("LoginCount")
%>
<table width="100%"  border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td height="20" align="center">本站总访问量: <%=NewAccessCount%> 人次 ┋ 
 当前有  <%=LoginCount%>  人在线</td>
  </tr>
</table>

解决方案 »

  1.   

    用delphi写组件,你要用到什么,就写几个组件,在几个组件里写方法,然后在asp里调用就可以了
      

  2.   

    用ISAPI,通过POST或GET的方法传递数据。
      

  3.   

    能否说的具体点。
    thanks...
      

  4.   

    新建一个WEB SERVER APPLICATION ,然后选择第一个“ISAPI/NSAPI动态连接库”,这样会生成一个WEBMODULE。在这个WEBMODULE里添加两个数据库组件ADOCONNECTION和ADODATASET,以便以后使用数据库的时候来调用他们。在WEBMODULE空白处双击,出现Editing WEBMODULE1.Actions,然后再创建你的动态页面,一个ACTIONS就是一个页面。ACTIONS的属性中DEFAULT是本程序的默认首页,即http://127.0.0.1/project1.dll直接可以访问的页面。PATHINFO属性是当前页的目录,如果PATHINFO=MYWEB,即http://127.0.0.1/project1.dll/MYWEB直接访问该页面。在ACTIONS的ONACTION事件中,request和response相当于ASP中的request和response。Handled为是否激活该页。在ONACTION事件中添加procedure TWebModule1.WebModule1WebActionItem1Action(Sender: TObject;
      Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
    var
      page:tstringlist;
    begin
      page:=tstringlist.Create ;
      
      try
        with page do
          begin
            add('<html>');
            add('<head>');
            add('<title>web application web server--简单ISAPI实例</title>');
            add('</head>');
            add('<body>');
            add('<b>这是由DELPHI创建的动态网页</b><p>');
            add('<hr>');
            add('开来DELPHI下的创建动态网页很简单');
            add('<a href="project1.dll/second?abc=10">abc</a>');
            add('</body>');
            add('</html>');
          end;
        response.Content :=page.Text ;
        finally
          page.Free ;
        end;
        handled:=true;
    end;下面创建第二个ACTIONS,PATHINFO设置为SECOND,并且在ONACTION事件里添加下面代码procedure TWebModule1.WebModule1WebActionItem2Action(Sender: TObject;
      Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
    var
      page:tstringlist;
    begin
      page:=tstringlist.Create ;
      try
        with page do
          begin
            add('<html>');
            add('<head>');
            add('<title>web application web server--简单ISAPI实例</title>');
            add('</head>');
            add('<body>');
            add(Request.QueryFields.Values['abc']);
            add('</body>');
            add('</html>');
          end;
        response.Content :=page.Text;
        finally
          page.Free ;
        end;
        handled:=true;
    end;这样你就可以看到在使用GET方法传递变量的时候,在DELPHI中是怎么得到的了。abc就是一个变量,可以用GET方法得到。POST方法同GET方法差不多,将add(Request.QueryFields.Values['abc']);替换成add(Request.ContentFields.Values['abc']);就可以得到POST传递过来的变量了。至于数据库方面,你可以使用读数据库记录的方法来得到数据并且写到网页上。
    add(ADODataSet1.FieldByName('LoginCount').AsString);其他的连接数据库方面参考其他的文章。在设置IIS的时候需要将执行许可改为“脚本和可执行程序”,这样的话才能运行ISAPI程序。ISAPI是线程级的,所以不用担心对系统的影响。注意:在一个ACTIONS执行完以后要释放所有已经创建的对象,否则会造成内存泄露,IIS会当掉的。