嵌入式web配置示例
index.html
<html>
<head>
<!--<meta http-equiv="Content-Type" content="text/html; charset=gb2312">-->
<meta http-equiv="Content-Type" content="text/html; charset=utf8">
<title>嵌入式网页配置示例</title>
<script type="text/javascript">
function validate_passwd(field,alerttxt)
{
with (field)
{
apos=value.indexOf("@")
dotpos=value.lastIndexOf(".")
if (value != '123')
{
alert(alerttxt);
return false
}
else
{
return true
}
}
}
function validate_form(thisform)
{
with (thisform)
{
if (validate_passwd(passwd,"密码错误!")==false)
{
passwd.focus();
return false
}
}
}
</script>
<body>
<pre>
<center>
<h1>嵌入式网页配置示例</h1>
<form action="./cgi-bin/read.cgi" οnsubmit="return validate_form(this);" method="post">
请输入密码:<input type="password" name="passwd" > <input type="submit" value="提交">
</form>
</center>
</pre>
</body>
</html>
read.c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include "libini.h"
char local_mac[32] = "00:01:02:03:04:05";
char local_ip[32] = "0.0.0.0";
char yealink_report_server[32] = "0.0.0.0";
char server_ip[32] = "0.0.0.0";
char number[32] = "0000";
char password[32] = "0000";
void read_rclocal(void)
{
FILE *fp;
// fp = fopen("./cgi-bin/rc.local", "rt");
fp = fopen("/home/bin/rc.local", "rt");
if (fp != NULL)
{
char buffer[256];
memset(buffer, 0, sizeof(buffer));
fread(buffer, 1, sizeof(buffer), fp);
//printf("buffer = %s\n", buffer);
{ // 读mac地址
char *p;
char *p2;
p = strtok(buffer, "\n");
//printf("p = %s\n", p);
p = strtok(NULL, "\n");
//printf("p = %s\n", p);
// mac地址行
p2 = strtok(p, " ");
//printf("p2 = %s\n", p2);
p2 = strtok(NULL, " ");
//printf("p2 = %s\n", p2);
p2 = strtok(NULL, " ");
//printf("p2 = %s\n", p2);
p2 = strtok(NULL, " ");
//printf("p2 = %s\n", p2);
p2 = strtok(NULL, "\n");
//printf("p2 = %s\n", p2);
if (p2 != NULL && local_mac != NULL)
{
memset(local_mac, 0, sizeof(local_mac));
strcpy(local_mac, p2);
//printf("local_mac = %s\n", local_mac);
}
}
{ // 读local_ip
char *p;
char *p2;
memset(buffer, 0, sizeof(buffer));
fseek(fp, 0, SEEK_SET);