CGI Scripts - PowerPoint PPT Presentation

About This Presentation
Title:

CGI Scripts

Description:

Decoding ... Decoding Form Data. Decode the hexadecimal and ' ' characters in each ... the POST method, this program decodes the information and outputs a thank ... – PowerPoint PPT presentation

Number of Views:213
Avg rating:3.0/5.0
Slides: 14
Provided by: billg96
Learn more at: http://web.cs.wpi.edu
Category:
Tags: cgi | decodes | scripts

less

Transcript and Presenter's Notes

Title: CGI Scripts


1
CGI Scripts
2
GET
  • Form data forms query string and is appended to
    the URL of the script
  • Can be accessed by using the environment variable
    QUERY_STRING
  • Browser or server may truncate data that exceeds
    an arbitrary number of characters

3
GET
  • GET request by client
  • GET /cgi-bin/prog.pl?name Billage29
    HTTP/1.0
  • Accept www/source
  • Accept text/html
  • Accept text/plain
  • User-Agent Lynx/2.4 libwww/2.14

4
GET
  • Can access CGI program with a query without using
    a form
  • lta href"/cgi-bin/prog.pl?name
    Billage29"gtCGI programlt/agt
  • Can also send extra path information
  • Usually file name
  • lta href"/cgi-bin/prog.pl/name
    Billage29"gtCGI programlt/agt

5
POST
  • Query length is unlimited
  • Script reads from standard input
  • Can't create canned queries

6
POST
  • POST /cgi-bin/prog.pl HTTP/1.0
  • Accept www/source
  • Accept text/html
  • Accept text/plain
  • User-Agent Lynx/2.4 libww/2.14
  • Content-type application/x-www-form-urlencoded
  • Content-length 22
  • userLarryBirdage30

7
Decoding Form Data
  • Determine request protocol by checking the
    REQUEST_METHOD environment variable
  • GET or POST
  • One script can work for both methods
  • If the protocol is GET, read query string from
    QUERY_STRING and/or the extra path information
    from PATH_INFO

8
Decoding Form Data
  • If the protocol is POST, determine the size of
    the request using CONTENT_LENGTH and read that
    amount of data from the standard input
  • Split the query string on the '' character,
    which separates key-value pairs
  • The format is keyvaluekeyvalue...

9
Decoding Form Data
  • Decode the hexadecimal and '' characters in each
    key-value pair
  • Create a key-value table with the key as the index

10
Examples
  • Using forms with POST
  • Plain text
  • Guestbook
  • http//jupiter.cs.wayne.edu/grosky/user-cgi/guest
    book.pl?add using the GET method, will present a
    form for you to enter information

11
Examples
  • Guestbook
  • http//jupiter.cs.wayne.edu/grosky/user-cgi/guest
    book.pl using the GET method, will display the
    actual guestbook file guestbook.htm
  • Can open guestbook file directly by accessing
    http//jupiter.cs.wayne.edu/
    grosky/CSC691/CGIScripts/ Guestbook/guestbook.htm

12
Examples
  • Guestbook
  • When form is submitted using the POST method,
    this program decodes the information and outputs
    a thank-you message

13
Examples
  • Survey
  • http//jupiter.cs.wayne.edu/grosky/user-cgi/shopp
    ing.pl/start.htm
  • http//jupiter.cs.wayne.edu/
    grosky/CSC691/CGIScripts/Hidden Fields/start.htm
Write a Comment
User Comments (0)
About PowerShow.com