关闭

CGI编程

91人阅读 评论(0) 收藏 举报
分类:

CGI 可以执行 del mkdir ipconfig 这样的cmd 命令:

////system(temp); //没有重定向,所以没有显示
//
//char cmd[256] = { 0 };
//sprintf(cmd, "%s>cmd.txt", temp);	//打印到文件 cmd.txt中,然后再读出来即可。
//system(cmd);

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<time.h>

void main()
{
	time_t ts;
	unsigned  data = time(&ts);
	srand(data);

	printf("Content-type:text/html\n\n");
	printf("获取网页传递信息:<br>");

	char str[128] = { 0 };
	gets(str);
	//cmd=taskkill&run=%E7%A1%AE%E8%AE%A4
	printf("%s", str);

	//字符串截取
	/*for (int i = 0; i < strlen(str); i++)
	{
		if (str[i] == '&')
		{
			str[i] = '\0';
		}
	}*/

	char *p1 = strchr(str,'&');
	*p1 = '\0';
	char *p2 = strchr(p1 + 1, '&');
	*p2 = '\0';
	printf("<br>%s<br>", p1);

	//这儿使用获得数据,写在服务的文件中,然后再读出数据显示在网页。
	char ptemp[1024] = { 0 };
	int name = rand();
	sprintf(ptemp, "%s %s>%d.txt", str+5, p1+6,name);
	printf("%s<br>", ptemp);
	system(ptemp);	//因为 system 没有重定向功能,所以没办法在网页上显示。

	char filename[256] = { 0 };
	sprintf(filename, "%d.txt", name);

	FILE *pfr = fopen(filename, "r");
	if (pfr == NULL)
	{
		printf("file cant not open");
		return;
	}
	else
	{
		while (!feof(pfr))
		{
			char str[1024] = { 0 };
			fgets(str, 1024, pfr);
			printf("%s<br>", str);//这里是错一个地方都不行... 比如:<br .. 这样就会出错。
		}
	}
	fclose(pfr);


}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:49858次
    • 积分:990
    • 等级:
    • 排名:千里之外
    • 原创:24篇
    • 转载:176篇
    • 译文:0篇
    • 评论:5条
    最新评论