用Oracle存储过程和Oracle WebServer制作动态站点

2/9/2008来源:Oracle教程人气:5486


  create or replace PROCEDURE xj_homepage   (cols IN owa_util.ident_arr)   IS
     col_counter INTEGER;      counter INTEGER;     ID CHAR(2);     CURSOR C1 IS
    select PRIVELEGE_TABLE     from previlege_range    where PRIVELEGE_ID = ID;
     cPRIVELEGE_TABLE C1%ROWTYPE;BEGIN    htp.Htmlopen;    htp.headopen;
   htp.title('主页');    htp.headclose;    htp.bodyopen;    htp.line;
   htp.img('/ows-img/ows.gif');    htp.header(1, '主页');    htp.line;
   htp.paragraph;
   select count(*) into counter from user_define where USER_ID = cols(2) and USER_PASS = cols(3);
   if (counter > 0) then
    select PRIVELEGE_ID into ID from user_define where USER_ID = cols(2) and USER_PASS = cols(3);
    htp.print(' 您的权限:' ID);       
    htp.formOpen(owa_util.get_owa_service_path 'xj_resurlts') ;
    htp.formhidden('COLS','dummy');       
    htp.formSelectOpen('COLS','选择查询表:') ;       open C1;    loop
        fetch C1 into cPRIVELEGE_TABLE;        EXIT WHEN C1%NOTFOUND;
        htp.formSelectOption(cPRIVELEGE_TABLE.PRIVELEGE_TABLE);       end loop;
    close C1;       htp.formSelectClose;       htp.paragraph;

       htp.formsubmit(NULL,'确认');    htp.formClose;   else
    htp.print(' 您输入的标识符:' cols(2));    htp.paragraph;
        htp.print(' 您输入的口令:' cols(3));        htp.paragraph;
    htp.print('用户标识符或口令错!请返回登录窗口。') ;    htp.paragraph;   end if;    
      htp.anchor('http://www.sql.com.cn','sql 技术站点');       htp.line;
      htp.address('(c)1998 豆腐制作');       htp.bodyclose;       htp.HTMLclose;
END;  来自: asp专区