首页 > 数据库技术 > 详细

oracle URL参数获取

时间:2014-03-26 10:00:38      阅读:763      评论:0      收藏:0      [点我收藏+]

改函数主要是从URL中获取参数例如 sssss.html?cur=aaa&ref=cccc

调用方式:f_querystr(url,‘cur‘,‘&‘);

bubuko.com,布布扣
CREATE OR REPLACE FUNCTION f_querystr(in_str In Varchar2,in_key varchar2, in_separator In Varchar2)
    RETURN varchar2
    as
    v_keyindex          Number:=0;
    v_sepindex          number:=0;
    v_str        varchar2(4000);
  begin
    v_str:=in_str;
    IF in_str IS NOT NULL
       and in_key is not null
       AND in_separator IS NOT NULL
       and instr(v_str,in_key)<>0
        THEN
      if instr(v_str,in_key)<>0 then
         v_keyindex:=instr(v_str,in_key)+length(in_key)+1;  --KEY的长度加上等号的长度
      end if;

      if in_key=cururl then --特殊处理
        if instr(v_str,ref,v_keyindex-1)<>0 then
           v_sepindex:=instr(v_str,ref,v_keyindex-1)-1;
        else
           v_sepindex:=length(v_str)+1;
        end if;
      elsif in_key<>ref then --特殊处理
        if instr(v_str,in_separator,v_keyindex-1)<>0 then
           v_sepindex:=instr(v_str,in_separator,v_keyindex-1);
        else
           v_sepindex:=length(v_str)+1;
        end if;
      else
          v_sepindex:=length(v_str)+1;
      end if;

      if v_keyindex=v_sepindex then
          return ‘‘;
      else
          if in_key=hot then
            v_str:=substr(v_str,v_keyindex,v_sepindex-v_keyindex);
            v_sepindex:=instr(v_str,_,1);
            if v_sepindex>0 then
               return substr(v_str,0,v_sepindex-1);
            else
               return v_str;
            end if;
         else
           return substr(v_str,v_keyindex,v_sepindex-v_keyindex);
         end if;
      end if;
    END IF;
    return ‘‘;
  end;
bubuko.com,布布扣

oracle URL参数获取,布布扣,bubuko.com

oracle URL参数获取

原文:http://www.cnblogs.com/ringwang/p/3622408.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!