David Holland wrote:
I have written my first cgi script :-
The .html code is :-
<HTML><HEAD><TITLE>
Friends CGI Demo (Static Screen)
</TITLE></HEAD>
<BODY><H3>Friends list for:<I>New User</I></H3>
<FORM
ACTION="/home/david/Documents/pyprogramming/friends1.py">
<B>Enter your name></B>
<INPUT TYPE=text NAME=person SIZE=15>
<P><B>How many friends do you have ?<B>
<INPUT TYPE = radio NAME=how many VALUE="0" CHECKED>0
<INPUT TYPE = radio NAME=how many VALUE="10">10
<INPUT TYPE = radio NAME=how many VALUE="25">25
<INPUT TYPE = radio NAME=how many VALUE="50">50
<INPUT TYPE = radio NAME=how many VALUE="100">100
<P><INPUT TYPE=submit></FORM></BODY></HTML>
The python code is :-
#!/usr/bin/env python
import cgi
reshtml = '''Content-Type: text/html\n
<HTML><HEAD><TITLE>
Friends CGI Demo (dynamic screen)
</TITLE></HEAD>
<BODY><H3>Friends list for: <I>%s</I></H3>
Your name is: <B>%s</B><P>
You have <B>%s</B> friends.
</BODY></HTML>'''
form = cgi.FieldStorage()
who = form['person'].value
howmany = form['howmany'].value
print reshtml % (who, who, howmany)


Now when I open the page using konqueror and click on
submit. Instead of the code running, it justs opens
the .py program in a different window.
Any ideas ?





Hi David,

You can use a small python script to provide a cgi web server for testing:

<code>

import BaseHTTPServer
import CGIHTTPServer

def run(server_class=BaseHTTPServer.HTTPServer,
        handler_class=CGIHTTPServer.CGIHTTPRequestHandler):
    server_address = ('', 8000)
    httpd = server_class(server_address, handler_class)
    httpd.serve_forever()

run()

</code>

Put this in a file called, say, server.py. In the same directory as server.py, put a directory called cgi-bin. Put your python cgi scripts in cgi-bin. Modify the action tag in your html form to point to /cgi-bin/friends1.py. Click on the server.py icon, or run it from the command line.

Finally, point your browser to http://127.0.0.1:8000/cgi-bin/friends1.py.

You'll proably want to use apache or some other server if you want to do more than just test or demo cgi scripts locally, but this can be a useful alternative for testing simple cgi programs without installing additional software on your machine.

Good luck.

Rich


_______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor

Reply via email to