2 ljq3602101 ljq3602101 于 2016.09.13 16:02 提问

cgi程序如何得到 input type = radio 的value值 1C

    <input type="radio" name="fangxiang" value="1" /> 前进<br />
        <br>

    <input type="radio" name="fangxiang" value="2" /> 后退<br />
        <br>
    <input type="radio" name= "fangxiang" value="3" /> 左转<br />
        <br>
    <input type="radio" name= "fangxiang" value="4" /> 右转<br />     
        <br>
    <input type=submit value="确定">  <input type="radio" name= "fangxiang" value="5" /> 停止<br />     


上面是html代码。input type = “radio”的一个选中。


printf("the fangxiang is %d \n",fangxiang);
if(fangxiang==1) // go
{
off();
ioctl(fd,0,1); //left go
ioctl(fd,0,3); //right go
close(fd);
}

/*else if(fangxiang&&2==true) // back
{
off();
ioctl(fd,0,0); //left back
ioctl(fd,0,2); //right back
close(fd);
}*/

    /*else if(fangxiang==3)     //left
    {
        off();
        ioctl(fd,0,3);  //right go = left.
        close(fd);
    }

以上是.cgi部分程序。用printf 打印出来发现fangxiang这个变量并没有传进来。
在线等求大神解答。感激不尽。

3个回答

lzp_lrp
lzp_lrp   Ds   Rxr 2016.09.13 16:07

参考以下代码试试

CGI单选按钮 cgiFormRadio 
所谓单选按钮组,就是一组按钮,但是最多只能选择其中一项,这组按钮具有同一个name属性。单选按钮在表单中的应用很多,比如提供给用户选择性别,提供给用户的一个开关都可用单选按钮组来实现。这个实验显示了CGIC如何取得单选按钮组的数据。

1、  修改mycgictest.html,增加一组单选按钮组:

<form id="form2" name="form2" method="post" action="/cgi-bin/mycgictest.cgi">

  <p>

    <label>

      性别:

        <input type="radio" name="sex" value="boy" id="sex_0" />

      男</label>

    <label>

      <input type="radio" name="sex" value="girl" id="sex_1" />

      女</label>





  <p>

    <label for="sex_submit"></label>

    <input type="submit" name="sex_submit" id="sex_submit" value="提交" />





</form>

这里给用户提供一个性别选项,用户可以从两个性别中选择其中一个。

2、修改mycgictest.c文件:

添加变量定义:

    char *user_sex[]={"boy","girl"};

    int user_sex_serult;

加入处理函数:

  if(cgiFormRadio("sex",user_sex,2,&user_sex_serult,0)==cgiFormSuccess){

     fprintf(cgiOut,"Ha Ha 是个%s !",user_sex[user_sex_serult]);

  }

这个实验中我使用cgiFormRadio()来处理用户提交的单选按钮组,cgiFormRadio()函数的说明请查阅我上传的CGIC手册。对于表单中的单选按钮组要注意的是每个单选按钮必须有自己的value,且不相同,这个属性是cgiFormRadio()用来区别同一按钮组中不同单选按钮的标准。应用中注意函数的第三个参数是一个整型指针,指向用户选择的单选按钮。
3、同样编译然后在浏览器中访问,选择一个性别然后提交,如果看到“Ha Ha 是个boy !”之类字样,说明成功! 

lzp_lrp
lzp_lrp 回复ljq3602101: 你参考一下这个:http://blog.chinaunix.net/uid-24810608-id-331657.html
大约一年之前 回复
ljq3602101
ljq3602101 这个代码我看过。但是他里面的cgiFormSuccess这个变量我不知道是怎么定义的。我的意思是传一个数过去最好。
大约一年之前 回复
testcs_dn
testcs_dn   Rxr 2016.09.14 09:05

线CGI程序吗?
用c++写的?
还是有Perl?

testcs_dn
testcs_dn   Rxr 2016.09.14 09:05

还不能编辑!
纯CGI程序吗?
用c++写的?
还是有Perl?

Csdn user default icon
上传中...
上传图片
插入图片