Top Banner
The UNIVERSITY of GREENWICH MEDWAY SCHOOL OF ENGINEERING DEPARTMENT OF COMPUTING AND COMMUNICATIONS ENGINEERING BSc IN INFORMATION COMMUNICATION AND TECHNOLOGY DISSERTATION MAIN REPORT Business Project years 1 & 2 Employee Database Project Supervisor: Dr Y. L. Tan Submission Date: Thursday, 05 May 2011.
150

Dissertation

Nov 02, 2014

Download

Documents

mcisilotto

Ginalyear dissertation, a software development process.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Dissertation

The UNIVERSITY of GREENWICH

MEDWAY SCHOOL OF ENGINEERING

DEPARTMENT OF COMPUTING AND COMMUNICATIONS

ENGINEERING

BSc IN INFORMATION COMMUNICATION AND TECHNOLOGY

DISSERTATION MAIN REPORT

Business Project years 1 & 2

Employee Database

Project Supervisor: Dr Y. L. Tan

Submission Date: Thursday, 05 May 2011.

By:

M. Cisilotto

Page 2: Dissertation

DISSERTATION REPORTMay 5, 2011

Abstract

The objective of the project was to use e-learning principles in order to build an

online system to hold job postings as part of the Business project for years 1 and 2

courses in the Business Information Technology and Management students of the

University of Greenwich (BITE) department. This new system will replace the

previous existent version.

The system was developed using the ‘v-model’, this method was chosen because it

links software development and testing until the final result was achieved.

The structural design involved the use mostly of PHP and HTML pages to store

information in the database (MySQL).

The application has two levels of access, which limit the functionality of the system

for each type of user. Second year students will form groups or ‘companies’ which

can create and post new jobs and view the applicants for the jobs they posted. First

year’s students or the ‘employees’ can only see the jobs posted by the second years

and apply towards by posting CVs. All users will have access to a logbook which

will record their day-today activities, and these records will be used as part of the

assessment as well as material for pedagogical research.

Contents

Page ii

Page 3: Dissertation

DISSERTATION REPORTMay 5, 2011

Definition of Terms and Abbreviations..................................................................vii

CHAPTER 1................................................................................................................1

INTRODUCTION......................................................................................................1

1.1: Overview........................................................................................................................1

1.2: Dissertation Report Structure........................................................................................2

CHAPTER 2................................................................................................................3

LITERATURE REVIEW..........................................................................................3

2.1: Introduction....................................................................................................................3

2.2: E- Learning....................................................................................................................3

2.3: Collaborative Learning..................................................................................................4

2.3.1: How collaborative learning can help in the student’s career?....................5

2.3.2: How to make team learning successful......................................................5

2.3.3: Best ways to Learn.....................................................................................6

2.4: What is Computer-supported collaborative learning?...................................................7

2.4.1: Why use Computer-supported collaborative learning (CSCL)..................7

2.4.2: Computers and education...........................................................................8

2.4.3: E-learning at a distance...............................................................................8

2.4.4: Designing technology to support CSCL...................................................10

CHAPTER 3..............................................................................................................11

TECHNICAL BACKGROUND..............................................................................11

3.1: Apache Server..............................................................................................................11

3.2: HTML..........................................................................................................................11

3.3: CSS..............................................................................................................................12

3.4: PHP..............................................................................................................................12

3.5: Data Storage.................................................................................................................13

3.5.1: Databases..................................................................................................13

3.5.2: MySQL.....................................................................................................14

3.5.3: PHPMyAdmin..........................................................................................14

3.5.4: Data Security............................................................................................14

CHAPTER 4..............................................................................................................15

REVIEW OF PREVIOUS WORK.........................................................................15

4.1: Introduction..................................................................................................................15

Page iii

Page 4: Dissertation

DISSERTATION REPORTMay 5, 2011

4.2: Screenshots..................................................................................................................15

4.3: Conclusion...................................................................................................................17

CHAPTER 5..............................................................................................................18

SYSTEM REQUIREMENTS..................................................................................18

5.1: Requirements...............................................................................................................18

5.2: Functional Requirements.............................................................................................18

5.3: Non-Functional Requirements.....................................................................................19

5.4: Conclusion...................................................................................................................20

CHAPTER 6..............................................................................................................21

SYSTEM DESIGN....................................................................................................21

6.1: GUI Design..................................................................................................................21

6.1.1: General Layout.........................................................................................................22

6.2: Database Design..........................................................................................................23

6.2.1: Table: Login.............................................................................................................24

6.2.2: Table: Post_activity..................................................................................................25

6.2.3: Table: Post_job........................................................................................................26

6.2.4: Table: Upload...........................................................................................................27

6.4: Conclusion...................................................................................................................27

CHAPTER 7..............................................................................................................28

SYSTEM IMPLEMENTATION.............................................................................28

7.1: The Login System........................................................................................................28

7.2: Querying the Database.................................................................................................30

7.3: Problems with the System...........................................................................................31

7.3.1: Description of the problem.......................................................................................32

7.3.2: Strategy.....................................................................................................................32

7.4: System Screen-Shoots of the System..........................................................................33

7.4.1: Year 2 Students Screen-shoots.................................................................34

7.4.2: Year 1 Students Screen-shoots.................................................................36

7.4.3: Log Book screen shoots for all students...................................................38

7.5: Conclusion...................................................................................................................39

CHAPTER 8..............................................................................................................40

TESTING...................................................................................................................40

8.1: Black Box Testing.......................................................................................................40

Page iv

Page 5: Dissertation

DISSERTATION REPORTMay 5, 2011

8.1.1.: Text Areas................................................................................................45

8.1.2: Password Fields........................................................................................45

8.1.3: Text Fields................................................................................................45

8.2: Usability Test...............................................................................................................46

8.4: Conclusion...................................................................................................................46

CHAPTER 9..............................................................................................................47

CONCLUSION.........................................................................................................47

9.1: Achievements..............................................................................................................47

9.2: Evaluation....................................................................................................................47

9.3: Future Development....................................................................................................48

BIBLIOGRAPHY.....................................................................................................49

APPENDIX I – TIME PLAN...................................................................................53

APPENDIX II – SOURCE CODE..........................................................................55

1-default.css........................................................................................................................55

2- index.php........................................................................................................................59

3-year1homepage.php.........................................................................................................61

4- year2homepage.php........................................................................................................63

5-add_job.php.....................................................................................................................66

6-file_upload.php................................................................................................................67

7-loginproc.php...................................................................................................................70

8-logout.php........................................................................................................................72

10-post_activity.php...........................................................................................................72

11-post_activity1.php.........................................................................................................73

12-post_job2.php................................................................................................................77

13-show_activitiesbystudent.php........................................................................................81

14-show_job2.php...............................................................................................................85

15-show_job22.php.............................................................................................................88

16-show_jobsbynameCO.php.............................................................................................93

17-show_jobsbynameCO2.php...........................................................................................96

18-upload.php and config.inc...........................................................................................100

Page v

Page 6: Dissertation

DISSERTATION REPORTMay 5, 2011

Definition of Terms and Abbreviations

CSCL Computer-supported collaborative learning

CSS Cascading Style SheetsDBMS Database Management System GUI Graphical User Interface HTML Hypertext Mark-up Language HTTP Hypertext Transfer Protocol

MySQL Database system supporting JDBC RDBMS Relational Database Management SystemF1-F10 Functional Requirements, refer to section 5.2. NF1-NF6 Non-Functional Requirements, refer to section 5.3. PHP Hypertext ProcessorSQL Structured Query Language, related to databases URL Universal Resource Locator

Page vi

Page 7: Dissertation

DISSERTATION REPORTMay 5, 2011

CHAPTER 1

INTRODUCTION

1.1: Overview

The project proposes a creation of a system to help the collaboration between first

and second year students in the BITE department who will form companies to carry

out one of a series of real business projects that the BITE team has identified in the

area. These are real projects suggested by real business and as such the results will

be given to business concerned.

This system is required to substitute the original existent system. The main reason for

this is that the original system is not user-friendly (ease of use).

The second year students will lead the teams on a collaborative way basis, making

sure they have the correct set of collaborators. The first year students need to work at

getting into the right group through using their CV’s and ‘interview’ skills.

The web application and database will serve to:

Hold jobs posted by year two students,

Hold CV’s posted by first year students;

Record student’s activities on an individual diary.

This project involves the use of e-learning related skills. Leung says the following

about e-learning ‘Learners and teaching professionals are attracted by the many

benefits of e-learning, such as the flexibility of learning anywhere, at any time and at

an individualized pace.’ ( Leung, 2003).

Page 1

Page 8: Dissertation

DISSERTATION REPORTMay 5, 2011

1.2: Dissertation Report Structure

The report is divided in eight chapters, a bibliography and three appendices. The

following paragraphs briefly describe each chapter.

Chapter 2 Is a review of the literature covered to provide information to

do this project.

Chapter 3: It’s a review of all technical background used to complete this

project.

Chapter 4: Is a review of the previous work done, with screen shots and

the reasons of the proposed new System.

Chapter 5: This chapter deals with the proposed System Requirements in

terms of its Functional and Non-Functional Requirements.

Chapter 6: This describes the Design of the system in terms of GUI and

database.

Chapter 7: This part refer to the Implementations in the system, also show

shows some screen shots of the final system.

Chapter 8: Describes the tests conducted on the system as a whole system

and a usability test as well.

Chapter 9: This concludes this report by discussing the project’s

achievements, and evaluation of the work done a suggestion

for future development.

BIBLIOGRAPHY This section refers to all material used to do this project.

APPENDIX I –

TIME PLAN

Shows a Project Plan and Gantt Chart of planned work and

with the time spent in each phase of the project.

APPENDIX II –

SOURCE CODE

All the source code for this project.

Page 2

Page 9: Dissertation

DISSERTATION REPORTMay 5, 2011

CHAPTER 2

LITERATURE REVIEW

2.1: Introduction

There are many ways to reach a solution to this project; this chapter will review the

literature used on this project which supported it to accomplish the final result.

2.2: E- Learning

“An e-learning model may combine online technologies, campus-based delivery,

and distance learning” (Volery & Lord, 2000). Learners receive their learning

resources over the web, which can include multimedia interactions, on-line feedback,

and they play a more active role in the learning process. (Leung, 2003).

Students today are growing up in a digital age, communicating and learning via

technology now more than ever before. To prepare students for future success,

schools are implementing technology to enhance the teaching and learning

experience and renovate education. Educators, policy-makers, and IT leaders agree,

however, that simply adding computers to the classroom in order to achieve this is

not enough. To actually renovate learning for the digital natives, schools must mix

technology tools that can extend the education knowledge and connect the classroom

with the 21st century. While technology is an instrument used by educators, it is not

a replacement for the impact every member of the education system has on learner

success. Technology need simplify these relations. A whole learning atmosphere is

required in which students; teachers, administrators, and parents can without

difficulty communicate and collaborate with each other, share secure information,

and, ultimately, access a world of knowledge beyond classroom walls. (Henshaw,

2010).

Page 3

Page 10: Dissertation

DISSERTATION REPORTMay 5, 2011

2.3: Collaborative Learning

Collaborative learning is a situation in which two or more people learn or attempt to

learn something together.

Usually, students are working in groups, equally searching for understanding,

solutions, or meanings, or creating a product. Collaborative learning activities differ

broadly, but most centre on students’ investigation or use of the course material, not

merely the teacher’s demonstration or explanation of it. (Dillenbourg, P., 1999)

More precisely, collaborative learning is centred on the model that knowledge can be

created in a population where associates vigorously interact by sharing experiences.

(Chiu, M. M., 2000).

Put in a different way, collaborative learning brings up a methodology in which

learners take part in common tasks where each individual depends on and is

responsible to each other. Collaborative learning is heavily embedded in Vygotsky’s

opinions that there exists an inherent social nature of learning which is shown

through his theory of zone of proximal development. (Chiu, M. M., 2008)

Often, collaborative learning is used as an umbrella term for a variety of methods in

education that include joint intellectual strength by students or students and teachers.

(Mitnik, R., Recabarren, M., Nussbaum, M., & Soto, A. ,2009).

Consequently, collaborative learning is regularly showed when groups of students

work together to search for understanding, significance, or results or to produce an

artefact of their learning.

Additionally, collaborative learning redefines traditional student-teacher connection

