ITApps Assessment 2015/16 P1 TMA
03/10/15 Page 1 of 3
Tutor Marked Assignment (TMA)
Introduction
The TMA carries 25% of the total marks for this module. Its aim is to help confirm that you
understand the basics of PHP and can parse web server log files to extract information from
them using the techniques covered in the module. It also ensures that you have mastered
the basic skills needed to complete the FMA and provides your tutor with the opportunity to
feedback comments on your work.
The completed TMA deliverables should be submitted electronically in the assignment
Dropbox BEFORE the start of Session 5.
Completing the TMA
You should work on your TMA after class and during the self-study Session scheduled after
Session 4. Begin your work early, as the TMA is a substantial task that requires planning and
effort to complete satisfactorily. The TMA prepares you for the FMA so you greatly reduce
your risk of a poor overall mark by completing and submitting a TMA.
Getting support
Support for the TMA work will be available in class during Session 4.
TMA Specifications
Introduction
When a file (HTML page, image file, etc.) is requested from a web server it is common
practice for the web server to log the request to a text file. Such files can be used to
determine the number of visits a site receives, for which pages and so on. In this TMA you
will be using PHP to parse such log files to extract information from them. To extract
information, you first need to understand the format of such files.
Each request to the web server is logged by a single line in the log-file. Therefore if the log
file for a particular month contains 2000 lines of data, you know that there have been 2000
file requests from the server in that month. An example of a typical line is:
[login to view URL] [01 09:10:35] 200 "GET articles/using_regex_with_php HTTP/1.0"
12234 "Googlebot/2.1"CRLF
This line contains the following information:
1. IP Address: This is the address of the machine that requested the file from the web
server. It consists of 4 numbers between 0-255 separated by a dot.
2. Timestamp: This contains the date and time of the request in the format DD
HH:MM:SS.
3. HTTP Status Code: This HTTP code logs the status of the request. For example, the
files we will be looking at have a status code of either 200 or 404. Status 200 means the
file was supplied to the requester successfully. Status 404 means the file could not be
found on the server, and a 404 Page not Found error was returned to the requester.
4. Filename: The address of the requested file on the server.
5. Bandwidth Used: The size of the file delivered to the user is also logged, and this is
also the bandwidth used by this request. The value is logged in bytes.
6. User Agent: The program which the file is being delivered to on the requester's
machine. In the log files we examine this is either Mozilla/4.0 (a browser like FireFox),
MSIE 7.0 (a browser like Internet Explorer 7), or Googlebot/2.1 (a google search engine
spider).
7. End of Line: Control characters (CRLF) that specify end of line.
Web Programming using PHP (P1)
ITApps Assessment 2015/16 P1 TMA
03/10/15 Page 2 of 3
Thus in our previous example:
[login to view URL] [01 09:10:35] 200 "GET articles/using_regex_with_php HTTP/1.0"
12234 "Googlebot/2.1"CRLF
The IP address of this request was [login to view URL], which was made on the 1st day of the
month at 9.10am by a Google spider. It requested the page articles/using_regex_with_php
which was delivered successfully (status code 200), consuming 12234 bytes of bandwidth
(11.9kB).
.
I have been working as a software developer for more than one and half year and having good knowledge of algorithms and data structures and good problem solving skills and good at file handling and analysis of log file
I try my best to complete a project in one Day .Never put off till tomorrow what may be done the day after tomorrow just as well. ... look at the best plan of attack when you find yourself in a time crunch. ... When I was a senior in college, one of my final projects was building a web app. ... Use the bulk of your willpower to complete the harder tasks first; that ...