📄 sort.c
字号:
#include <stdio.h>#include <stdlib.h>#include <sqlite3.h>#include "cgi.h"int rscallback(void *p, int argc, char **argv, char **argvv){ int i; *(int *)p = 0; printf("<tr>"); for(i=0; i<argc; i++) { printf("<td>%s</td>", argv[i]); } printf("</tr>"); putchar('\n'); return 0;} int main(void){cgi_init(); cgi_init_headers(); cgi_process_form(); sqlite3 *db; char *err = 0; int ret = 0; int empty = 1;puts("<html>" "<head><meta http-equiv='Content-Type' content='text/html;charset=utf-8'><title>Redirect example</title>" "</head>" "<body>" " <table border='1' cellspacing='1'><tr><td>Name</td><td>Gender</td><td>ScoreA</td><td>ScoreB</td><td>ScoreC</td><td>Sum</td></tr>" ); ret = sqlite3_open("./test.db", &db); if(ret != SQLITE_OK) { fputs(sqlite3_errmsg(db), stderr); fputs("\n", stderr); exit(1); } ret = sqlite3_exec(db, "select name, gender, scoreA, scoreB, scoreC, scoreA+scoreB+scoreC from student order by scoreA+scoreB+scoreC desc", rscallback, &empty, &err); if(ret != SQLITE_OK) { fputs(err, stderr); fputs("\n", stderr); sqlite3_close(db); exit(1); } if(empty) { fputs("table employee is empty\n", stderr); exit(1); }puts( "</table></form>" "</body>" "</html>"); sqlite3_close(db);cgi_end(); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -