您的位置:首页 > 其它

关联函数返回多个数据时两种方法实现随机选取

2012-09-17 15:11 816 查看
最近带工程师做项目时,发现当关联函数返回多个数据时,不能很好的实现随机选取服务器返回的数据

今天就总结一下 :

方法一:

优点:lr任何版本都能使用,

缺点:需要写的函数比较多

array_len=atoi(lr_eval_string("{css_files_count}"));

srand(time(NULL));

index=rand()%array_len+1;

sprintf(tempStr,"{css_files_%d}",index);

lr_save_string(lr_eval_string(tempStr),"tempStr_Rand");

举例:

web_reg_save_param("css_files",

"LB/IC=link rel=\"stylesheet\"",

"RB/IC=\" >",

"Ord=ALL",

LAST);

web_url("ObjectInspectorServlet_3",

"URL=http://{HostName}:{ServerPort}/opencrx-core-CRX/ObjectInspectorServlet?requestId={RequestId_Reg}&event=6¶meter=xri*%28xri%3A%40openmdx%3Aorg.opencrx.kernel.home1%2Fprovider%2FCRX%2Fsegment%2FStandard%2FuserHome%2Fguest%29",

"TargetFrame=",

"Resource=0",

"RecContentType=text/html",

"Referer=http://{HostName}:{ServerPort}/opencrx-core-CRX/ObjectInspectorServlet?locale=zh_CN?loginFailed=false",

"Snapshot=t8.inf",

"Mode=HTML",

LAST);

array_len=atoi(lr_eval_string("{css_files_count}"));

if(array_len>0){

srand(time(NULL));

index=rand()%array_len+1;

sprintf(tempStr,"{css_files_%d}",index);

lr_save_string(lr_eval_string(tempStr),"tempStr_Rand");


lr_error_message("value=%s",lr_eval_string("{tempStr_Rand}"));

// lr_save_string(lr_eval_string(lr_paramarr_random("css_files")),"cccc");

// lr_error_message(lr_eval_string("{cccc}"));


}

web_submit_data("WorkspacesDashlet.jsp",

"Action=http://{HostName}:{ServerPort}/opencrx-core-CRX/wizards/Dashboard/WorkspacesDashlet.jsp?requestId={RequestId_Dashlet}&event=41¶meter=xri*(xri%3A%2F%2F%40openmdx*org.opencrx.kernel.home1%2Fprovider%2FCRX%2Fsegment%2FStandard%2FuserHome%2Fguest)*id*(WorkspaceDashboardControl.W0.WorkspacesDashlet)",

"Method=POST",

"TargetFrame=",

"RecContentType=text/html",

"Referer=http://{HostName}:{ServerPort}/opencrx-core-CRX/ObjectInspectorServlet?requestId={RequestId_Reg}&event=6¶meter=xri*%28xri%3A%40openmdx%3Aorg.opencrx.kernel.home1%2Fprovider%2FCRX%2Fsegment%2FStandard%2FuserHome%2Fguest%29",

"Snapshot=t9.inf",

"Mode=HTML",

ITEMDATA,

LAST);

方法二:

lr_save_string(lr_eval_string(lr_paramarr_random("css_files")),"cccc");

优点:两个重点函数 lr_paramarr_random 和lr_save_string 简单

缺点:适用于lr9版本以上

举例:

web_reg_save_param("css_files",

"LB/IC=link rel=\"stylesheet\"",

"RB/IC=\" >",

"Ord=ALL",

LAST);

web_url("ObjectInspectorServlet_3",

"URL=http://{HostName}:{ServerPort}/opencrx-core-CRX/ObjectInspectorServlet?requestId={RequestId_Reg}&event=6¶meter=xri*%28xri%3A%40openmdx%3Aorg.opencrx.kernel.home1%2Fprovider%2FCRX%2Fsegment%2FStandard%2FuserHome%2Fguest%29",

"TargetFrame=",

"Resource=0",

"RecContentType=text/html",

"Referer=http://{HostName}:{ServerPort}/opencrx-core-CRX/ObjectInspectorServlet?locale=zh_CN?loginFailed=false",

"Snapshot=t8.inf",

"Mode=HTML",

LAST);

array_len=atoi(lr_eval_string("{css_files_count}"));

if(array_len>0){

/*

srand(time(NULL));

index=rand()%array_len+1;

sprintf(tempStr,"{css_files_%d}",index);

lr_save_string(lr_eval_string(tempStr),"tempStr_Rand");

lr_error_message("value=%s",lr_eval_string("{tempStr_Rand}"));

*/

lr_save_string(lr_eval_string(lr_paramarr_random("css_files")),"cccc");

lr_error_message(lr_eval_string("{cccc}"));


}

web_submit_data("WorkspacesDashlet.jsp",

"Action=http://{HostName}:{ServerPort}/opencrx-core-CRX/wizards/Dashboard/WorkspacesDashlet.jsp?requestId={RequestId_Dashlet}&event=41¶meter=xri*(xri%3A%2F%2F%40openmdx*org.opencrx.kernel.home1%2Fprovider%2FCRX%2Fsegment%2FStandard%2FuserHome%2Fguest)*id*(WorkspaceDashboardControl.W0.WorkspacesDashlet)",

"Method=POST",

"TargetFrame=",

"RecContentType=text/html",

"Referer=http://{HostName}:{ServerPort}/opencrx-core-CRX/ObjectInspectorServlet?requestId={RequestId_Reg}&event=6¶meter=xri*%28xri%3A%40openmdx%3Aorg.opencrx.kernel.home1%2Fprovider%2FCRX%2Fsegment%2FStandard%2FuserHome%2Fguest%29",

"Snapshot=t9.inf",

"Mode=HTML",

ITEMDATA,

LAST);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