in the classroom which consequences in controversy over whether this model is more

helpful than damaging. (Chiu, M. M., 2008).

Usually these activities can include collaborative writing, group projects, joint

problem solving, debates, study teams, and other activities. (Leigh B., MacGragor T.,

1992)

Page 4

Page 11: Dissertation

DISSERTATION REPORTMay 5, 2011

2.3.1: How collaborative learning can help in the student’s career?

There are many positive means of teaching groups and individuals, and collaborative

learning as a teaching philosophy tries to address both. Collaborative learning is

concerning in choosing to work with a group to expand one’s awareness of a

particular topic or condition. Usually coaching students at various levels to together

achieve a single goal. The idea is that they will be successful or fail together.

In a deeper attitude, the success of collaborative learning as a teaching philosophy

can be perceived as a way to help poor performing students to progress as they work

equally with high performing students. On this way this method works well in the

classroom, around small group tasks. As soon as it changes into larger situations, it

might be defined as cooperative learning.

The difference between the two teaching ideas is that collaborative learning is

dedicated on the students’ accomplishments where cooperative learning is frequently

a teacher aimed atmosphere that emphasis on the interaction among teachers and

students. The terms are sometimes exchangeable as teachers are surely involved in

the collaborative learning ideal, too.

A critical feature of the collaborative learning idea is that it absences exclusion.

Children are not divided by skills, interests or successes. They are grouped together

so that they can learn from each other’s skills and knowledge. This brings up a

profounder understanding of diverse cultures, way of life, and perceptions.

Frequently intelligent students in fact learn to some degree from the regular or poor

student. (Collaborative Learning Org, 2011)

2.3.2: How to make team learning successful

Team learning can be very effective if it’s planned right. On the other hand, a poor

class strategy or absence of accountability for those in the group can influence

tragedy. Satisfactory to get the full profits of the group learning atmosphere a few

principles must to be met.

Page 5

Page 12: Dissertation

DISSERTATION REPORTMay 5, 2011

The groups have to be correctly formed and managed. Typically, the group should be

no bigger than five to seven students. There also requirements to be a uniform

distribution of member individualities. In other words, four good succeeding students

positioned with one poor student will not nurture a good learning atmosphere or

create reasonable outcomes. Probable the poor performer will remain to

underachieve as the odd out.

Students must be made independently responsible for organizing their separate work

for the group project, allocating time and determination to the group project, and

work together in a positive way. Consequently, the individual components have to be

the same for each student.

The best way to escape team struggle is to make projects that encourage group

decision making in simple methods. If too complex the poorer students will fall

behind.

The overlying idea in team learning is about the teamwork. Academics are surely

key, but so is the life classes that are learned when students are likely to work

together and accomplish together. Finally, the distinctive characteristics of each team

participant should bring effects to the project that will make it effective.

Teachers have to stress commitment by the whole group and permit the learners to

use free will in finishing the project. In this way, the students occupy in a

collaborative learning model that tolerates them to teach and learn from each other.

(Collaborative Learning Org, 2011)

2.3.3: Best ways to Learn

Every person learns in a different way. Indeed, there are a few things that regularly

appear to be the preeminent ways to learn. We’ve all have heard that some people

learn best visually, some by doing, some by hearing, some by experiencing, and so

onwards. These are correct, but the top situations may be a little wider than just one

sense approaching into play. (Collaborative Learning Org, 2011)

Page 6

Page 13: Dissertation

DISSERTATION REPORTMay 5, 2011

The most important feature in learning is that the student has to want to learn. When

individuals want to learn to some degree, they do.

Learning by doing is certainly one of the best methods to learn. It’s about sample and

error, training, and making errors. Without even become conscious of it, youngsters

learn like this every single day.

All people learn over feedback. Humans adore positive strengthening, so if the

feedback is good, people will make better efforts to study, and they’ll recall what

they got correct. Humans are a feeling species, so we have feelings about all we do.

Lastly, people need to be capable to make sense of what they are learning. If it

doesn’t have a vibrant method that can be absorbed, it won’t be learned. Our minds

certainly category out what is beneficial and build on that while leaving what isn’t

essential. Consequently, we factually are assimilating the information upcoming. The

task has to be understandable in order for it to be learned.

(Collaborative Learning Org, 2011)

2.4: What is Computer-supported collaborative learning?

Computer-supported collaborative learning (CSCL) is a developing division of the

learning sciences concerned with reviewing how individuals can learn together with

the assistance of computers.

The inclusion of collaboration, computer intermediation and distance education has

problematized the very concept of learning and called into question predominant

suppositions around how to study it. (Stahl, G., Koschmann, T., & Suthers, D.,

2006).

2.4.1: Why use Computer-supported collaborative learning (CSCL)

Because is a pedagogical method in which learning profits using social interaction

with a computer or over the Internet. This type of education is categorized by the

Page 7

Page 14: Dissertation

DISSERTATION REPORTMay 5, 2011

sharing and construction of knowledge between members by using technology as

their main means of communication. CSCL can be applied in online and classroom

learning atmospheres.

(Hmelo-Silver, C.E. 2006)

2.4.2: Computers and education

Computers in the teaching space are frequently seen with doubt. They are understood

by criticisers as dull and anti-social, a sanctuary for geeks and a mechanical,

inhumane method of training. CSCL is centred on precisely the reverse idea: it

suggests the development of new software and applications that carry learners

together and that can propose creative activities of intelligent exploration and social

contact.

CSCL arose in the 1990s in response to software that enforced students to learn as

lonely persons. The exciting prospective of the Internet to link people in new ways

delivered an incentive for CSCL study. As CSCL advanced, unexpected obstacles to

designing, propagating and excellently taking advantage of new educational software

became more and more obvious. A renovation of the complete idea of learning was

necessary, including important modifications in schooling, teaching and being a

student. (Stahl, G., Koschmann, T., & Suthers, D., 2006).

2.4.3: E-learning at a distance

CSCL is often combining with e-learning, the group of instruction through computer

networks. E-learning is frequently driven by an innocent belief that classroom

content can be digitized and dispersed to a great numbers of learners with little

persistent association of teachers or other costs, such as buildings and transportation.

There are an amount of complications with this opinion.

Page 8

Page 15: Dissertation

DISSERTATION REPORTMay 5, 2011

First, it is basically not true that the posting of content, such as slides, texts or videos,

creates a compelling lesson. Such content may deliver significant resources for

students, just as textbooks at all times have, on the other hand they can only be

current in a superior motivational and interactive context. (Stahl, G., Koschmann, T.,

& Suthers, D., 2006).

Second, online lessons needs at least as much work by human teachers as

schoolroom teaching. Not only requisite the tutor to organize materials and make

them accessible by computer, the educator must stimulate and lead each pupil,

through on-going interaction and a sense of social presence. Whereas online lessons

permit students from about everywhere in the world to take part, also it permits

lecturers to work from anywhere with Internet connectivity.

Third, CSCL stresses collaboration between the scholars, so that they are not only

responding in separation to posted resources. The learning takes place mostly

through collaborations amid students. Scholars pick up by expressing their questions,

following lines of inquiry together, teaching each other and seeing how others are

learning. Computer support for such teamwork is vital to a CSCL methodology to e-

learning. Motivating and supporting useful student contact is difficult to attain,

without skilful preparation, organization and implementation of program, pedagogy

and technology.

Fourth, CSCL is also worried with face-to-face (F2F) relationship. Computer support

of education and does not continuously take the form of an online communication

intermediate; the computer support may include, for example, a computer

reproduction of a scientific idea or a shared interactive demonstration. In this case,

the collaboration emphases on the creation and investigation of the recreation or

demonstration. On the other hand, a group of learners might use a computer to surf

over information on the Internet and to talk over, discuss, collect and exhibit what

they found collaboratively(Stahl, G., Koschmann, T., & Suthers, D., 2006).

Page 9

Page 16: Dissertation

DISSERTATION REPORTMay 5, 2011

2.4.4: Designing technology to support CSCL

The aim for design in CSCL is to create artefacts, events and situations that enrich

the practices of group meaning making. Rapid progresses in computer and

communication skills in latest decades, alike the Internet, has intensely altered the

ways in which we work, play, and learn.

As the title of a comment by LeBaron (2002) proposes, “Technology does not exist

independent of its use.” Substitute ‘activities, artefacts, and environments’ for

‘technology’ and the message continues the same—these elements themselves cannot

define different forms of training, but are as an alternative created within practice.

An environment for an anticipated form of practice becomes such through the

organized actions of its natives. Equal activities are only made detectable as such in

the ways that participants turn to them as ordered forms of combined action.

Design of software for CSCL, consequently, must be attached with analysis of the

significances constructed in developing practice. Values reflect past experience and

are open to infinite negotiation and re-evaluation. (Stahl, G., Koschmann, T., &

Suthers, D., 2006).

Page 10

Page 17: Dissertation

DISSERTATION REPORTMay 5, 2011

CHAPTER 3

TECHNICAL BACKGROUND

There are many methods to develop this web system; this chapter is a description of

each technical element which helped building the final system.

3.1: Apache Server

Apache is a free, fully configurable Web server and one of the most popular servers

available at the moment. This server is used to store the webpages, which will be

accessed only by the administrator of the system. FilleZila will be used to transfer the

final files to the server and is a fast, reliable, and secure FTP/SFTP client.

“Apache emphasises a variety of features, many employed as compiled modules

which extend the core functionality. These can range from server-side programming

language backing to authentication schemes. Some usual language interfaces support

Perl, Python, Tcl, and PHP.”(Wikipedia, 2011)

3.2: HTML

HTML is an easy language to use. You don't have to be a programmer to use it. It's a

way of describing how the text and images should be displayed to the user, similar in

to a magazine editor's markup symbols.

3.3: CSS

Page 11

Page 18: Dissertation

DISSERTATION REPORTMay 5, 2011

“Cascading Style Sheets (CSS) are straightforward files that manage the visual

appearance of a Web page without compromising its structure. Using CSS one can

control font size, font colour, link colour, and many other attributes of a web page,

reducing a page's file size.

CSS is a very popular language. Sometimes used only to format text, or as a

substitute for HTML tables.

Without CSS, HTML is used to create all aspects of a site and tables upon tables are

created, to the point that the site’s code becomes hard to navigate and edit through.

This cause the increase the files size and results in an extra time to the page to load.

Nowadays visitors want pages that load almost instantly. (NF3)

3.4: PHP

PHP is very useful if dealing with dynamic text embedded into static text and

correspondingly for incorporating web pages with databases. It is a server-side

scripting language and all the work is done on the server.

If you require embed dynamic text into static text, you’ll come across with PHP

being very useful. It was designed for this, and it excels at it. PHP is also very

beneficial for incorporating web pages with databases.

Figure 1. Description of how PHP works (webucator, 2011)

Page 12

Page 19: Dissertation

DISSERTATION REPORTMay 5, 2011

“As shown in the figure 1, the PHP interpreter processes the page, communicating

with file systems, databases, and email servers as necessary, and then delivers a web

page to the web server to return to the browser.” (webucator, 2011)

3.5: Data Storage

Data storage is required to maintain the system, records needs to be stored and easily

thought and retrieved. The main data storage reviewed here is the database.

3.5.1: Databases

“MySQL is a database management system (DBMS) for relational databases, for that

reason MySQL is an RDBMS (Relational Database Model System).” (Ullman,

2005)

By incorporating a database into a web application, some of the data created by PHP

can be retrieved from MySQL (Figure 2). This additionally moves the site’s contents

from a static (hard-coded) to a flexible one and flexibility is the key to a dynamic

web site. (Ullman, 2005)

Figure 2. Ilustration of the database working. (DatabaseJournal,2011)

Page 13

Page 20: Dissertation

DISSERTATION REPORTMay 5, 2011

3.5.2: MySQL

MySQL is a simple and powerful language to manipulate database systems (F7). The

syntax is easy to use and complex searches can be done easily. There are five

important commands or queries to create databases and tables (Ullman, 2005)

Create – creates tables and databases.

Select – allows the retrieval of information from one or more tables from the

database.

Insert – allows the insertion of new information into a table on the database.

Update –allows the change of information already on the database.

Delete –allows the deletion of data existing in a database table.

3.5.3: PHPMyAdmin

PHPMyAdmin is a tool written in PHP meant to control the administration of

MySQL over the World Wide Web. It can complete numerous jobs such as creating,

modifying or deleting databases, tables, fields or rows; performing SQL statements;

or handling users and permissions.(phpMyAdmin, 2011)

3.5.4: Data Security

The system will be password protected (NF4), and all users will have access to their

own data (F10). The only exception will be administrator that will have full access to

the system. The passwords will be stored on the database that will be encrypted using

the md5 (Message-Digest algorithm 5). MD5 is an extensively used cryptographic

hash function with a 128-bit (16-byte) hash value and is also frequently used to

check the integrity of files. (RFC 1321, 2011)

Page 14

Page 21: Dissertation

DISSERTATION REPORTMay 5, 2011

CHAPTER 4

REVIEW OF PREVIOUS WORK

4.1: Introduction

This section will review the previous webpage, starting with screenshots on figures 3

and 4, and concluding with some recommendations for improvement.

4.2: Screenshots

Figure 3. Screenshot of website main login page.

Page 15

Page 22: Dissertation

DISSERTATION REPORTMay 5, 2011

Figure 4. Screenshot after login

The screen shots on the figures 3 and 4 shows the existing system, one of the

requirements for developing a new system is a existing system is not very attractive

to the users.

One of the reasons to develop a new system is because the actual system is not very

appealing for the users and also after the users login to the next level is not very clear

in what to do. Bellow it’s a table listing some benefits and drawbacks from the actual

system and way the need for developing a new website.

Page 16

Page 23: Dissertation

DISSERTATION REPORTMay 5, 2011

System Properties Actual state of system

Functionality clear for first time user

Overall Usability and user friendliness

Page Load Speed

Accessibility from anywhere

Use of Cascading Style Sheets (CSS)

Table1. Actual System properties

Key: How the properties reflect on this system?

Not very good Good

4.3: Conclusion

The table 1 represents the major system properties, and where it could have some

improvements.

After reviewing the actual system, it’s clear the need of developing a new website.

Whereas it’s a good structured website it’s lacking in user friendliness and also the

first users are not very clear in what to do as soon they log in.

Page 17

Page 24: Dissertation

DISSERTATION REPORTMay 5, 2011

CHAPTER 5

SYSTEM REQUIREMENTS

5.1: Requirements

After analysing the existing system, the new system is described here as user cases.

Use Cases are descriptions of steps or actions between a user and a software system.

Below is drawn in a tabular format the use cases in order to make it more presentable

these diagrams represents the functionality of the system by the user’s point of view.

The functional requirements (what the system supposed to do) are numbered from F1

to F10 and non-functional (how the product should be implemented) requirements

from NF1 to NF6

5.2: Functional Requirements

The table below is representing the use cases

and the functional system requirements of the

system to clarify the project. Use cases are

used to represent the steps or actions between

the system user and the system itself.

Func

tiona

l Req

uire

men

ts

Use

rs L

evel

1 (y

ear

1 st

uden

ts)

Use

rs L

evel

2 (Y

ear

2 st

uden

ts)

Use

r L

evel

3 (A

dmin

istr

ator

)

Post Jobs F1 - ☺ -

Page 18

Page 25: Dissertation

DISSERTATION REPORTMay 5, 2011

Edit posted jobs F2 - ☺ -

View posted jobs F3 ☺ ☺ -

Apply for Jobs F4 ☺ - -

Upload CVs F5 ☺ - -

Create and delete users F6 - - ☺

View and modify the main system database F7 - - ☺

Set new levels to users F8 - - ☺

Use the system at University, home or away F9 ☺ ☺ ☺

Access to personal Information F10 ☺ ☺ ☺

Table 1. Functional Requirements and use cases

5.3: Non-Functional Requirements

The following have been set as properties of the system in a non-functional term:

NF1 The system is designed in a way that is understandable by new users, even

unfamiliar with the system.

NF2 System will run in different browsers

NF3 The design will be easy to maintain and future upgrade

NF4 The system will be secure with different levels of access to users

NF5 The system will be documented in order to aid NF3

NF6 The system will run in different platforms ( different browsers)

Table 2. Non- Functional Requirements

As the system will be on the internet certain data will be stored on a database on the

main server. The system will be written in PHP, due to its portability and object-

oriented capabilities. This style is adopted in order to ensure that the users can reach

the system from any machine connected to the internet (functional use requirement

F9) and also portable across multiple platforms (non-functional requirement NF6).

Page 19

Page 26: Dissertation

DISSERTATION REPORTMay 5, 2011

5.4: Conclusion

This section deals with the user requirements in the system, the table 1 represents the

use cases for the functional requirements and the table 2 represents the non-

functional requirements of the system. The tabular format was chosen the make

easier to understand.

CHAPTER 6

Page 20

Page 27: Dissertation

DISSERTATION REPORTMay 5, 2011

SYSTEM DESIGN

This section covers the design of the system in terms of GUI, database, and also

illustrates some aspects of users levels.

The time plan for this project has been visually expressed in the V-Model style in

software engineering, this model can be considered as an extension to the waterfall

model, the V-Model differs from the waterfall model on the testing phase, whereas

the waterfall model follows phase by phase and testing on the end of the system, the

V-Model each life cycle phase is associated with a test. The V-Model has been

chosen for this project because if there is any mistake on the system development it’s

easy to detect earlier than if using the waterfall model where

6.1: GUI Design

The graphical user interface was designed taking into consideration Nielsen’s

Usability Heuristics (Nielsen, 1993), as one of the conditions to develop the web

application is to ensure the user-friendliness. The Figure 6 illustrates the initial layout

used in the design process.

Figure 6. General GUI Design

Page 21

Area where the contents

of the web site changes.

Page 28: Dissertation

DISSERTATION REPORTMay 5, 2011

6.1.1: General Layout

All the pages have been developed using CSS, to keep the layout similar throughout

the system and making easier to maintain and change the layout of the website and

also reinforce the system requirement (NF3). All the windows have a grey colour

background, overlaid with a white background. The fonts used are Arial, Helvetica or

sans-serif (either one is present on the local system). The font-size is set to 12px.

There are three HTML header sizes (H1, H2, H3) assigned conditional to the

importance of the information displayed on the web site. Figure 7 reviews the

information above.

Figure 7. The layout of components in the system.

Page 22

LOGO

LINKS

AREA

WHERE

THE

CONTENTS

CHANGE

MENU

Page 29: Dissertation

DISSERTATION REPORTMay 5, 2011

6.2: Database Design

The figures 8 and 9 show the design for the database tables. The tables have been

normalized to minimize the unnecessary repetition. “The purpose of database

normalization is to break down relations with anomalies in order to create smaller,

well-structured relations.”(Wikipedia,2011)

Login post_activityusername* id* **login.usernamec_id a_descriptioncompany_id* a_detailss_name company_id* *Login.company_idemail c_detailspasswordyear_id

post_job uploadid* **login.username id* **login.usernamejob_title titledescription descriptioncompany_id data

filenamefilesizefile_type

Figure 8. Tables Login,post_activity, post_job and upload.

TABLES KEY:

DatabaseTable 1 DatabaseTable 2PrimaryKey(Referenced)** PrimaryKey(NotReferenced)*FieldTable1 FieldTable2 Table.Field**AnotherFieldTablke 1 AnotherFieldTablke 1

References

Figure 9. Database Design Tables Key

6.2.1: Table: Login

Page 23

Page 30: Dissertation

DISSERTATION REPORTMay 5, 2011

This table holds information on each user registered by the administrator on the

database. The information stored are the company id, username, student name, e-

mail, password and year id (identifies the level of access the user have). The ID for

this table is generated automatically by the system.

6.2.2: Table: Post_activity

This table holds the posts done by all the students, this is a log book used to control

the students day-to-day activities. This table has five fields described on the table 3.

Table Field Description

id This is an auto increment field.

a_description This field is the activity description ID, the activity main

page will have a drop down menu and each activity will

have an ID that is stored on the database. It goes from a1

to a12.

a01=Traveling for business

a02=Team meeting

a03=Analysis

a04=Research

a05=Drafting documentation

a06=General administration

a07=Writing up meeting

a08=Preparing documentation for client

a09=Drafting and sending emails

a10=Telephone conversation(put who in notes)

a11=Information elicitation interviews

a12=Meeting with client

a_details This field is a text box where the students can describe

Page 24

Page 31: Dissertation

DISSERTATION REPORTMay 5, 2011

their activities.

company_id This is the company ID number and is referred to the table

login.

c_details This is a drop down menu where each activity has an id

from c01 to c05

c01=Face-to-face

c02=Mobile-Phone

c03=E-mail

c04=Electronic chat/Facebook

c05=No team communication

Table 4. Description of the post_activity table on the database

6.2.3: Table: Post_job

This table will hold the jobs that will be posted by the year 2 students; the field id is

the primary key the table 5 will describe each field of the database table.

Table Field Description

id This field is the primary key and also is an auto increment field,

where the system generates automatic the id with every new file

uploaded.

job_title This field holds the title of the job that all students and the system

administrator will see as a list online with a link to each particular

job.

description This field is a description of the job that will be uploaded to the

database. This is visible to all users but only the year 1 students can

apply for the jobs by uploading CVs to specific jobs.

company_id This field holds the company id; this field is also referred to the

Page 25

Page 32: Dissertation

DISSERTATION REPORTMay 5, 2011

company id on the login table.

Table 5. Description of the post_job table on the database.

6.2.4: Table: Upload

This table holds the files uploaded by the students of year 1; these files are only text

files, as the students have to post CVs for each job they apply for. These files are

stored on the database and only year 2 students or the administrator can see then. The

table 6 will describe each field of the database table.

Table Field Description

id Is an auto increment field, where the system generates automatic the id

with every new file uploaded.

title This field is for the students to name the file there is uploading as

convenient to then.

description A brief description of the file uploaded.

data This is the type of data uploaded. Here is used longblob that ranges up

to 4G.

filename This field holds the name of the file uploaded, not the same as the title,

here is the actual file name.

filesize This field holds the actual size of the size uploaded into database.

file_type This field holds the type of file uploaded to the database, on the

system is only allowed the text files.

Table 6. Description of the upload table on the database.

6.4: Conclusion

Page 26

Page 33: Dissertation

DISSERTATION REPORTMay 5, 2011

The system is designed using the v model, this model is used because it enables to

the system to be tested along with the development. This helps to detect errors

earlier, and prevent extra costs and delays on the project. The GUI is based on the

Nielsen’s Heuristics, and is done this way to aid a better user interface design and

create a user friendly website.

CHAPTER 7

SYSTEM IMPLEMENTATION

7.1: The Login System

The login system has been implemented using PHP script; this language is used in

HTML pages. The login page have two levels of access, one for year one and another

for year two. This levels have been created by modifying the login.proc file as it

shows on the figure 10, it has been added a new header function giving two options

of login as it shows highlighted on the figure 10. When a user logs in and is year 1

the year_id established on the database table login as it shows on the figure 8, it goes

to years 1 only page, and when a user logs in with year id equals 2 it goes to years

two webpage, otherwise it goes back to main login page.

The function that connects to the database (hostname, login, username and password)

is kept on a separate file from the login.proc called config.inc, this is done this way

to protect these details, figure 11 shows this file.

<?php

// Inialize session

session_start();

// Include database connection settings

Page 27

Page 34: Dissertation

DISSERTATION REPORTMay 5, 2011

include('config.inc');

// Retrieve username and password from database according to user's input

$login = mysql_query("SELECT * FROM login WHERE (username = '" .

mysql_real_escape_string($_POST['username']) . "') and (password = '" .

mysql_real_escape_string(md5($_POST['password'])) . "')");

// Check username and password match

if (mysql_num_rows($login) == 1) {

// Set username session variable

$_SESSION['username'] = $_POST['username'];

$row = mysql_fetch_assoc($login);

if($row['year_id']==1)

{

// Jump to secured page for second year students

header('Location: year1homepage.php');

}

else

{

// Jump to secured page for first year students

header('Location: year2homepage.php');

}

}

else {

// Jump to login page

header('Location: index.php');

}

mysql_free_result($login);

?>

Figure 10. Login.proc file source code.

Page 28

Page 35: Dissertation

DISSERTATION REPORTMay 5, 2011

<?php

$hostname = 'localhost'; // Your MySQL hostname.

$dbname = 'business_project'; // Your database name.

$username = 'root'; // Your database username.

$password = '131520'; // Your database password.

// Connect to host

mysql_connect($hostname, $username, $password) or DIE('Connection to host is

failed, perhaps the service is down!');

// Select the database

mysql_select_db($dbname) or DIE('Database name is not available!');

?>

Figure 11. Source code for the login.proc file

7.2: Querying the Database

The project required a construction of a set of tools to make connection and

manipulating the database. A selection of MySQL specific queries have been used to

do this specific job.

In order to access the database the same query is used to all pages developed, making

easy to maintain and future upgrade (NF3). Below highlighted on figure 12 is an

example on how the PHP files are written.

<?php

# ensure all fields have entries

if( $s_id and $a_description and $a_details)

{

Page 29

Page 36: Dissertation

DISSERTATION REPORTMay 5, 2011

# connect to MySQL

$conn=@mysql_connect("localhost", "root", "131520")

or die("Err:Conn");

# select the specified database

$rs=@mysql_select_db("business_project", $conn)

or die("Err:Db");

# create the query

$sql="insert into post_activity (s_id, a_description, a_details)

values ( \"$s_id\", \"$a_description\", \"$a_details\" )";

# execute the query

$rs1=mysql_query($sql,$conn);

# confirm the added record details

print "<head></head><body><b>Record for $s_id successfully added to the

database</b></body>";

}

?>

Figure 12. Database Query

7.3: Problems with the System

All the information that is used by the system is input via HTML forms. These forms

were sometimes in single pages and sometimes over several pages. In order to pass

this forms information to the database PHP is used and a way to keep the users

records is needed (which is one of main problems encountered on this project). As

the HTTP is a stateless technology, meaning that each individual HTML page is an

isolated entity. HTTP has no method for tracking users or holding variables as

Page 30

Page 37: Dissertation

DISSERTATION REPORTMay 5, 2011

somebody go across a site. Using a web scripting language like PHP, it disables the

statelessness of the web. From a few options to choose, the most used ones are

cookies and sessions. (Ullman, 2005)

7.3.1: Description of the problem

One of the main problems was doing the login page were the users needed to have

levels of access and when a user login and navigates for through the pages the server

could track the user, and make custom personalization to the specific user, and the

most important only the users with login and password could see through the web

pages.

Cookies and session could be used to do this job; sessions improve upon cookies,

letting the web application to store and retrieve far more information than cookies.

7.3.2: Strategy

The use of sessions was chosen to overcome this problem. This like cookies is a

method of making data available to multiple pages of a web site. The principle of a

session is that data is stored on the server, not in the web browser, and a session

identifier is used to locate a particular user’s record (session data). This session

identifier is normally stored in the web browser via a cookie, but the sensitive data

itself―like the user’s ID, name, and so on―always remains on the server. So why

use session if cookies work fine? Firstly because sessions are more secure in that all

the recorded information is stored on the server and not continually sent back and

forth between the server and the client. Secondly, some users reject cookies or turn

then off completely. Sessions, while designed to work with cookie, can function

without them. (Ullman, 2005)

Page 31

Page 38: Dissertation

DISSERTATION REPORTMay 5, 2011

The figure 13 shows the use of a session starting by calling the session_start()

function. This session tell the PHP to either begin a new session or use the existing

one, on this case will use the use the existent session.

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php'); }

Figure 13. The use of session.

7.4: System Screen-Shoots of the System

Figure 14. Main Page (login page)

Page 32

Page 39: Dissertation

DISSERTATION REPORTMay 5, 2011

7.4.1: Year 2 Students Screen-shoots

Figure 15. Year 2 students Login showing the user name and the company they

belong to.

Page 33

Page 40: Dissertation

DISSERTATION REPORTMay 5, 2011

Figure 16. Year 2 students posting a job page

Figure 17. List of jobs posted by the year 2 students

Figure 18. Job Details Year 2 students can see the jobs they posted.

Page 34

Page 41: Dissertation

DISSERTATION REPORTMay 5, 2011

7.4.2: Year 1 Students Screen-shoots

Figure 19. Login as studend of year 1

Figure 20. List of jobs available.

Page 35

Page 42: Dissertation

DISSERTATION REPORTMay 5, 2011

Figure 21. Description of the job.

Figure 22. CVs upload page.

Page 36

Page 43: Dissertation

DISSERTATION REPORTMay 5, 2011

Figure 23. File being uploaded.

7.4.3: Log Book screen shoots for all students

Page 37

Page 44: Dissertation

DISSERTATION REPORTMay 5, 2011

Figure 24. Log Book page

Figure 25. Log Book page 2

7.5: Conclusion

Page 38

Page 45: Dissertation

DISSERTATION REPORTMay 5, 2011

This chapter described the tools used to access the database and how the information

will be transferred from the user to the database. Also the main problem while doing

this project and finishing with the screen shoots of the finished system.

CHAPTER 8

TESTING

Testing has been performed in order to ensure that the system would accomplish its

functions as set out in the requirements. There are two different ways of testing a

system, the white-box testing were requires the access the source code, and the

black-box testing, which looks at what the system is supposed to do. On this testing

the specific knowledge of the application's code/internal structure and programming

knowledge in general is not required.

On this system the black box testing, usability testing and data integrity testing will

be performed.

8.1: Black Box Testing

Page 39

Page 46: Dissertation

DISSERTATION REPORTMay 5, 2011

Test

No

Description Expected result Actual result Pass/

Fail

01 Validation on

login form for

all students

If any input is blank it

should return to login

page

If a field is left blank

and the users

submits the system

will go back to

initial page

Pass

02 Validation on

login form input

details for all

students

If details match those in

the database, then it

logs in, otherwise it goes

back to login page

Validation compares

against details in the

database, stays at

login page otherwise

Pass

03 Validation on

register form

If any input is blank it

should return an error

message

An error messages

does not shows if

there is a blank field

Fail

04 Year 2 students

log in to the

system and

company name

shows on the

welcome page

If year 2 students login to

the system the company

they belong displays on

the top of the page

The company name

do not show, and an

error message

appears

Fail

05 Year 2 students

log in to the

system and

company name

shows on the

welcome page

If year 2 students login to

the system the company

they belong displays on

the top of the page

The company name

does shows on top of

the page

Pass

06 Year 2 students

can save jobs to

the database

If year 2 students fill the

form the information is

saved on the database

All the information

is not saved on the

database.

Fail

07 Year 2 students If year 2 students fill the All the information Pass

Page 40

Page 47: Dissertation

DISSERTATION REPORTMay 5, 2011

can save jobs to

the database

form the information is

saved on the database

is saved on the

database.

08 All users are

able to see a list

of jobs saved on

the database

All the jobs saved on the

database are called from

the database and

displayed on a list with

links to each specific job

All the jobs saved on

the database are

called from the

database and

displayed on a list

without links to each

specific job. Error

message: “cannot

connect to the

database”.

Fail

09 All users are

able to see a list

of jobs saved on

the database

All the jobs saved on the

database are called from

the database and

displayed on a list with

links to each specific job

All the jobs saved on

the database are

called from the

database and

displayed on a list

with links to each

specific job

Pass

10 All users can

click on the jobs

links and see the

job description,

but only year 1

students can

apply to the jobs

posted

All users can click on the

jobs links and see the job

description, but only year

1 students can apply to

the jobs posted

All users can click

on the jobs links and

see the job

description, only

showing the apply

button for year 1

students

Pass

11 Only text files

are allowed for

upload, not

Only text files are

allowed for upload, if

trying to download a

When trying to

download a different

type of file an error

Pass

Page 41

Page 48: Dissertation

DISSERTATION REPORTMay 5, 2011

pictures or other

files

different file it shows an

error message

message display.

12 Year 1 students

uploading files

When year 1 students

apply for a specific job,

the CV can be uploaded

and saved on the

database.

The file is saved on

the temp file instead

of the database

Fail

13 Year 1 students

uploading files

When year 1 students

apply for a specific job,

the CV can be uploaded

and saved on the

database

The file is saved on

the temp file and

them to the database

Pass

14 Validation on

entry form

If any input is blank it

should return an error

message

Any blank fields

does not return an

error message

Fail

All users can

post on the log

book session

All information entered

on the forms on the log

book session is sent to

the database

Information entered

on the forms of the

log book session is

not sent to the

database

Fail

15 All users can

post on the log

book session

All information entered

on the forms on the log

book session is sent to

the database

Information entered

on the forms of the

log book session is

not sent to the

database and error

message displays

that cannot connect

to the database.

Fail

16 All users can

post on the log

All information entered

on the forms on the log

Information entered

on the forms, shows

Fail

Page 42

Page 49: Dissertation

DISSERTATION REPORTMay 5, 2011

book session book session is sent to

the database

that has been send to

the database but is

not in the database

17 All users can

post on the log

book session

All information entered

on the forms on the log

book session is sent to

the database

Information entered

on the forms, shows

that has been send to

the database but is

not saved in the

database and a blank

page displays.

Fail

18 All users can

post on the log

book session

All information entered

on the forms on the log

book session is sent to

the database

Information entered

on the forms, is send

and saved to the

database.

Pass

19 When users

login and can

see their posts

on the log book

Users’ login and can see

their posts on the log

book.

Users’ login and can

see their posts on the

log book.

Pass

20 Removing jobs If a job is not needed

anymore only the site

administrator can delete

the jobs via database.

Jobs are deleted

from the database.

Pass

21 Adding new

user

Users will be added by

the system administrator

via phpMyAdmin

Users will be added

by the system

administrator via

phpMyAdmin

Pass

22 Users

information

All the users’

information will be

added by the website

administrator via

User’s information

added to the

database.

Pass

Page 43

Page 50: Dissertation

DISSERTATION REPORTMay 5, 2011

phpMyAdmin, including

the password which will

be stored using md5

encryption.

23 Edit account Only the system

administrator can edit the

users account details via

pfpMyAdmin.

Users information

can be edited.

Pass

24 Logout Wen logout button is

pressed, it logs the user

out

When logout button

is pressed, it logs the

user out of the

system.

Pass

25 Entering the

system without

logging in

If a user tries to enter the

system via a certain page,

and they are logged out,

it should take them to the

login page

If user is not logged

in and try to enter

the system, they are

redirected to the

login page

Pass

26 Forgot password When user enters their

email, it sends them an

email with their

password

Error message: no

SMTP server setup

Fail

8.1.1.: Text Areas

All text area applied in the system, the user does not have to enter anything on them,

they are compulsory for the process to continue. This is done this way because of

lack of knowledge of doing in a different way; this could be a possible improvement

for the future work.

Page 44

Page 51: Dissertation

DISSERTATION REPORTMay 5, 2011

8.1.2: Password Fields

Password fields are used when logging in the system. Password fields always need to

be filled. The main test that is done on them is whether the user has entered any

value and whether the value entered for the combination of two field’s (username

and password) match with the database.

8.1.3: Text Fields

Text fields are very important information into the system. As the text area the user

does not have to enter anything on them, they are compulsory for the process to

continue. This also could be a possible improvement for the future work.

8.2: Usability Test

Usability testing was conducted by allowing users to test the system. Because the

system was not ready on the time planned it couldn’t be tested by all the students,

instead friends have been used to do this testing.

Initially users complained that the login page did not have any way of recovering the

password in case of forgetting it. If a user forgets a password the system

administrator has to re send the password via e-mail again. The system has been done

this way because was required that the users login with the university user IDs, but

could be changed in the future allowing the students to create their usernames and

passwords.

Another idea suggested was to display an error message or a warning if any entry

was not entered on the login and all the other forms on the system, this could be

added later into the system.

Overall, the usability of the system was OK. There are a few problems with the

forms and error display messages that would call for a redesign in order to make the

system better. The placement of error or warning messages would benefit the system

as a whole.

Page 45

Page 52: Dissertation

DISSERTATION REPORTMay 5, 2011

8.4: Conclusion

Testing the text fields, password fields and text areas have been conducted in order to

validate the data to be kept on the database.

The main reason for a black box testing is to test the functionality of the system as a

whole. Also these tests are used to demonstrate that the input is properly accepted

and output is correctly produced, and that the integrity of external information is

maintained. (Product Developers, 2011)

CHAPTER 9

CONCLUSION

9.1: Achievements

There were several objectives to be accomplished on this project which most of them

successfully completed. The main achievements were:

Creation of a system that not only works but also is user friendly.

Implementation of a set of Query classes to access and manipulate the

database.

Used the learned skills during the last two years and apply the technology of

PHP, CSS, HTML, MySQL, Apache Server, between other.

Developed a database were users can save their data securely.

Use the principle of e-learning to aid the development of the system.

Page 46

Page 53: Dissertation

DISSERTATION REPORTMay 5, 2011

9.2: Evaluation

Certainly this project could not have been more exciting, sometimes being

challenged to the limit of your abilities to improve yourself and do better. Many

times working under pressure, but all of this is a part of learning and makes this

project even more special.

The work was mostly gone according to the plan, with some problems when passing

the system from the local server where it was being developed to the University

server; this caused a big problem and result in not delivering the project on time

required by the students. This was very frustrating but did not permit the failure of

the project.

The opportunity to research into e-learning and collaborative learning patterns and

use it to aid the development of this project was very interesting. E-learning was one

of the principles of this project as the system being online on the World Wide Web,

delivering student’s information and playing an active role in the way they learn.

The use of collaborative learning ideology also was very important because this

project had an effect on the year one and two students which were working in a

collaborative way to reach the end of their project.

It was very interesting also, to read about Computer-supported collaborative learning

which is an emerging branch of the learning sciences concerned with studying how

people can learn together with the help of computers.(Stahl, G., Koschmann, T., &

Suthers, D., 2006).

9.3: Future Development

If the work had to start again, it could be better in many ways. Firstly in the login

page a way of recovering a lost or forgotten password could be included, as well as

error messages or warning messages if any field left in blank. The text field boxes

Page 47

Page 54: Dissertation

DISSERTATION REPORTMay 5, 2011

could be improved by adding a word count and when reaching the limit of the words

a warning message could be displayed.

The most important step, when looking into the future, is maybe that this project

should be implemented by creating back end structure were the website administrator

did not have to go in the phpMyAdmin to add, edit or delete users. Furthermore

when a year 2 student posted a job a button to edit or delete the job posted could be

added to facilitate in case or mistakes done when posting a job.

BIBLIOGRAPHY

Berge, Z., & Collins, M.P. (Eds.). (1995). Computer-mediated communications and

the online classroom, Vol. III: Distance Learning. Cresskill, NJ: Hampton Press.

Cahoon, B. (1998). New directions for adult and continuing education, summer, No.

78, Adult Learning and the Internet. San Francisco: Jossey-Bass.

Chiu, M. M. (2000). Group problem solving processes: Social interactions and

individual actions. Journal for the Theory of Social Behavior, 30, 1, 27-50.600-631.

Chiu, M. M. (2008). Flowing toward correct contributions during groups'

mathematics problem solving: A statistical discourse analysis. Journal of the

Learning Sciences, 17 (3), 415 - 463.

Chiu, M. M. (2008). Effects of argumentation on group micro-creativity.

Contemporary Educational Psychology, 33, 383 – 402.

Page 48

Page 55: Dissertation

DISSERTATION REPORTMay 5, 2011

CodeBetter[online].Available:http://codebetter.com/blogs/raymond.lewallen/

archive/2005/07/13/129114.aspx [Accessed 23 April,2010].

Collaborative0Learning0Org.[online].Available:

http://collaborative-learning.org/collaborative-learning-as-a-teaching-

philosophy.html [Accessed 15 April,2010].

Collis, B. (1996). Tele-learning in a digital world: The future of distance learning.

New York: International Thomson Computer Press.

Cyrs, T.E. (Ed.). (1997). New directions in teaching & learning, fall, No. 71,

Teaching & learning at a distance: What it takes to effectively design, deliver, &

evaluate programs.

Database0Journal.0[Online],0Available:http://www.databasejournal.com/features/

mysql/article.php/1402281/Build-Your-Own-Database-Driven-Website-Using-PHP--

MySQL-Pt-4.htm [Accessed 27 March 2010].

Daily Blog Tips. [Online], n.d. Available: http://www.dailyblogtips.com/user-

friendly-website/ [Accessed 28 November 2010].

Dillenbourg, P. (1999). Collaborative Learning: Cognitive and Computational

Approaches. Advances in Learning and Instruction Series. New York, NY: Elsevier

Science, Inc.

Eastman, D.V. (1995). Alone but together: Adult distance study by computer

conferencing. Cresskill, NJ: Hampton Press.

Henshaw, P. (2010) ICT and the future of education [Online], Available from

http://www.sec-ed.co.uk/downloads/dell.pdf [Accessed 28 October 2010].

Page 49

Page 56: Dissertation

DISSERTATION REPORTMay 5, 2011

Hmelo-Silver, C.E. (2006). Analyzing collaborative learning: Multiple approaches to

understanding processes and outcomes. Proceedings of the 7th international

conference on Learning sciences, USA, 1059-1065. ISBN:0-8058-6174-2

Hockinson, [Online]. Available: http://www.hockinson.com/index.php?s=32

[Accessed 28 November 2010]

HTMLOrg, [Online]. Available: http://html5.org/ [Accessed 28 November 2010]

Leung, Hareton K. N.(2003) 'Evaluating the Effectiveness of e-Learning', Computer

Science Education, 13: 2, 123 — 136

Leigh b., MacGregor T. (1992). Collaborative Learning: A Sourcebook for Higher

Education. National Centre on Postsecondary Teaching, Learning, and Assessment at

Pennsylvania State University.

Mitnik, R., Recabarren, M., Nussbaum, M., & Soto, A. (2009). Collaborative

Robotic Instruction: A Graph Teaching Experience. Computers & Education, 53(2),

330-342.

Nielsen, J. (1993). “Usability Engineering” – Academic Press

phpMyAdmin, [Online]. Available: http://www.phpmyadmin.net/home_page/

[Accessed 28 April 2010]

Porter, L.R. (1997). Creating the virtual classroom: Distance learning with the

internet. New York: Wiley Computer Publishing, John Wiley & Sons, Inc.

Product Developers, [Online]. Available: http://productdevelop.blogspot.com/

[Accessed 05 April 2010]

Page 50

Page 57: Dissertation

DISSERTATION REPORTMay 5, 2011

RFC 1321, section 3.4, "Step 4. Process Message in 16-Word Blocks", page 5.

Stahl, G., Koschmann, T., & Suthers, D. (2006). Computer-supported collaborative

learning: An historical perspective. In R. K. Sawyer (Ed.), Cambridge handbook of

the learning sciences (pp. 409-426). Cambridge, UK: Cambridge University Press.

Ullman, L. (2005). PHP and MySQL for Dynamic Web Sites. New York: Peachpit

Press,

University0of0Edunburgho[Online],0n.d.0Available:0www. project s.ed.ac.uk/.../

ProjectProposal 20067_UWS.doc [accessed 28 November 2010].

Volery, T., & Lord, D. (2000). Critical success factors in online education.

International Journal of Educational Management, 14(5), 216–223.

WebCT homepages. (2002). [Online] http://www.webct.com [Accessed 10 April

2011].

Webopedia0homepages(2011).0[Online]0Available:http://www.webopedia.com/TERM/A/Apache_Web_server.html [Accessed 10 April 2011].

Webucator0homepages(2011).0[Online]0Available:0http://www.learnphp-tutorial.com/ [Accessed 10 April 2011].

Whittington, D. (2000). Evaluating three years’ use of virtual university. Quality

Assurance in Education, 8(1), 48–52.

Wikipedia0[Online],0n.d.0Available:http://en.wikipedia.org/wiki/V-

Model_(software_development) [Accessed 28 November 2010].

WMTips.0[Online],0n.d.0Available:0WikipediaOhttp://www.wmtips.com/css/

advantages-using-css.htm [Accessed 28 November 2010].

Page 51

Page 58: Dissertation

DISSERTATION REPORTMay 5, 2011

APPENDIX I – TIME PLAN

TIME PLAN BREAKDOWN

PROJECT PLANProject Name: Business Project for Years 1&2 DatabaseProject Manager: Maria CisilottoPlanned Start Date:25/10/2010Planned Finish Date:05/05/2011

Page 52

Page 59: Dissertation

DISSERTATION REPORTMay 5, 2011

Summary DurationID Task Name Duration Start Finish1 INITIATION

1.1 Establish Project Requirements 2 weeks Mon 25/10/2011 Mon 08/11/20101.1.1 Identify Project Scope1.1.2 Identify Project Structure1.1.3 Identify Project Processes1.1.4 Document Project Requirements

2 PLANNING2.2 Create Project Plan 1 week Tue 02/11/2010 Tue 09/11/2010

2.1.1 Identify Phases2.1.2 Identify Activities2.1.3 Identify Tasks2.1.4 Document Project Plan

3 EXECUTION3.1 Build/Design Deliverables

3.1.1 System Design/ Layout 2 weeks Mon 15/11/2010 Mon 29/11/20103.1.2 Database and back-end development(Use of DFD and ERD)2 weeks Tue 14/12/2010 Tue 28/12/20103.1.3 Testing the back-end development 1 day Tue 28/12/2010 Wed 29/12/20103.1.4 Back-end modifications 2 days Wed 29/12/2010 Fri 31/12/20103.1.5 Testing the back-end Modifications 1 day Tue 04/01/2011 Wed 05/01/20113.1.6 Project Designs 2 weeks Thu 06/01/2011 Thu 20/01/20113.1.7 Front-end development 1 day Mon 24/01/2011 Tue 25/01/20113.1.8 Testing front-end development 1 day Wed 26/01/2011 Thu 27/01/20113.1.9 Front-end modifications 1 day Thu 27/01/2011 Fri 28/01/20113.1.10 Testing front-end modifications 1 day Mon 31/01/2011 Tue 01/02/20113.1.11 Students Activities Monitoring page development 1 Week Mon 24/01/2011 Mon 31/01/20113.1.12 Testing Students Activities Monitoring page 1 day Tue 01/02/2011 Wed 02/02/20113.1.13 Students Activities Monitoring page modifications 2 days Wed 02/02/2011 Fri 04/02/20111.1.14 Testing Students Activities Monitoring page modifications 1 day Fri 04/02/2011 Sat 05/02/20113.1.15 Test Project Deliverables 2 days Mon 07/02/2011 Wed 09/02/20113.1.16 Implement Project Deliverables 63 days Mon 15/11/2010 Wed 09/02/2011

4 CLOSURE4.1 Perform Project Closure

4.1.1 Evaluation 1 day Mon 14/02/2011 Tue 15/02/20114.1.2 Project Final Report 1 day Wed 16/02/2011 Thu 17/02/2011

Page 53

Page 60: Dissertation

DISSERTATION REPORTMay 5, 2011

TASK ID Task Name Start DateDuration (days)

End Date

TASK 1 System Design/ Layout 15/11/10 14 29/11/2010TASK 2 Database and back-end development(Use of DFD and ERD) 14/12/10 14 28/12/2010TASK 3 Testing the back-end development 28/12/10 1 29/12/2010TASK 4 Back-end modifications 29/12/10 2 31/12/2010TASK 5 Testing the back-end Modifications 4/1/11 1 05/01/2011TASK 6 Project Designs 6/1/11 14 20/01/2011TASK 7 Front-end development 24/1/11 1 25/01/2011TASK 8 Testing front-end development 26/1/11 1 27/01/2011TASK 9 Front-end modifications 27/1/11 1 28/01/2011TASK 10 Testing front-end modifications 31/1/11 1 01/02/2011TASK 11 Students Activities Monitoring page development 24/1/11 7 31/01/2011TASK 12 Testing Students Activities Monitoring page 1/2/11 1 02/02/2011TASK 13 Students Activities Monitoring page modifications 2/2/11 2 04/02/2011TASK 14 Testing Students Activities Monitoring page modifications 4/2/11 1 05/02/2011TASK 15 Test Project Deliverables 7/2/11 2 09/02/2011TASK 16 Implement Project Deliverables 10/3/11 1 11/03/2011TASK 20 Implement Project Deliverables 15/11/10 64 09/02/2011TASK 21 Evaluation 28/03/2011 1 29/03/2011TASK 22 Project Learning outcomes 28/03/2011 1 29/03/2011

Gantt chart

Page 54

Page 61: Dissertation

DISSERTATION REPORTMay 5, 2011

APPENDIX II – SOURCE CODE

1-default.css

/* Main Layout Styles */

body {background: #EBEBEB; font-family: Arial, Helvetica, sans-serif; font-size:

12px; color: #666;}

.right {float: right;}

.left {float: left;}

img {border: none;}

ul, li {margin: 0; padding: 0; list-style: none;}

form {margin: 0; padding: 0;}

a {color:#0088B5; font-weight: bold; }

a:hover {color: #0078A0; }

#container {width: 930px; padding: 15px; -moz-border-radius: 13px; background:

#fff; margin: 10px auto; overflow: auto;}

#content {width: 930px; overflow: auto;}

#header {width: 930px; height: 55px;}

.logo {margin: 15px; float: left;}

ul#toplinks {float: right; color: #999; margin: 0; padding: 0; list-style:

none;}

ul#toplinks li {float: right; margin: 3px 0 0 10px;}

ul#toplinks a { color: #999; font-weight: normal;}

ul#toplinks a:hover { color: #666; font-weight: normal;}

#nav {padding: 0; width: 910px; background: #008DBC

url(images/bg_nav.png) repeat-x bottom; padding: 9px 0 10px 20px; -moz-border-

Page 55

Page 62: Dissertation

DISSERTATION REPORTMay 5, 2011

radius: 10px; color: #fff; height: 12px; margin: 15px 0;}

#nav li {padding-right: 20px; float: left; display: block;}

#nav a {color: #fff; text-decoration: none; font-weight: normal;}

#nav a:hover {color: #33CCFF;}

#footer {width: 960px; text-align: center; margin: 10px auto; padding-bottom:

15px; clear: both;}

#footer ul {width: 380px; margin: 0 auto;}

#footer li{float: left; margin-right: 20px;}

#footer li a{color: #999;}

/* Homepage Styles */

#topbox {width: 890px; padding: 20px; -moz-border-radius: 10px;

background: #00ACE6 url(images/bg_fptopbox.png) repeat-x bottom; overflow:

auto; color: #fff;}

#topbox h4 {color: #fff; font-size: 20px; letter-spacing: -1px; margin:

0; padding: 0 0 5px 0; }

#topbox input {border: 1px solid #0093C4; padding: 3px 3px; width:

230px;}

#topbox select {margin-left: 3px;}

#topbox .btn {padding: 3px 5px; background: #004055; color: #fff;

border: none; -moz-border-radius: 3px; position:absolute; margin-left: 5px; cursor:

pointer; width: 60px; font-size: 11px;}

#topbox .btn:hover {background: #005773; }

#tbleft {float: left; width: 450px; padding: 15px 0 0 10px;}

#tbleft .tld {width: 75px;}

#tbright {font-size: 12px; float: right; width: 390px; border-left: 1px

solid #00ACE5; padding-left: 15px;}

Page 56

Page 63: Dissertation

DISSERTATION REPORTMay 5, 2011

#tbright #boxleft {float: left; width: 225px;}

#tbright input {width: 145px; margin: 5px 0 0 5px;}

#tbright p {float: right; margin: 0; padding: 0;}

#tbright p.link {float: left; margin: 13px 0 0 10px; font-size:

11px; padding: 0;}

#tbright a {color: #fff; text-decoration: underline;}

ul#promobox {width: 930px; position: relative; float: left; margin-bottom:

15px;}

ul#promobox p {margin: 0; padding: 0;}

ul#promobox li {width: 270px; padding: 20px 10px 20px 20px; float:

left; background: #008DBC url(images/bg_promo1.png) repeat-x bottom; margin:

15px 15px 0 0; -moz-border-radius: 10px; color: #fff; }

ul#promobox ul {margin: 0 0 10px 0;}

ul#promobox li ul li {margin: 5px 0 0 0; background:

url(images/bullet.png) no-repeat left center; padding: 0 0 0 10px; width: 250px;}

ul#promobox li h3 {line-height: 1; color: #fff; letter-spacing: -

1px; font-size: 25px; float: left; margin: 0; padding: 0 0 3px 0;}

ul#promobox li .pricebox {line-height: 1; float: right; text-

align: center; padding-right: 10px;}

ul#promobox li .pricebox .lrg {line-height: 1; letter-spacing: -

1px; font-size: 35px; font-weight: bold; margin: 0; padding: 0;}

ul#promobox a {background: #004055; color: #fff; margin:

15px 10px 0 0; padding: 5px 10px; text-decoration: none; -moz-border-radius: 5px;

font-weight: normal;}

ul#promobox a:hover {background: #005773;}

.jobslist { background:none !important; padding:0 !important;

float:none !important; margin-top: 20px !important; }

.promobox2 { width: 500px !important;

background:#008DBC !important; padding: 20px 10px 20px 20px !important;

Page 57

Page 64: Dissertation

DISSERTATION REPORTMay 5, 2011

float:middle !important; margin: 15px 10px 0 0 !important; }

.promobox3 { width: 300px !important;

background:#008DBC !important; padding: 20px 10px 20px 20px !important;

float:middle !important; margin: 15px 10px 0 0 !important; }

ul#promobox li.two{background: #00ACE6

url(images/bg_promo2.png) repeat-x bottom;}

ul#promobox li.three {margin-right: 0; background: #09C1FF

url(images/bg_promo3.png) repeat-x bottom;}

#newsbox {width: 575px; padding: 20px; background: #f7f7f7; float: left; -

moz-border-radius: 10px;}

#newsbox p {margin: 0; padding: 0;}

#newsbox h5 {font-size: 25px; letter-spacing: -1px; color: #006C91;

margin: 0; padding: 0; line-height: 1;}

#newsbox h6 a {font-size: 14px; letter-spacing: -1px; color: #006C91;

margin: 0; padding: 0; line-height: 1;}

#newsbox h6 {margin-bottom: 2px; padding: 0; line-height: 1;}

#newsbox li {margin-top: 15px; line-height: 1.5em;}

#newsbox .rss a{float: right; margin: 3px 8px 0 0; color: #999; font-

weight: normal;}

#quotes {width: 260px; padding: 20px; float: right; background: #09C1FF

url(images/bg_promo3.png) repeat-x bottom; -moz-border-radius: 10px; color: #fff;}

#quotes p {margin: 0; padding: 0;}

#quotes h3 {line-height: 1; letter-spacing: -1px; font-size: 25px;

margin: 0; padding: 0;}

#quotes li {margin-top: 17px; font-size: 17px; font-weight: bold;

letter-spacing: -1px;}

#quotes a {float: left; color: #fff; padding: 0; margin-top: 15px;}

Page 58

Page 65: Dissertation

DISSERTATION REPORTMay 5, 2011

2- index.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Business Project</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

<div id="header">

<ul id="toplinks">

</ul>

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

<ul>

<li><a href="index.php">Home</a></li>

<li><a href="content.html">Contact </a></li>

</ul>

</div>

<div id="topbox">

<div id="tbleft">

<h4> Welcome to the Business Project Webpage</h4>

</div>

<div id="tbright">

<form method="POST" action="loginproc.php">

<div id="boxleft">

Page 59

Page 66: Dissertation

DISSERTATION REPORTMay 5, 2011

<p><label for="username">Username:</label><input

name="username" type="text" value="" id="username" /></p>

<p><label for="password">Password:</label><input

type="password" name="password" value="" id="password" /></p>

</div>

<div id="boxright">

<input name="Login" type="submit" class="btn" value="submit"

style="position: relative;"/></div>

</form>

</div>

</div>

<p>&nbsp;</p>

<div id="newsbox">

<h5>Introduction to the Project</h5>

<ul>

<li>

<h6><a href="content.html">Project Overview:</a></h6>

<p>This project is unique in that is designed to allow collaboration

between 1st and 2nd years students in the BITE department,</p>

</li>

<li>

<h6><a href="content.html">News story title would go here</a></h6>

<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam

nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p>

</li>

<li>

<h6><a href="content.html">News story title would go here</a></h6>

<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam

nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p>

</li>

Page 60

Page 67: Dissertation

DISSERTATION REPORTMay 5, 2011

</ul>

</div>

<p>&nbsp;</p>

<img src="medway2.jpg" alt="Logo" /></p>

</div>

<p>&nbsp;</p>

</div>

<div id="footer">

<ul>

<li><a href="http://www2.gre.ac.uk">University Of Greenwich</a></li>

<li><a href="https://portal.gre.ac.uk/cp/home/displaylogin">Student

Portal</a></li>

<li><a href="http://wwww.gre.ac.uk/students/get">GET</a></li>

</ul>

</div>

</body>

</html>

3-year1homepage.php

<?php

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php');

}

?>

Page 61

Page 68: Dissertation

DISSERTATION REPORTMay 5, 2011

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Hosting Template</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

<div id="header">

<ul id="toplinks">

<li><a href="logout.php">Logout</a></li>

</ul>

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

<ul>

<li><a href="index.php">Home</a></li>

<li><a href="content.html">Contact </a></li>

</ul>

</div>

<ul id="promobox">

<p><b>Username: <b><?php echo $_SESSION['username']; ?></b><p>

<li>

<p><a href="show_jobsbynameCO.php" title="Post Jobs">Jobs Available</a></p>

</li>

<li>

<p><a href="post_activity1.php" title="Log Book">Log

Book</a><a href="show_activitiesbystudent.php" title="See Logs">See

Page 62

Page 69: Dissertation

DISSERTATION REPORTMay 5, 2011

Logs</a></p>

</li>

<p>&nbsp;</p>

<img src="medway2.jpg" alt="Logo" /></p>

</ul>

</div>

<div id="footer">

<ul>

<li><a href="http://www2.gre.ac.uk">University Of Greenwich</a></li>

<li><a href="https://portal.gre.ac.uk/cp/home/displaylogin">Student

Portal</a></li>

<li><a href="http://wwww.gre.ac.uk/students/get">GET</a></li>

</ul>

</div>

</body>

</html>

4- year2homepage.php

<?php

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php');

}

?>

Page 63

Page 70: Dissertation

DISSERTATION REPORTMay 5, 2011

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Hosting Template</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

<div id="header">

<ul id="toplinks">

<li><a href="logout.php">Logout</a></li>

</ul>

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

<ul>

<li><a href="index.php">Home</a></li>

<li><a href="content.html">Contact </a></li>

</ul>

</div>

<ul id="promobox">

<p><b>Username: <b><?php echo $_SESSION['username']; ?></b><p>

Company ID:

<?php

# connect to MySQL

$connection = @mysql_connect("localhost", "root", "131520")

or die(mysql_error());

Page 64

Page 71: Dissertation

DISSERTATION REPORTMay 5, 2011

# select the specified database

$result = @mysql_select_db("business_project", $connection)

or die(mysql_error());

# set up table name

$table_name = "post_job";

# create the query

$sql = "SELECT company_id FROM $table_name ORDER BY

company_id";

# execute the query

$result = mysql_query($sql,$connection)

or die(mysql_error());

#create a list block of results

while( $row = mysql_fetch_array($result))

{

$company_id = $row['company_id'];

}

echo $company_id;

?>

<li>

<p><a href="post_job2.php" title="Post Jobs">Post Jobs</a><a

href="show_jobsbynameCO2.php" title="See Jobs">Jobs Posted</a></p>

</li>

<li>

<p><a href="post_activity1.php" title="Log Book">Log

Book</a><a href="show_activitiesbystudent.php" title="See Logs">See

Page 65

Page 72: Dissertation

DISSERTATION REPORTMay 5, 2011

Logs</a></p>

</li>

<p>&nbsp;</p>

<img src="medway2.jpg" alt="Logo" /></p>

</ul>

</div>

<div id="footer">

<ul>

<li><a href="http://www2.gre.ac.uk">University Of Greenwich</a></li>

<li><a href="https://portal.gre.ac.uk/cp/home/displaylogin">Student

Portal</a></li>

<li><a href="http://wwww.gre.ac.uk/students/get">GET</a></li>

</ul>

</div>

</body>

</html>

5-add_job.php

<?php

# ensure all fields have entries

if($job_title and $description)

{

# connect to MySQL

$conn=@mysql_connect("localhost", "root", "131520")

or die("Err:Conn");

# select the specified database

$rs=@mysql_select_db("business_project", $conn)

Page 66

Page 73: Dissertation

DISSERTATION REPORTMay 5, 2011

or die("Err:Db");

# create the query

$sql="insert into post_job (job_title, description)

values (\"$job_title\", \"$description\" )";

# execute the query

$rs1=mysql_query($sql,$conn);

# confirm the added record details

print "<head></head><body><b>Record for $job_title successfully added to

the database</b></body>";

}

?>

6-file_upload.php

<?php

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php');

}

Page 67

Page 74: Dissertation

DISSERTATION REPORTMay 5, 2011

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Hosting Template</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

<div id="header">

<ul id="toplinks">

<li><a href="logout.php">Logout</a></li>

</ul>

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

<ul>

<li><a href="index.php">Logout</a></li>

<li><a href="year1homepage.php">Main Menu</a></li>

</ul>

</div>

<ul id="promobox">

<p><b>Username: <b><?php echo $_SESSION['username']; ?></b><p>

Page 68

Page 75: Dissertation

DISSERTATION REPORTMay 5, 2011

<div id="promobox">

<title>PHP File Upload</title><form action='upload.php' method='POST'

enctype='multipart/form-data'>

<table>

<tr>

<td>Title:</td>

<td><input type='text' name='form_title'></td>

</tr>

<tr>

<td>Description:</td>

<td><textarea name='form_description' cols='35' rows='5'></textarea></td>

</tr>

<tr>

<td></td>

<td>

<?php

require_once "phpuploader/include_phpuploader.php";

//Step 2: Create Uploader object.

$uploader=new PhpUploader();

//Step 3: Set a unique name to Uploader

$uploader->Name="myuploader";

//Step 4: Render Uploader

$uploader->Render();

?>

</td>

</tr>

Page 69

Page 76: Dissertation

DISSERTATION REPORTMay 5, 2011

<tr>

<td></td>

<td><input type='submit' name='submit' value='submit'></td>

</tr>

</table>

</form>

</li>

</ul>

</div>

<div id="footer">

<ul>

<li><a href="http://www2.gre.ac.uk">University Of Greenwich</a></li>

<li><a href="https://portal.gre.ac.uk/cp/home/displaylogin">Student

Portal</a></li>

<li><a href="http://wwww.gre.ac.uk/students/get">GET</a></li>

</ul>

</div>

</body></html>

7-loginproc.php

<?php

// Inialize session

session_start();

// Include database connection settings

include('config.inc');

Page 70

Page 77: Dissertation

DISSERTATION REPORTMay 5, 2011

// Retrieve username and password from database according to user's input

$login = mysql_query("SELECT * FROM login WHERE (username = '" .

mysql_real_escape_string($_POST['username']) . "') and (password = '" .

mysql_real_escape_string(md5($_POST['password'])) . "')");

// Check username and password match

if (mysql_num_rows($login) == 1) {

// Set username session variable

$_SESSION['username'] = $_POST['username'];

$row = mysql_fetch_assoc($login);

if($row['year_id']==1)

{

// Jump to secured page for second year students

header('Location: year1homepage.php');

}

else

{

// Jump to secured page for first year students

header('Location: year2homepage.php');

}

}

else {

// Jump to login page

header('Location: index.php');

}

mysql_free_result($login);

?>

8-logout.php

Page 71

Page 78: Dissertation

DISSERTATION REPORTMay 5, 2011

<?php

// Inialize session

session_start();

// Delete certain session

unset($_SESSION['username']);

// Delete all session variables

// session_destroy();

// Jump to login page

header('Location: index.php');

?>

10-post_activity.php

<?php

# ensure all fields have entries

if($a_description and $a_details and $c_description and $c_details)

{

# connect to MySQL

$conn=@mysql_connect("localhost", "root", "131520")

or die("Err:Conn");

# select the specified database

Page 72

Page 79: Dissertation

DISSERTATION REPORTMay 5, 2011

$rs=@mysql_select_db("business_project", $conn)

or die("Err:Db");

# create the query

$sql="insert into post_activity (a_description, a_details, c_description,

c_details)

values (\"$a_description\", \"$a_details\", \"$c_description\", \"$c_details\" )";

# execute the query

$rs1=mysql_query($sql,$conn);

# confirm the added record details

print "<head></head><body><b>Record for $a_description successfully

added to the database</b></body>";

}

?>

11-post_activity1.php

<?php

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php');

}

Page 73

Page 80: Dissertation

DISSERTATION REPORTMay 5, 2011

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Hosting Template</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

<div id="header">

<ul id="toplinks">

<li><a href="logout.php">Logout</a></li>

</ul>

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

<ul>

<li><a href="index.php">Home</a></li>

<li><a href="year2homepage.php">Main Menu</a></li>

<li><a href="content.html">Contact </a></li>

</ul>

</div>

<ul id="promobox">

<p><b>Username: <b><?php echo $_SESSION['username']; ?></b><p>

Page 74

Page 81: Dissertation

DISSERTATION REPORTMay 5, 2011

<div id="promobox">

<li class='promobox3'>

<form method="get" action="post_activity.php">

<b>Enter your Activity Record</b>

<pre>

<select name="a_description">

<option value="a01">Traveling for bussiness</option>

<option value="a02">Team meeting</option>

<option value="a03">Analysis</option>

<option value="a04">Research</option>

<option value="a05">Drafting documentation</option>

<option value="a06">General administration</option>

<option value="a07">Writing up meeting</option>

<option value="a08">Preparing documentation for client</option>

<option value="a09">Drafting and sending emails</option>

<option value="a10">Telephone conversation(put who in notes)</option>

<option value="a11">Information elicitation interviews</option>

<option value="a12">Meeting with client</option>

<option value="Choose" selected>Please Select...</option>

</select>

Activity Description:

<textarea name="a_details" rows="20" cols="34">

</textarea>

</pre>

<li>

<b>Main Type of Communication during your Activity</b>

Page 75

Page 82: Dissertation

DISSERTATION REPORTMay 5, 2011

<pre>

<select name="c_description">

<option value="c01">Face-to-Face</option>

<option value="c02">Mobile-Phone</option>

<option value="c03">E-mail</option>

<option value="c04">Electronic Chat/Facebook etc</option>

<option value="c05">No Team Communication</option>

<option value="Choose" selected>Please Select...</option>

</select>

Activity Description:

<textarea name="c_details" rows="20" cols="30">

</textarea>

</pre>

</li>

<br />

<img src="unicollage.jpg" alt="Logo" /></p>

<p align="center"><input type="submit" value="Submit" class="btn"></p>

</form>

</ul>

</div>

<div id="footer">

<ul>

<li><a href="http://www2.gre.ac.uk">University Of Greenwich</a></li>

<li><a href="https://portal.gre.ac.uk/cp/home/displaylogin">Student

Portal</a></li>

<li><a href="http://wwww.gre.ac.uk/students/get">GET</a></li>

</ul>

Page 76

Page 83: Dissertation

DISSERTATION REPORTMay 5, 2011

</div>

</body>

</html>

12-post_job2.php

<?php

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php');

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Hosting Template</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

Page 77

Page 84: Dissertation

DISSERTATION REPORTMay 5, 2011

<div id="header">

<ul id="toplinks">

<li><a href="logout.php">Logout</a></li>

</ul>

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

<ul>

<li><a href="index.php">Home</a></li>

<li><a href="year2homepage.php">Main Menu</a></li>

<li><a href="content.html">Contact </a></li>

</ul>

</div>

<ul id="promobox">

<p><b>Username: <b><?php echo $_SESSION['username']; ?></b><p>

Company ID:

<?php

# connect to MySQL

$connection = @mysql_connect("localhost", "root", "131520")

or die(mysql_error());

# select the specified database

$result = @mysql_select_db("business_project", $connection)

or die(mysql_error());

# set up table name

$table_name = "post_job";

Page 78

Page 85: Dissertation

DISSERTATION REPORTMay 5, 2011

# create the query

$sql = "SELECT company_id FROM $table_name ORDER BY

company_id";

# execute the query

$result = mysql_query($sql,$connection)

or die(mysql_error());

#create a list block of results

while( $row = mysql_fetch_array($result))

{

$company_id = $row['company_id'];

}

echo $company_id;

?>

<div id="promobox">

<li class='promobox2'>

<form method="get" action="add_job.php">

<!-- <div align="left">

<div align="center">--><b>Enter a New Record</b>

<pre><!--</pre>

<pre> -->

<div align="left"><pre>

Job Title: <input type="text" name="job_title" size="40">

</pre>

<!--</pre>

<pre> -->

Job Description:

Page 79

Page 86: Dissertation

DISSERTATION REPORTMay 5, 2011

<textarea name="description" rows="15" cols="60">

</textarea></div>

</pre>

<div align="center">

<input type="submit" value="Submit" class="btn">

</div>

</form>

</li>

<br />

<br />

<img src="unicollage.jpg" alt="Logo" /></p>

</ul>

</div>

<div id="footer">

<ul>

<li><a href="http://www2.gre.ac.uk">University Of Greenwich</a></li>

<li><a href="https://portal.gre.ac.uk/cp/home/displaylogin">Student

Portal</a></li>

<li><a href="http://wwww.gre.ac.uk/students/get">GET</a></li>

</ul>

</div>

</body>

</html>

Page 80

Page 87: Dissertation

DISSERTATION REPORTMay 5, 2011

13-show_activitiesbystudent.php

<?php

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php');

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Hosting Template</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

<div id="header">

<ul id="toplinks">

<li><a href="logout.php">Logout</a></li>

</ul>

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

Page 81

Page 88: Dissertation

DISSERTATION REPORTMay 5, 2011

<ul>

<li><a href="index.php">Home</a></li>

<li><a href="year2homepage.php">Main Menu</a></li>

<li><a href="content.html">Contact </a></li>

</ul>

</div>

<ul id="promobox">

<p><b>Username: <b><?php echo $_SESSION['username']; ?></b><p>

Company ID:

<?php

# connect to MySQL

$connection = @mysql_connect("localhost", "root", "131520")

or die(mysql_error());

# select the specified database

$result = @mysql_select_db("business_project", $connection)

or die(mysql_error());

# set up table name

$table_name = "post_job";

# create the query

$sql = "SELECT company_id FROM $table_name ORDER BY

company_id";

# execute the query

$result = mysql_query($sql,$connection)

or die(mysql_error());

#create a list block of results

while( $row = mysql_fetch_array($result))

Page 82

Page 89: Dissertation

DISSERTATION REPORTMay 5, 2011

{

$company_id = $row['company_id'];

}

echo $company_id;

?>

<?php

# connect to MySQL

$connection = @mysql_connect("localhost", "root", "131520")

or die(mysql_error());

# select the specified database

$result = @mysql_select_db("business_project", $connection)

or die(mysql_error());

# set up table name

$table_name = "post_activity";

# create the query

$sql = "SELECT a_id, username, s_name, FROM $table_name ORDER BY

s_name";

# execute the query

$result = mysql_query($sql,$connection)

or die(mysql_error());

#create a list block of results

$activity_list = "<ul>";

while( $row = mysql_fetch_array($result))

{

Page 83

Page 90: Dissertation

DISSERTATION REPORTMay 5, 2011

$a_id = $row['a_id'];

$username = $row['username'];

$s_name = $row['s_name'];

$activity_list .= "<p align='center'><li>

<a href=\"show_job.php?a_id=$a_id\"><font color=\"#ffffff\"><p

align=center>$username, $s_name</a>";

}

$activity_list .= "</ul>";

print "<head><TITLE> Business

webpage</TITLE></head><body><H1>List of Jobs available:</H1>

<P>Select a job from the list below, to view the full description and

apply:</P><b><p><strong> $activity_list</b></body>";

?>

</div>

<div id="footer">

<ul>

<li><a href="http://www2.gre.ac.uk">University Of Greenwich</a></li>

<li><a href="https://portal.gre.ac.uk/cp/home/displaylogin">Student

Portal</a></li>

<li><a href="http://wwww.gre.ac.uk/students/get">GET</a></li>

</ul>

</div>

</body>

</html>

Page 84

Page 91: Dissertation

DISSERTATION REPORTMay 5, 2011

14-show_job2.php

<?php

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php');

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Hosting Template</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

<div id="header">

<ul id="toplinks">

<li><a href="logout.php">Logout</a></li>

</ul>

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

<ul>

Page 85

Page 92: Dissertation

DISSERTATION REPORTMay 5, 2011

