電気宇宙工学研究室



カテゴリ:[ 趣味 ]


3件の内、新着の記事から10件ずつ表示します。


[3] サンプル2

投稿者: R 投稿日:2015年 8月30日(日)23時10分33秒 i180-63-11-211.s41.a021.ap.plala.or.jp  通報   返信・引用

    try {
      return new ActiveXObject("Msxml2.XMLHTTP")
    } catch (e) {
      try {
        new ActiveXObject("Microsoft.XMLHTTP")
      } catch (e2) {
        return null
      }
    }
  } else {
    return null
  }
}

//送信ボタンが押されたときの処理
function send_get() {
  var url = "../cgi-bin/post1.cgi?ID=info&behavior=all&Do=NULL";
  var request = createXMLHttpRequest();
  request.open("GET", url, true);
  request.onreadystatechange = function() {
    if (request.readyState == 4 && request.status == 200) {
      //受信完了時の処理
      var result = document.getElementById("result_get");
      var text = document.createTextNode(decodeURI(request.responseText));
      result.appendChild(text);
    }
  }
  request.send("");
}
//送信ボタンにonclickイベントを追加
window.onload = function() {
  document.getElementById("getbutton").onclick = send_get;
}

  </script>
</head>

<body>

<form>
  <input type="button" name="Submit" value="送信" id="getbutton" />
</form>


</body>
</html>




[2] サンプル

投稿者: R 投稿日:2015年 8月30日(日)21時46分58秒 i180-63-11-211.s41.a021.ap.plala.or.jp  通報   返信・引用

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include <dirent.h>

int get(char *a,char *b ,char *c);
int selector(char *a);
int behavior(char *b);
int Do(char *c, int be);
void info(char *b,char *c);
int list(void);
int opfile(char *name);
int allprint(void);

int main(void)
{
char a[20],b[20],c[20];
int data[3] , inst;

/*printf("ID=");
scanf("%s", a);
printf("behavior=");
scanf("%s", b);
printf("Do=");
scanf("%s", c);*/

get(a,b,c);

/*printf("<HEAD><BODY>");
printf("%s.%s.%s",a,b,c);*/

data[0] = selector(a);
if(data[0] == 100){
info(b,c);
}else{
data[1] = behavior(b);
data[2] = Do(c,data[1]);
inst = data[0]*100000 + data[1] *1000 + data[2];
printf("%d.%d.%d\n",data[0],data[1],data[2]);
printf("%d",inst);
}
//scanf("%s",a);
//printf("</BODY></HEAD>");
return 0 ;

}
int get(char *a,char *b ,char *c)
{
//ID=ID&behavior=behavior&Do=Do
char *str , data[64];
printf("Content-type: text/html\n\n");
str = getenv("QUERY_STRING");
strcpy(data,str);
str = strtok(data,"&" );
sscanf(str,"ID=%s",a);
str = strtok(NULL,"&" );
sscanf(str,"behavior=%s",b);
str = strtok(NULL,"&" );
sscanf(str,"Do=%s",c);
return 0;
}

int selector(char *a)
{
int ans;
if(strcmp(a,"one-object")==0)
ans = 1;
else if(strcmp(a,"two-object")==0)
ans = 2;
else if(strcmp(a,"three-object")==0)
ans = 3;
else if(strcmp(a,"info")==0)
ans = 100;
return ans;

}

int behavior(char *b)
{
int ans;
if(strcmp(b,"power")==0)
ans = 1;
else if(strcmp(b,"temp")==0)
ans = 2;
else if(strcmp(b,"mode")==0)
ans = 3;
return ans;
}

int Do(char *c, int be)
{
int ans ;
if(be==1){
if(strcmp(c,"ON")==0)
ans = 1;
if(strcmp(c,"OFF")==0)
ans = 2;
}else if(be == 2){
sscanf(c,"%d",&ans);
}else if(be == 3){
if(strcmp(c,"cold")==0)
ans = 1;
if(strcmp(c,"hot")==0)
ans = 2;
}
return ans;
}

void info(char *b,char *c)
{
if(strcmp(b,"list")==0){
//printf("リストを表示します\n");
list();
}else if(strcmp(b,"all")==0){
//printf("全てのデータを表示します\n");
allprint();
}else if(strcmp(b,"individual")==0){
//printf("個別のデータを表示します\n");
opfile(c);
}
}

int list(void)
{
const char *path = "./info/";
char name[64];
DIR *dp;       // ディレクトリへのポインタ
struct dirent *entry; // readdir() で返されるエントリーポイント

dp = opendir(path);
if (dp==NULL) exit(1);
do {
entry = readdir(dp);
if (entry != NULL){
if(entry->d_name[0] != '.'){
strcpy(name,entry->d_name);
strtok(name,"." );
printf("%s\n",name);
}
}
} while (entry != NULL);
return 0;
}

int opfile(char *name)
{
FILE *fp;
int c;

char fname[128] = "./info/";
strcat(fname,name);
strcat(fname,".json");


if ((fp = fopen(fname, "r")) != NULL) {
while ((c = fgetc(fp)) != EOF) {
putchar(c);
}
fclose(fp);
} else {
printf("File open error\n");
return (-1);
}
return (0);
}

int allprint(void)
{
const char *path = "./info/";
char name[64];
DIR *dp;       // ディレクトリへのポインタ
struct dirent *entry; // readdir() で返されるエントリーポイント

dp = opendir(path);
if (dp==NULL) exit(1);
do {
entry = readdir(dp);
if (entry != NULL){
if(entry->d_name[0] != '.'){
strcpy(name,entry->d_name);
strtok(name,"." );
opfile(name);
printf("\n");
}
}
} while (entry != NULL);
return 0;
}



[1] 掲示板が完成しましたキラキラ

投稿者: teacup.運営 投稿日:2015年 8月30日(日)21時45分44秒 i180-63-11-211.s41.a021.ap.plala.or.jp  通報   返信・引用

ご利用ありがとうございます。

teacup.掲示板は
ダイヤスレッド作り放題右上
ダイヤ画像・動画・音楽の投稿OK
ダイヤケータイ絵文字が使えるv▽v
ダイヤRSS対応ヒラメイタ!
ダイヤかわいいケータイテンプレハートx2

足跡足あと帳はコチラ
スレッド内容は管理画面内「スレッドの管理」から編集できます。


レンタル掲示板
3件の内、新着の記事から10件ずつ表示します。

お知らせ · よくある質問(FAQ) · お問合せ窓口 · teacup.レンタル掲示板

© GMO Media, Inc.