0

我正在使用 cgi 在 Apache 机器上编写服务器端脚本。我正在使用 C 进行 cgi 编程。我是一个完全的菜鸟,并且从在线示例中学习(我必须说,除了基础知识之外,我没有遇到更多用于详细学习的网络资源!)。我有一个简单的 HTML 页面,其中用户名(输入)被添加到一个列表中,该列表是我系统中的一个文件,然后更新的列表应该显示在同一页面中。我无法在同一页面上“打印”脚本和 http 链接的结果,因此在下面的代码中,您只会看到按钮。请帮忙。

这是我所拥有的:

<html>
<head><title>Home</title></head>
<body>
<h1>REGISTER</h1>
<form action= "/cgi-bin/mycgi.cgi" name ="create user" method ="get">
Enter name:<input type="text" name="user">
<br>
<input type="submit" value="add">
</form>
 <FORM action="http://localhost:8000/getusers/" method="get">
    <P>
    <input value="Display Users" type="submit">
    </P>
 </FORM>
</body>

这是cgi代码:

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

int main(){
char *tmpStr;
char *user;
printf("Content-Type:text/html\n\n");
printf("<html><head><title></title></head><body>");
tmpStr = getenv("QUERY_STRING");
while(tmpStr && *tmpStr != '='){
tmpStr++;
}
user = tmpStr+1,
printf("Adding %s to  User Database",user);
//system("wget http://localhost:8000/newuser/");//call script to add user?
printf("</body></html>");  
return 0;//return user?
}

你能告诉我如何实现这些吗?如何在不打开新的 html 站点的情况下显示用户列表?同样在上面的 C 代码中,我必须调用"http://localhost:8000/newuser/"返回成功或失败值的链接。如何将其返回到父表单?谢谢。

4

1 回答 1

0

您可以在 html 中添加 iframe:

<iframe id="theiframe" name="theiframe"></iframe>

然后将表单的目标设置为 iframe:

<form action= "/cgi-bin/mycgi.cgi" name ="create user" method ="get" target="theiframe">

无论如何,我不清楚单击第一个或第二个按钮时是否应该显示更新的列表。

于 2013-07-23T13:00:17.700 回答