| | |
internet form handling
![]() |
•
•
Join Date: Jun 2005
Posts: 39
Reputation:
Solved Threads: 0
what you want to look at is the cgi module.
go here
http://gnosis.cx/publish/programming...in_python.html
or here
http://wiki.python.org/moin/CgiScripts
i use only python in my cgi , just because i dig python.
hope this helps
go here
http://gnosis.cx/publish/programming...in_python.html
or here
http://wiki.python.org/moin/CgiScripts
i use only python in my cgi , just because i dig python.
hope this helps
•
•
Join Date: Jun 2005
Posts: 39
Reputation:
Solved Threads: 0
try this....
here is a simple form.....
and the script that it passes info to in the cgi-bin
called login.py
if you are using Linux, remember to make the login.py
script executable
chmod a+x /whatever/the/path/is/to/your/cgi-bin/login.py
let me know how it works.
also. if it does not work, lemme know some other stuff
what web server you are using.....
operating system.....
etc... what ever you think may help diagnose.
here is a simple form.....
Python Syntax (Toggle Plain Text)
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"> <title>Admin Login</title> </head> <body> <big><big>Login Here<br> <br> </big></big> <form action="/cgi-bin/Login.py" name="LoginForm"><big>Administration Login<br> User Name<br> <input name="UserName"><br> <br> <br> Password<br> <input name="PassWord"><br> </big><br> <br> <br> <input type="submit"> <br> </form> __ <br> </body> </html>
and the script that it passes info to in the cgi-bin
called login.py
Python Syntax (Toggle Plain Text)
#!/usr/bin/python import cgi import cgitb; cgitb.enable() # get the info from the html form form = cgi.FieldStorage() #set up the html stuff reshtml = """Content-Type: text/html\n <html> <head><title>Security Precaution</title></head> <body> """ print reshtml User = form['UserName'].value Pass = form['PassWord'].value if User == 'john' and Pass == 'jacob': print '<big><big>Welcome' print 'mr. Jingleheimerschmidt !</big></big><br>' print '<br>' else: print 'Sorry, incorrect user name or password' print '</body>' print '</html>'
if you are using Linux, remember to make the login.py
script executable
chmod a+x /whatever/the/path/is/to/your/cgi-bin/login.py
let me know how it works.
also. if it does not work, lemme know some other stuff
what web server you are using.....
operating system.....
etc... what ever you think may help diagnose.
I tried running what you sent me and it didn't seem to work. When I tell python to print something (such as all the html code along with the form data) where is it printing it to? I'm also very new to networking and things like that. Would I have to upload my python code and html file to my web site for it to run properly, or will it run right just straight off of my computer?(I have Windows XP with python installed). When I upload it to my web site, I believe it is an apache server. Thanks for your help in advance.
-Nick
Also, the web site says that it supports scripting languages such as perl, php, etc.. but it does not exactly say that it supports python. Does it need to say that? The web site was purchased from Lonex <www.lonex.com>
-Nick
Also, the web site says that it supports scripting languages such as perl, php, etc.. but it does not exactly say that it supports python. Does it need to say that? The web site was purchased from Lonex <www.lonex.com>
•
•
Join Date: Jun 2005
Posts: 39
Reputation:
Solved Threads: 0
ok
first off, many web hosts support scripting languages, but as they include php, perl, etc.. many do not support python.
the good news is...
you can host the site yourself.
apache is available for windows and they have great documentation and support.
heck, i will even host your site (i am hosting four sites now) if you are not going to get more than a thousand hits/day.
what i am saying is.... its easy... seems intimidating at first, but all things technical do. what you need is python, apache and the mod_python module. you edit the configuration file to have apache start the mod_python module when apache starts. put your scripts in a folder called cgi-bin (usually) look for a line in the apache configuration file called Script-Alias. this is also where the scripts would go if you upload them to a host. almost always not the same folder where the html stuff goes.
and, yeah, the scripts whatever.py has to be on the server because they are server side scripts. server side means that all the data process is done at the server and the results are posted to the web page.
when you call print, and you are printing html, it is printing to the web browser.
in the two scripts i posted, the html form passes data to the python script, the python script takes that info (username and password) and creates a webpage that
does something based on whether or not the username and password match what the script says. the base line is that the python script actually creates html code.
another reason it did not work is the first line of the scrip.
The one that starts with a pound-bang (#!)
That is a linux thing.
check this link for how to set that line up correctly i think its C:\python24
but i am not sure. i stupidly assumed that you use linux because most servers use either linux or unix
check here for windows
check the apache docs for how to set up their server on your windows box. apache runs on windows too. but i am not very familliar with it. i think you
must have it installed and running to execute a cgi python script from your
own computer. maybe there is another freeware app out there,, a light server that may do you better . even if you dont host the site yourself, you can use a webserver on your home computer to test out your scripts because it is much easier to debug and re-arrange right there and then upload when you know it does exactly what you want.
Keep me posted on how its working out. if i dont know the answer, i can find it somewhere.
first off, many web hosts support scripting languages, but as they include php, perl, etc.. many do not support python.
the good news is...
you can host the site yourself.
apache is available for windows and they have great documentation and support.
heck, i will even host your site (i am hosting four sites now) if you are not going to get more than a thousand hits/day.
what i am saying is.... its easy... seems intimidating at first, but all things technical do. what you need is python, apache and the mod_python module. you edit the configuration file to have apache start the mod_python module when apache starts. put your scripts in a folder called cgi-bin (usually) look for a line in the apache configuration file called Script-Alias. this is also where the scripts would go if you upload them to a host. almost always not the same folder where the html stuff goes.
and, yeah, the scripts whatever.py has to be on the server because they are server side scripts. server side means that all the data process is done at the server and the results are posted to the web page.
when you call print, and you are printing html, it is printing to the web browser.
in the two scripts i posted, the html form passes data to the python script, the python script takes that info (username and password) and creates a webpage that
does something based on whether or not the username and password match what the script says. the base line is that the python script actually creates html code.
another reason it did not work is the first line of the scrip.
The one that starts with a pound-bang (#!)
Python Syntax (Toggle Plain Text)
#!/usr/bin/python
That is a linux thing.
check this link for how to set that line up correctly i think its C:\python24
but i am not sure. i stupidly assumed that you use linux because most servers use either linux or unix
check here for windows
check the apache docs for how to set up their server on your windows box. apache runs on windows too. but i am not very familliar with it. i think you
must have it installed and running to execute a cgi python script from your
own computer. maybe there is another freeware app out there,, a light server that may do you better . even if you dont host the site yourself, you can use a webserver on your home computer to test out your scripts because it is much easier to debug and re-arrange right there and then upload when you know it does exactly what you want.
Keep me posted on how its working out. if i dont know the answer, i can find it somewhere.
![]() |
Other Threads in the Python Forum
- Previous Thread: stuck in cgi image stuff
- Next Thread: my pride and joy
| Thread Tools | Search this Thread |
abrupt accessdenied anti apache application approximation argv array beginner book builtin calculator change converter countpasswordentry curved dan08 dictionaries dictionary dynamic edit enter examples file float format function gui heads homework import inches input java keyboard lapse launcher library line lines linux list lists loop microphone mouse movingimageswithpygame mysqlquery newb number numbers numeric output parameters parsing path phonebook plugin port prime programming projects py2exe pygame pyopengl python random recursion redirect remote reverse scrolledtext session simple software sprite statictext string strings syntax table terminal text textarea thread threading time tlapse trick tuple tutorial twoup ubuntu unicode unit urllib urllib2 variable wordgame wxpython





