Scenario: A local news company is interested to know how often certain keywords appear in news stories on the internet. They can’t afford anyone to track this manually, so they have instead commissioned the development of a web application that can be used to read in an RSS feed from a provided link and search through for a set of provided keywords. The result of this analysis then gets stored in a database for later querying and display.
You are required to produce web page areas. You can use more if you feel that it would help properly separate out the various elements of your system, up to a maximum of six pages of XHTML/PHP code. It is advised that you use one of these to create a simple setup.php file that populates your database with testing data.
RSS files may be stored locally, but extra marks are available for those that query live RSS streams across the internet.
Your front-end should offer an XHTML interface to the application, allowing for the choosing of RSS feeds (from a drop down menu) and the setting of keywords (comma delimited, presented in a single input field). The application should also have buttons for querying by the provided keywords, and also for querying all data stored in the database.
The analyse_feed page will take the content from an RSS file, parse it into an appropriate format for examination, and then count the number of the specified keywords that are found. These then get stored in the database in the form of ‘keyword, article, feed, number of instances’. Each article should only be analysed once for each keyword, and not stored more often in the database.
The query_database page provided a mechanism for returning data according to one of several specified categories:
You are required to develop these pages using suitable PHP and XHTML. For simplicity in this assignment you may use CSS or tables for layout and presentation. There are more marks available if you use CSS.
In order to meet the requirements specification in will be necessary to support the complete process using a three-tier web architecture as follows: