当前位置: 代码迷 >> CGI >> (急)ajax怎么获取cgi的返回值
  详细解决方案

(急)ajax怎么获取cgi的返回值

热度:659   发布时间:2012-03-19 22:03:04.0
(急!!!!)ajax如何获取cgi的返回值
c.c
C/C++ code


#include < stdio.h > 

#include < stdlib.h > 

int main(void) 

{ 

char *data; 

long m,n,num; 

printf("Content-Type:text/html;charset=gb2312\n\n"); 

data = getenv("QUERY_STRING"); 

if(data == NULL) 

printf("<P >错误!数据没有被输入或者数据传输有问题\n\n"); 

else if(sscanf(data,"m=%ld&n=%ld",&m,&n)!=2) 

printf("<P >错误!输入数据非法。表单中输入的必须是数字。\n\n"); 

else 
num = m*n;
//printf("%ld。\n\n",num); 

return num; 

}


ajax代码
HTML code

function Ajax(data){
        var d=new Date();
        xmlhttp.open("GET","/cgi-bin/c.cgi?m="+document.getElementById("Num_One").value+"&n="+document.getElementById("Num_Tow").value,true);
        xmlhttp.send(null);
        //document.getElementById('username_notice').innerHTML = process_request;//锟斤拷示状态
        xmlhttp.onreadystatechange=function(){
                if (4==xmlhttp.readyState){
                if (200==xmlhttp.status){
                                var responseText = xmlhttp.responseText;
                                if (responseText){
                                     alert(responseText);//showInfo("username_notice",responseText);
                                }
                        }else{
                                alert("error!");
                        }
                }
        }
}


我想根据CGI的返回值return 获取num; ,而不是根据printf获取num,可以获取吗?请各位大牛帮忙看下

------解决方案--------------------
return只是函数的返回值,必须输出出来客户端才能得到
------解决方案--------------------
是啊!return的返回值只是返回给函数,你那个主函数是void的,本来就是无返回值的吧?
还是printf吧。
------解决方案--------------------
你不使用printf输出值给客户端,你提交表单的时候,怎么会有数据提交给cgi程序和服务器处理啊!
这只是我个人的理解啊!关注中。
  相关解决方案