⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 http_cgi.c

📁 web_based.rar
💻 C
📖 第 1 页 / 共 3 页
字号:
         if (g_ucLineCntr < 20 && !g_ucListOver ) {
            /* Hi bit is a repeat flag. */
            len |= 0x8000;
         }
         break;
	

      case 'd':
				 ReadConfig ( CONFIG_PAGE_NO, CONFIG_PAGE_START, (INT8U *)&NtwkCfg, sizeof(NtwkCfg) );
         switch (env[2]) {
  	      case '1':
               break;
          case '2':
//					if ((len + 150) < buflen)	
         	      len = sprintf((S8 *)buf,(const S8 *)&env[4],http_auth_passw);
               break;
          case '3':
//					if ((len + 150) < buflen)	
      	         len = sprintf((S8 *)buf,(const S8 *)&env[4],NtwkCfg.uiTID);
               break;
          case '4':
						#ifdef MAIN_APPLIC
		          if ( NtwkCfg.ucReadEmpCodeFlag == 1 )
							  len = sprintf((S8 *)buf,(const S8 *)&env[4], "", "selected" );
							else 
			          len = sprintf((S8 *)buf,(const S8 *)&env[4], "selected", "" );
						#endif
						#ifdef BIO_APPLIC
							  len = sprintf((S8 *)buf,(const S8 *)&env[4], "", "selected" );
						#endif
						break;
          case '5':
						#ifdef MAIN_APPLIC
		          if ( NtwkCfg.ucDisplayModeFlag == 1 )
			          len = sprintf((S8 *)buf,(const S8 *)&env[4], "selected", "" );
							else 
			          len = sprintf((S8 *)buf,(const S8 *)&env[4], "", "selected" );
						#endif
						#ifdef BIO_APPLIC
			          len = sprintf((S8 *)buf,(const S8 *)&env[4], "selected", "" );
						#endif
	          break;
          case '6':
	          if ( NtwkCfg.ucReaderFormat == 35 )
		          len = sprintf((S8 *)buf,(const S8 *)&env[4], "selected", "" );
						else
		          len = sprintf((S8 *)buf,(const S8 *)&env[4], "", "selected" );
						break;
        	}
        break;
	  case 'e':
			if ( MYBUF(pcgi)->xcnt == 0 )
			{
				g_ucLineCntr = 0;
				MYBUF(pcgi)->xcnt++;
				if ( g_ucListOver )
				{
					g_uiPageCounter = g_uiPageAddr[g_uiPageNo];
					if ( (g_uiListCounter % 20) == 0 )
					{ 
						if ( g_uiListCounter > 20 )
							g_uiListCounter -= (20 + 20);
						else
							g_uiListCounter = 0;
					}
					else
					{
						if ( g_uiListCounter > 20 )
							g_uiListCounter -= ((g_uiListCounter % 20) + 20);	
						else
							g_uiListCounter = 0;
					}
				}
				else
				{
					g_uiPageNo++;
					g_uiPageAddr[g_uiPageNo] = g_uiPageCounter;
				}
			}
			ProfCntr = g_uiPageCounter;
         /* User List View - file 'usrview.cgi' */
         while ((len + 150) < buflen) {
				if ( USERCOUNT == 0 )
				{
					g_ucListOver = 1;
					break;
				}
				if ( UserList[ProfCntr] )
				{
					ReadConfig ( (PROFILE_START_PAGE + (ProfCntr/10)), ((ProfCntr%10) * sizeof(UserConfig)), (INT8U *)&UserConfig, sizeof(UserConfig) ); 
            	g_ucLineCntr++;
					g_uiListCounter++;
					GetExpiryDate ( (INT8U *)&UserConfig.ucExpiryDate, ucaTempDate ); 
            	/* 'sprintf' format string is defined here. */
            	len += sprintf((S8 *)(buf+len),"<tr align=\"center\">");
            	len += sprintf ((S8 *)(buf+len),
                           "<td>%d</td><td>%s</td><td>%s</td><td>%s</td>"
                           "<td>%x</td><td>%d</td><td>%d</td><td>%s</td></tr>\r\n",
                           g_uiListCounter, (INT8U *)&UserConfig.ucFname, (INT8U *)&UserConfig.ucLname,
                           (INT8U *)&UserConfig.ucDept, UserConfig.ulCardNo,
                           UserConfig.ucTimezone1, UserConfig.ucTimezone2,
                           ucaTempDate);
            	}
				ProfCntr++;
            /* Repeat for all User Profiles. */
            if (g_ucLineCntr >= 20) {
               break;
            }
            if (g_uiListCounter >= USERCOUNT) {
					g_ucListOver = 1;
               break;
            }
				if ( ProfCntr >= USER_LIST_SIZE ){
					g_ucListOver = 1;
					break;
				}
         }
			g_uiPageCounter = ProfCntr;
         	if (g_ucLineCntr < 20 && !g_ucListOver) {
            /* Hi bit is a repeat flag. */
            len |= 0x8000;
         }
         break;

      case 'f':
			if ( MYBUF(pcgi)->xcnt == 0)
			{
				g_ucLineCntr = 0;
				MYBUF(pcgi)->xcnt++;
				if ( g_uiPageNo > 0 )
				{
					g_uiPageNo--;
					if ( (g_uiListCounter % 20) == 0 )
					{ 
						if ( g_uiListCounter > 20 )
							g_uiListCounter -= (20 + 20);
						else
							g_uiListCounter = 0;
					}
					else
					{
						if ( g_uiListCounter > 20 )
							g_uiListCounter -= ((g_uiListCounter % 20) + 20);	
						else
							g_uiListCounter = 0;
					}
				}
				else
				{
					g_uiListCounter = 0;
				}			
				ProfCntr = g_uiPageAddr[g_uiPageNo];
			}
			else
				ProfCntr = g_uiPageCounter;
         /* User List View - file 'usrview.cgi' */
         while ((len + 150) < buflen) {
				if ( USERCOUNT == 0 )
				{
					g_ucListOver = 1;
					break;
				}
				if ( UserList[ProfCntr] )
				{
					ReadConfig ( (PROFILE_START_PAGE + (ProfCntr/10)), ((ProfCntr%10) * sizeof(UserConfig)), (INT8U *)&UserConfig, sizeof(UserConfig) ); 
            		g_ucLineCntr++;
					g_uiListCounter++;
					GetExpiryDate ( (INT8U *)&UserConfig.ucExpiryDate, ucaTempDate ); 
            		/* 'sprintf' format string is defined here. */
            		len += sprintf((S8 *)(buf+len),"<tr align=\"center\">");
            		len += sprintf ((S8 *)(buf+len),
                           "<td>%d</td><td>%s</td><td>%s</td><td>%s</td>"
                           "<td>%x</td><td>%d</td><td>%d</td><td>%s</td></tr>\r\n",
                           g_uiListCounter, (INT8U *)&UserConfig.ucFname, (INT8U *)&UserConfig.ucLname,
                           (INT8U *)&UserConfig.ucDept, UserConfig.ulCardNo,
                           UserConfig.ucTimezone1, UserConfig.ucTimezone2,
                           ucaTempDate);
            	}
				ProfCntr++;
            	/* Repeat for all User Profiles. */
            	if (g_ucLineCntr >= 20) {
            break;
            }
            if (g_uiListCounter >= USERCOUNT) {
					g_ucListOver = 1;
               break;
            }
				if ( ProfCntr >= USER_LIST_SIZE ) {
					g_ucListOver = 1;
					break;
				}
         }
			g_uiPageCounter = ProfCntr;
         if ( g_ucLineCntr < 20 && !g_ucListOver ) {
            /* Hi bit is a repeat flag. */
            len |= 0x8000;
         }
         break;
	  
	  case 'l':
			if ( g_ucModifyProfile == 0 )
				memset ( (INT8U *)&UserConfig, 0, sizeof(UserConfig) );
         /* User Configuration file -> 'usrcfg.cgi' */
			if (env[2] == 'f') {
						/* First Name */
            len = sprintf((S8 *)buf,(const S8 *)&env[4], UserConfig.ucFname );
            break;
         }
			else if (env[2] == 'm') {
						/* Middle Name */
            len = sprintf((S8 *)buf,(const S8 *)&env[4], UserConfig.ucMname );
            break;
         }
			else if (env[2] == 'l') {
						/* Last Name */
            len = sprintf((S8 *)buf,(const S8 *)&env[4], UserConfig.ucLname );
            break;
         }
			else if (env[2] == 'd') {
						/* Department */
            len = sprintf((S8 *)buf,(const S8 *)&env[4], UserConfig.ucDept );
            break;
         }
			else if (env[2] == 'c') {
						/* Card Number in ASCII */
						GetCardNo( (INT8U *)CardNo );
            len = sprintf((S8 *)buf, (const S8 *)&env[4], CardNo );
            break;
         }
			else if (env[2] == '1') {
						/* First Timezone */
            len = sprintf((S8 *)buf,(const S8 *)&env[4], UserConfig.ucTimezone1 );
            break;
         }
			else if (env[2] == '2') {
						/* Second Timezone */
            len = sprintf((S8 *)buf,(const S8 *)&env[4], UserConfig.ucTimezone2 );
            break;
         }
			else if (env[2] == 't') {
					/* Card Expiry Date */
					GetExpiryDate ( (INT8U *)&UserConfig.ucExpiryDate, ucaTempDate );
	            len = sprintf((S8 *)buf,(const S8 *)&env[4], ucaTempDate );
					g_ucModifyProfile = 0;
	            break;
         }
			break;

			case 'u' :
			           /*g_uiAllEventsCount*/			 
			 if(g_uiAllEventsCount)
			{			    
		    len += sprintf((S8 *)(buf+len),"<tr align=\"center\">");
            len += sprintf ((S8 *)(buf+len),"</td><td><H2>%s</td><td>%d</H2></td></tr>\r\n",
            "DOWNLOAD ALL RECORDS BEFORE FILE UPLOAD:",g_uiAllEventsCount);
			
			U0sendchar('a'); 
			 }
			else
			 {
			 //len += sprintf((S8 *)(buf+len),"<tr align=\"center\">");
			 len += sprintf ((S8 *)(buf+len),"<H3>%s</H3></br>\r\n",
                                             "SELECT BIN FILE TO UPLOAD");
			 len += sprintf ((S8 *)(buf+len),"%s","<form\r\n method=\"post\" ENCTYPE=\"multipart/form-data\"name=\"udit\">");
			 len += sprintf ((S8 *)(buf+len),"%s","<input type=\"file\" name=\"fileField\" size=\"chars\"/><br><br>\r\n");
			 len += sprintf ((S8 *)(buf+len),"%s","<input type=\"Submit\" name=\"UPLOAD\" value=\"UPLOAD\"onClick=\"a();\"/><br><br>\r\n");			 
			 len += sprintf ((S8 *)(buf+len),"%s","</form>\r\n");

			 if(g_ucWebevent == 1)
				{	 
				      len += sprintf((S8 *)(buf+len),"<tr align=\"center\">");
            	        len += sprintf ((S8 *)(buf+len),
                           "<td><H4><font color=\"RoyalBlue\">%s</H4></font></td></tr>\r\n",
                           "STATUS :");
					 
					  if(g_ucNoFile)
					   {
					    len += sprintf((S8 *)(buf+len),"<tr align=\"center\">");
            	        len += sprintf ((S8 *)(buf+len),
                           "<td><H2><font color=\"Red\">%s</font></H2></td></tr>\r\n",
                           "No file selected!");
						 
						 g_ucNoFile = 0;
						}
					  	    					 
					  else if(g_ucSigFail)
					   {
					    len += sprintf((S8 *)(buf+len),"<tr align=\"center\">");
            	        len += sprintf ((S8 *)(buf+len),
                           "<td><H2><font color=\"Red\">%s</font></H2></td></tr>\r\n",
                           "FIRMWARE SIGNATURE ERROR");
						   U0sendchar('b');
						  g_ucSigFail = 0;
					    }
						else if(!g_ucChksumFlag)
					   {
					    len += sprintf((S8 *)(buf+len),"<tr align=\"center\">");
            	        len += sprintf ((S8 *)(buf+len),
                           "<td><H2><font color=\"red\">%s</font></H2></td></tr>\r\n",
                           "CHECKSUM MISMATCH ERROR");	
						   U0sendchar('c');				    
						
						}
						else
						{
						 len += sprintf((S8 *)(buf+len),"<tr align=\"center\">");
            	        len += sprintf ((S8 *)(buf+len),
                           "<td><H2>%s</H2></td></tr>\r\n",
                           "FIRMWARE UPLOAD COMPLETE");
						   U0sendchar('d');
						 }		    

			// len += sprintf ((S8 *)(buf+len),"%s","<TR><TD>&nbsp;&nbsp;<INPUT TYPE=BUTTON VALUE=\"Home\" OnClick=\"location='/index.htm'\" size=\"20\"></TD></TR>\r\n");			  			          
			 		   }
					    g_ucWebevent = 0;
						break;   
					}}	 					   							       
  			 return ((U16)len);
}

/*----------------------------------------------------------------------------
 * end of file
 *---------------------------------------------------------------------------*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -