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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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.
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
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
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
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
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
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
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
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
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
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
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
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
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
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
DISSERTATION REPORTMay 5, 2011
Figure 21. Description of the job.
Figure 22. CVs upload page.
Page 36
DISSERTATION REPORTMay 5, 2011
Figure 23. File being uploaded.
7.4.3: Log Book screen shoots for all students
Page 37
DISSERTATION REPORTMay 5, 2011
Figure 24. Log Book page
Figure 25. Log Book page 2
7.5: Conclusion
Page 38
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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> </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
DISSERTATION REPORTMay 5, 2011
</ul>
</div>
<p> </p>
<img src="medway2.jpg" alt="Logo" /></p>
</div>
<p> </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
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
DISSERTATION REPORTMay 5, 2011
Logs</a></p>
</li>
<p> </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
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
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
DISSERTATION REPORTMay 5, 2011
Logs</a></p>
</li>
<p> </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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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> </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> </p>
Page 87
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
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
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
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
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> </p>
<a href=show_jobsbynameCO.php title=Apply class=btn>Back to Jobs</a>
<p class=link> </p>
</BODY>"
?>
</ul>
</div>
<div id="footer">
<ul>
<li><a href="content.html">Terms & 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
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
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
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
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
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
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
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
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
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