免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 24221 | 回复: 18
打印 上一主题 下一主题

[应用] boa+cgi+sqlite3【基于web的数据采集并动态显示】 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-04-23 10:25 |只看该作者 |倒序浏览
开发板是TQ2440,linux系统
移植了boa,sqlite3,cgic
现在,应用程序每秒钟,将采集的数据如温度、湿度等,写入到数据库。
问题:用cgi,如何动态显示所产生的温度、湿度。【不要用刷新】
刷新的已经实现
能不能用ajax技术,不知道boa服务器是否支持、一下贴出我刷新实现的源码
希望高手帮忙

评分

参与人数 1可用积分 +5 收起 理由
embeddedlwp + 5 赞一个!

查看全部评分

论坛徽章:
0
2 [报告]
发表于 2012-04-23 10:26 |只看该作者
cgi代码:

#include <stdio.h>
#include <stdlib.h>
#include <sqlite3.h>

int main()
{
        sqlite3 *pdb=NULL;
        sqlite3_stmt *stmt;
        char *szErrMsg=0;
        int rc,i;
        rc=sqlite3_open("/home/dyh/date.db",&pdb);
        if(rc)
        {
                fprintf(stderr,"can't open database: %s",sqlite3_errmsg(pdb));
                sqlite3_close(pdb);
                return -1;
        }
        printf("Content-type:text/html\n\n");
        printf("<html>\n<head>\n<Meta http-equiv=\"Refresh\" Content=\"1;\"><title>test</title></head>\n<body>\n");
        printf("<h1 align=\"center\">dongtai</h1>\n");
        printf("<table border=\"1\" align=\"center\">\n");
        printf("<tr>\n");
        printf("<th>id</th><th>dev</th><th>wendu</th><th>time</th>\n");
        printf("</tr>\n");

        char sql[512];
        //char *sql="select *from wsd where id=(select max(id)from wsd where dnum=1)";
        int j=1;
        for(;j<=3;j++)
        {
                sprintf(sql,"select *from wsd where id=(select max(id)from wsd where dnum=%d)",j);
                sqlite3_prepare(pdb,sql,-1,&stmt,0);
                //sqlite3_bind_int(stmt,kk,i);
                //sqlite3_bind_int(stmt,1,i);
/*
                rc=sqlite3_column_count(stmt);
                for(i=0;i<rc;i++)
                {
                printf("%s\t",sqlite3_column_name(stmt,i));
                }
                printf("\n");
*/                printf("<tr>\n");
                while(sqlite3_step(stmt)==SQLITE_ROW)
                {
                        printf("<td>%d</td>",sqlite3_column_int(stmt,0));
                        printf("<td>%d</td>",sqlite3_column_int(stmt,1));
                        printf("<td>%.1f</td>",sqlite3_column_double(stmt,2));
                        printf("<td>%s</td>\n",sqlite3_column_text(stmt,3));

                /*
                        for(i=0;i<rc-1;i++)
                        {
                                printf("%d\t",sqlite3_column_int(stmt,i));
                        }
                        printf("%s\n",sqlite3_column_text(stmt,i));
                        //sqlite3_reset(stmt);
                */
                }
                printf("</tr>\n");
        }
        printf("</table>\n</body>\n</html>");
        sqlite3_finalize(stmt);
        sqlite3_close(pdb);
        return 0;
}

论坛徽章:
0
3 [报告]
发表于 2012-04-23 10:33 |只看该作者
现在有程序每秒会向数据库插入数据。用boa服务器,如何动态的显示出插入的数据

论坛徽章:
0
4 [报告]
发表于 2012-04-23 14:11 |只看该作者
LZ,帮你顶下。我正在学习CGI+Boa,我的QQ是297101000.请教你几个问题可以吗?

论坛徽章:
0
5 [报告]
发表于 2012-04-23 22:28 |只看该作者
似乎BOA不支持动态网页

论坛徽章:
0
6 [报告]
发表于 2012-05-03 09:23 |只看该作者
最近查了好多资料,终于实现了,用cgi+ajax技术。

论坛徽章:
1
金牛座
日期:2013-10-29 19:03:17
7 [报告]
发表于 2012-05-04 15:47 |只看该作者
extjs会更好

论坛徽章:
0
8 [报告]
发表于 2012-05-18 17:11 |只看该作者
楼主,能否详细说下,怎么实现动态显示?

论坛徽章:
0
9 [报告]
发表于 2012-05-25 19:55 |只看该作者
对哦,楼主能Share下吗? 如何设计CGI+Ajax来实现实时更新.

论坛徽章:
0
10 [报告]
发表于 2013-03-01 17:30 |只看该作者
可以分享一下吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP