初级会员
- 积分
- 69
- 金钱
- 69
- 注册时间
- 2015-8-20
- 在线时间
- 9 小时
|
5金钱
我在httpd_cgi_ssi.c文件里面定义了几个数组
/**
* 添加的变量
*/
char myLocalIp[15],myNetMask[15],myGW[15];
char myRemoteIp[15],myLocalPort[4],myRemotePort[4];
/*-------------------------------*/
创建了两个CGI函数
#define NUM_CONFIG_CGI_URIS 2
#define NUM_CONFIG_SSI_TAGS 0
const char* MYIP_CGI_Handler(int iIndex, int iNumParams, char *pcParam[], char *pcValue[])
{
u16 i=0;
iIndex = FindCGIParameter("localip",pcParam,iNumParams); //????led???÷????
//????????CGI??±ú iIndex=0
if (iIndex != -1)
{
for (i=0; i<iNumParams; i++) //?ì?éCGI????
{
if (strcmp(pcParam , "localip")==0)
{
strncpy(myLocalIp,pcValue,15);
}
if (strcmp(pcParam , "netmask")==0)
{
strncpy(myNetMask,pcValue,15);
}
if (strcmp(pcParam , "gw")==0)
{
strncpy(myGW,pcValue,15);
}
}
}
return "/index.html"; //LED1??,BEEP??
}
const char *MYREMOTEIP_CGI_Handler(int iIndex,int iNumParams,char *pcParam[],char *pcValue[])
{
u16 i=0;
iIndex = FindCGIParameter("remoteip",pcParam,iNumParams);
if(iIndex != -1)
{
for(i = 0;i < iNumParams;i++)
{
if(strcmp(pcParam,"remoteip") == 0)
{
strncpy(myRemoteIp,pcValue,15);
}
if(strcmp(pcParam,"localport") == 0)
{
strncpy(myLocalPort,pcValue,4);
}
if(strcmp(pcParam,"remoteport") == 0)
{
strncpy(myRemotePort,pcValue,4);
}
}
}
return "/index.html";
}
我定义的六个数组(全局变量)只在这两个函数里面用过,然后我进入网页对相应的表单写入数据,写入数据成功了,在debug模式下看的数据,不过过了大约30s后,我定义的数组全部被刷新为0,我不知道在哪被刷新的,当时认为程序再次进入了这个CGI服务函数,不过在这设置了断点,我用网页填入数据后,就再也没进来过。求大神指点。
|
|