<li><a href="index.php">Home</a></li>

<li><a href="year1homepage.php">Main Menu</a></li>

<li><a href="content.html">Contact </a></li>

</ul>

</div>

<ul id="promobox">

<p><b>Username: <b><?php echo $_SESSION['username']; ?></b><p>

<?php

# set up table name

$table_name = "post_job";

$db_name = "business_project";

# connect to MySQL

$connection = @mysql_connect("localhost", "root", "131520")

or die(mysql_error());

# select the specified database

$db = @mysql_select_db($db_name, $connection)

or die(mysql_error());

# create the query

$chk_id = "SELECT id FROM $table_name WHERE id = '$_GET[id]'";

$chk_id_res = @mysql_query($chk_id,$connection) or die(mysql_error());

$chk_id_num = mysql_num_rows($chk_id_res);

# check for valid results

if (chk_id_num != 0) {

#if not valid, redirect to menu

header("Location: http://127.0.0.1/securedpage.php");

Page 86

Page 93: Dissertation

DISSERTATION REPORTMay 5, 2011

exit;

} else {

#if valid, get information

$sql = "SELECT company_id, job_title, description FROM $table_name WHERE

id = '$_GET[id]'";

$result = @mysql_query($sql,$connection) or die(mysql_error());

# get results for display

while ($row = mysql_fetch_array($result)) {

$company_id = $row['company_id'];

$job_title = $row['job_title'];

$description = $row['description'];

}

}

print" <HTML>

<HEAD>

<TITLE> Job Details:</TITLE>

</HEAD>

<BODY>

<H1> Job Details for Company $company_id </H1>

<H2>$job_title </H2>

<p><strong> </strong><br><br>

$description</p>

<p class=link>&nbsp;</p>

<a href=file_upload.php title=Apply class=btn>Apply</a>

<a href=show_jobsbynameCO.php title=Apply class=btn>Back to Jobs</a>

<p class=link>&nbsp;</p>

Page 87

Page 94: Dissertation

DISSERTATION REPORTMay 5, 2011

</BODY>"

?>

</ul>

</div>

<div id="footer">

<ul>

<li><a href="http://www2.gre.ac.uk">University Of Greenwich</a></li>

<li><a href="https://portal.gre.ac.uk/cp/home/displaylogin">Student

Portal</a></li>

<li><a href="http://wwww.gre.ac.uk/students/get">GET</a></li>

</ul>

</div>

</body>

</html>

15-show_job22.php

<?php

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php');

}

Page 88

Page 95: Dissertation

DISSERTATION REPORTMay 5, 2011

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Hosting Template</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

<div id="header">

<ul id="toplinks">

<li><a href="logout.php">Logout</a></li>

</ul>

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

<ul>

<li><a href="index.php">Home</a></li>

<li><a href="securedpage.php">Main Menu</a></li>

<li><a href="content.html">Contact </a></li>

</ul>

</div>

<ul id="promobox">

<p><b>Username: <b><?php echo $_SESSION['username']; ?

Page 89

Page 96: Dissertation

DISSERTATION REPORTMay 5, 2011

></b><p>

Company ID:

<?php

# connect to MySQL

$connection = @mysql_connect("localhost", "root", "131520")

or die(mysql_error());

# select the specified database

$result = @mysql_select_db("business_project", $connection)

or die(mysql_error());

# set up table name

$table_name = "post_job";

# create the query

$sql = "SELECT company_id FROM $table_name ORDER BY

company_id";

# execute the query

$result = mysql_query($sql,$connection)

or die(mysql_error());

#create a list block of results

while( $row = mysql_fetch_array($result))

{

$company_id = $row['company_id'];

}

echo $company_id;

?>

<?php

Page 90

Page 97: Dissertation

DISSERTATION REPORTMay 5, 2011

# set up table name

$table_name = "post_job";

$db_name = "business_project";

# connect to MySQL

$connection = @mysql_connect("localhost", "root", "131520")

or die(mysql_error());

# select the specified database

$db = @mysql_select_db($db_name, $connection)

or die(mysql_error());

# create the query

$chk_id = "SELECT id FROM $table_name WHERE id = '$_GET[id]'";

$chk_id_res = @mysql_query($chk_id,$connection) or die(mysql_error());

$chk_id_num = mysql_num_rows($chk_id_res);

# check for valid results

if (chk_id_num != 0) {

#if not valid, redirect to menu

header("Location: http://127.0.0.1/securedpage.php");

exit;

} else {

#if valid, get information

$sql = "SELECT company_id, job_title, description FROM $table_name WHERE

id = '$_GET[id]'";

$result = @mysql_query($sql,$connection) or die(mysql_error());

# get results for display

while ($row = mysql_fetch_array($result)) {

$company_id = $row['company_id'];

$job_title = $row['job_title'];

Page 91

Page 98: Dissertation

DISSERTATION REPORTMay 5, 2011

$description = $row['description'];

}

}

print" <HTML>

<HEAD>

<TITLE> Job Details:</TITLE>

</HEAD>

<BODY>

<H1> Job Details for Company $company_id </H1>

<H2>$job_title </H2>

<p><strong> </strong><br><br>

$description</p>

<p class=link>&nbsp;</p>

<a href=show_jobsbynameCO.php title=Apply class=btn>Back to Jobs</a>

<p class=link>&nbsp;</p>

</BODY>"

?>

</ul>

</div>

<div id="footer">

<ul>

<li><a href="content.html">Terms &amp; Conditions</a></li>

<li><a href="content.html">Privacy Policy</a></li>

<li><a href="content.html">System Status</a></li>

</ul>

</div>

Page 92

Page 99: Dissertation

DISSERTATION REPORTMay 5, 2011

</body>

</html>

16-show_jobsbynameCO.php

<?php

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php');

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Hosting Template</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

<div id="header">

<ul id="toplinks">

<li><a href="logout.php">Logout</a></li>

</ul>

Page 93

Page 100: Dissertation

DISSERTATION REPORTMay 5, 2011

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

<ul>

<li><a href="index.php">Home</a></li>

<li><a href="year1homepage.php">Main Menu</a></li>

<li><a href="content.html">Contact </a></li>

</ul>

</div>

<ul id="promobox">

<p><b>Username: <b><?php echo $_SESSION['username']; ?></b><p>

<?php

# connect to MySQL

$connection = @mysql_connect("localhost", "root", "131520")

or die(mysql_error());

# select the specified database

$result = @mysql_select_db("business_project", $connection)

or die(mysql_error());

# set up table name

$table_name = "post_job";

# create the query

$sql = "SELECT id, company_id, job_title FROM $table_name ORDER BY

job_title";

# execute the query

$result = mysql_query($sql,$connection)

or die(mysql_error());

Page 94

Page 101: Dissertation

DISSERTATION REPORTMay 5, 2011

#create a list block of results

$job_list = "<ul>";

while( $row = mysql_fetch_array($result))

{

$id = $row['id'];

$company_id = $row['company_id'];

$job_title = $row['job_title'];

$job_list .= "<li class='jobslist'><a href=\"show_job2.php?

id=$id\">$job_title</a></li>";

}

$job_list .= "</ul>";

print "<head><TITLE> Business webpage</TITLE></head><body>

<P>Select a job from the list below, to view the full

description:</P><p><strong> $job_list</body>";

?>

</ul>

</div>

<div id="footer">

<ul>

<li><a href="http://www2.gre.ac.uk">University Of Greenwich</a></li>

<li><a href="https://portal.gre.ac.uk/cp/home/displaylogin">Student

Portal</a></li>

<li><a href="http://wwww.gre.ac.uk/students/get">GET</a></li>

</ul>

</div>

</body>

</html>

Page 95

Page 102: Dissertation

DISSERTATION REPORTMay 5, 2011

17-show_jobsbynameCO2.php

<?php

// Inialize session

session_start();

// Check, if username session is NOT set then this page will jump to login page

if (!isset($_SESSION['username'])) {

header('Location: index.php');

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Hosting Template</title>

<link rel="stylesheet" type="text/css" href="default.css"/>

</head>

<body>

<div id="container">

<div id="header">

<ul id="toplinks">

<li><a href="logout.php">Logout</a></li>

</ul>

<img src="uni_logo.jpg" width="168" height="68" alt="Logo" /></div>

<div id="nav">

<ul>

<li><a href="index.php">Home</a></li>

Page 96

Page 103: Dissertation

DISSERTATION REPORTMay 5, 2011

<li><a href="year2homepage.php">Main Menu</a></li>

<li><a href="content.html">Contact </a></li>

</ul>

</div>

<ul id="promobox">

<p><b>Username: <b><?php echo $_SESSION['username']; ?></b><p>

Company ID:

<?php

# connect to MySQL

$connection = @mysql_connect("localhost", "root", "131520")

or die(mysql_error());

# select the specified database

$result = @mysql_select_db("business_project", $connection)

or die(mysql_error());

# set up table name

$table_name = "post_job";

# create the query

$sql = "SELECT company_id FROM $table_name ORDER BY

company_id";

# execute the query

$result = mysql_query($sql,$connection)

or die(mysql_error());

#create a list block of results

while( $row = mysql_fetch_array($result))

{

$company_id = $row['company_id'];

Page 97

Page 104: Dissertation

DISSERTATION REPORTMay 5, 2011

}

echo $company_id;

?>

<?php

# connect to MySQL

$connection = @mysql_connect("localhost", "root", "131520")

or die(mysql_error());

# select the specified database

$result = @mysql_select_db("business_project", $connection)

or die(mysql_error());

# set up table name

$table_name = "post_job";

# create the query

$sql = "SELECT id, company_id, job_title FROM $table_name ORDER BY

job_title";

# execute the query

$result = mysql_query($sql,$connection)

or die(mysql_error());

#create a list block of results

$job_list = "<ul>";

while( $row = mysql_fetch_array($result))

{

$id = $row['id'];

$company_id = $row['company_id'];

Page 98

Page 105: Dissertation

DISSERTATION REPORTMay 5, 2011

$job_title = $row['job_title'];

$job_list .= "<li class='jobslist'><a href=\"show_job22.php?

id=$id\">$job_title</a></li>";

}

$job_list .= "</ul>";

print "<head><TITLE> Business webpage</TITLE></head><body>

<P>Select a job from the list below, to view the full

description:</P><p><strong> $job_list</body>";

?>

</ul>

</div>

<div id="footer">

<ul>

<li><a href="http://www2.gre.ac.uk">University Of Greenwich</a></li>

<li><a href="https://portal.gre.ac.uk/cp/home/displaylogin">Student

Portal</a></li>

<li><a href="http://wwww.gre.ac.uk/students/get">GET</a></li>

</ul>

</div>

</body>

</html>

18-upload.php and config.inc

Upload.php

<?php require_once "phpuploader/include_phpuploader.php" ?>

<?php

Page 99

Page 106: Dissertation

DISSERTATION REPORTMay 5, 2011

include ("config.inc");

$desc=$_POST['form_description'];

$title=$_POST['form_title'];

$result=MYSQL_QUERY("INSERT INTO uploads (title,description, data) ".

"VALUES ('$title','$desc','$data')");

$id= mysql_insert_id();

//Gets the GUID of the file based on uploader name

$fileguid=$_POST["myuploader"];

echo $fileguid;

if($fileguid)

{

//get the uploaded file based on GUID

if($mvcfile)

{

//Gets the name of the file.

echo($mvcfile->FileName);

//Gets the temp file path.

echo($mvcfile->FilePath);

//Gets the size of the file.

echo($mvcfile->FileSize);

//Copys the uploaded file to a new location.

$mvcfile->CopyTo("http://localhost/Blue/uploads");

//Moves the uploaded file to a new location.

$mvcfile->MoveTo("http://localhost/Blue/uploads");

//Deletes this instance.

$mvcfile->Delete();

}

}

?>

Page 100

Page 107: Dissertation

DISSERTATION REPORTMay 5, 2011

Config.inc

<?php

$hostname = 'localhost'; // Your MySQL hostname.

$dbname = 'business_project'; // Your database name.

$username = 'root'; // Your database username.

$password = '131520'; // Your database password.

// connect to host

mysql_connect($hostname, $username, $password) or DIE('Connection to host is

failed, perhaps the service is down!');

// Select the database

mysql_select_db($dbname) or DIE('Database name is not available!');

?>

Page 101