Вы находитесь на странице: 1из 80

Chapter-1 Objective & Scope

1.1 Objective Educational institutes play a pivotal role when it comes to make the career of an individual. They nurture the students with skills which would guide them for the whole of their lives n livelihood. Basic education is very much important it makes an individual capable n selfsustainable. And when it comes to college education, a student gets ample opportunities to enhance his lifestyle n personality. But only basic education is not whats only necessary. Its also the Colleges duty to make the students self-aware n give them a chance or platform to show their unique talents. ONLINE COLLEGE MAGAZINE is a step forward towards this vision. The project gives a chance to the opportunity deprived students who cant make it to the hard version of the magazine. Its an opportunity for everyone to show their hidden talent in the field of literature, philosophy, photography etc. Not only for students, the project is as good for the faculty members. Apart from the hectic and tiring schedule of campus, it provides them with rejoicing energy by giving them a recognized stature with their incandescent talent. Economically speaking, it takes a lot of work and time to make a hard copy of magazine and yet after large amount of copies, it can reach only a few. With Online college Magazine, one can reach a lot of people as internet is everywhere no-a-days and can also raise the stature of the institution. It is also cost effective in comparison to the hard version of it.

1.2 Product Scope The desired end-product is a website for a college magazine that stores and displays articles featuring text, photos as well as videos. Students as well as faculty of the college can submit their articles which will be posted after being approved by an editorial team. The website

should be extremely user-friendly. It should have a large database with fast access for storing a large amount of text and multimedia content. The website should serve as a platform for showcasing creativity and expression of opinions on relevant issues, apart from being a campus news journal keeping track of current affairs and events and acting as a virtual notice board for displaying important information. There are 2 basic types of users

Guest Administrator

They are entrusted with the following operations

Guest can read articles and view all content on the website. They can submit any article, comment on them and can they take part in the forums.

Administrator approves or disapproves a submitted article, moderates comments and forums. Administrator can directly post his/her own articles. Administrator can generate and view reports. Administrator can also address member feedback and complaints. Administrator has all powers can delete any article, post articles, polls, and write in forums. He / She can also remove any content on the website.

Chapter-2 Theoretical Background

2.1 What is an online college magazine? An online college magazine is a publishing platform for students and staff of a college. Students, lecturers and professors can post any kind of article and, once approved by a moderator, it will be accessible to the public on the website. So it is just like a normal print magazine except that it will all be on a website. In addition, users can comment on articles, and rate them. A magazine promotes literary insight and creative expression which will be majorly beneficial to college students, as well as lecturers. It will promote an academic atmosphere of learning and research. An online magazine is much easier to maintain and run than a print magazine, and there is no limit on the number of articles it can hold. It also offers many other benefits, like freedom from space-constraints, 247 availability, free content, cost and labour-saving etc. With highspeed internet access and campus Wi-Fi becoming more and more widespread in India, there seems to be no good reason not to make a highly web-oriented college magazine. 2.2 Problem Statement Students and faculty member want to express their views on various issues, ranging from important matters within the college to relevant issues in education, society, current-events or just about anything. They want a convenient tool where their views can reach a large number of people. Students also desire a student-centric news source which provides timely news and updates about college events, both academic-related and extra-curricular. There needs to be a secure, authenticated method through which only students of the college should be able to submit articles. The entire process should be streamlined, user-friendly and transparent.

2.3 Salient Features Ease of maintenance and extensibility Ease of use Well organized website Anyone can access the articles for reading Articles can be categorized into any of several available categories like current affairs, campus affairs, poems, stories, essays, research papers etc Reader comments on articles

2.4 Functionality Online College Magazine is a comprehensive, feature-rich web publishing platform, with an array of services to make publishing easy, efficient and efficacious. It is very simple to use, with moderation of content, article rating system and user feedback. The system also keeps track of number of views and other statistics on each article. According to the ratings, reader is offered a list of Most Popular Articles.

Chapter-3 Definition of Problem

3.1 Definition We have to create a website on which students and faculty of a college can express their views on various issues, ranging from important matters within the college to relevant issues in education, society, current events or just about anything. The website should hold articles submitted by users, which can be read by anybody visiting the website. Magazine should be well-organised, easy-to-access and searchable. 3.2 Description We need to implement a database to hold news and creative articles, article categories, and other essential data. We require a streamlined user-interface with smart look-and-feel. All services should be accessible with the click of a few buttons. Because the user will spend a lot of time reading content, it is imperative that the layout should be easy on the eyes. Commenting functionality is desirable to provide feedback to the writers. Content needs to be moderated. The website should be responsive and should be able to cope with heavy user traffic.

Chapter 4 System Analysis


4.1 Software development life cycle The System Development Life Cycle framework provides system designers and developers to follow a sequence of activities. It consists of a set of steps or phases in which each phase of the SDLC uses the results of the previous one. A Systems Development Life Cycle (SDLC) adheres to important phases that are essential for developers, such as planning, analysis, design, and implementation, and are explained in the section below. A number of system development life cycle (SDLC) models have been created: waterfall, fountain and spiral build and fix, rapid prototyping, incremental, and synchronize and stabilize. The oldest of these, and the best known, is the waterfall model: a sequence of stages in which the output of each stage becomes the input for the next. These stages can be characterized and divided up in different ways, including the following:

Project planning, feasibility study: Establishes a high-level view of the intended project and determines its goals.

Systems analysis, requirements definition: Refines project goals into defined functions and operation of the intended application. Analyzes end-user information needs.

Systems design: Describes desired features and operations in detail, including screen layouts, business rules, process diagrams, pseudo code and other documentation.

Implementation: The real code is written here. Integration and testing: Brings all the pieces together into a special testing environment, then checks for errors, bugs and interoperability.

Acceptance, installation, deployment: The final stage of initial development, where the software is put into production and runs actual business.

Maintenance: What happens during the rest of the software's life: changes, correction, additions and moves to a different computing platform and more. This, the least glamorous and perhaps most important step of all, goes on seemingly forever.

Software development life cycle includes 6 steps. System engineering and modelling. Software requirement analysis. Systems analysis and design. Code generation. Testing. Development and Maintenance.

Fig 4.1

4.1.1 System engineering and modelling In this process we have to identify the projects requirement and main features proposed in the application. Here the development team visits the customer and their system. They investigate the need for possible software automation in the given system. By the end of the investigation study. The team writes a document that holds the specifications for the customer system.

4.1.2 Software require analysis In this, we analyse the requirement for the proposed system. To understand the nature of the program to built, the system engineer must understand the information domain for the software, as well as required functions, performance and the interfacing. From the available information the system engineer develops a list of the actors use cases and system level requirement for the project. With the help of key user the list of use case and requirement is reviewed.

4.1.3 Systems analysis and design The design is the process of designing exactly how the specifications are to be implemented. It defines specifically how the software is to be written including an object model with properties and method for each object, the client/server technology, the number of tiers needed for the package architecture and a detailed database design. Analysis and design are very important in the whole development cycle. Any glitch in the design could be very expensive to solve in the later stage of the software development. 4.1.4 Code generation This is the process of writing the actual code which will implement the project. The design must be translated into a machine readable form. The code generation step performs this task. The development phase involves the actual coding of the entire application. If design is performed in a detailed manner. Code generation can be accomplished without much complicated. Programming tools like compilers, interpreters like C, C++, and java are used for coding .with respect to the type of application. The right programming language is chosen.

4.1.5 Testing The design must be translated into a machine readable form. The code generation step performs this task. The development phase involves the actual coding of the entire application. If design is performed in a detailed manner, Code generation can be accomplished without too many complications. Programming tools like compilers, interpreters like C, C++, and java are used for coding .With respect to the type of application, the right programming language is chosen. 4.1.6 Development and Maintenance Maintenance is the last step of SDLC. Maintenance comprises software updates, bug fixes, security updates, customer support and more.

4.2 System Analysis

4.2.1 Definition System analysis is a logical process. The objective of this phase is not actually to solve the problem but to determine what must be done to solve the problem. The basic objective of the analysis stage is to develop the logical model of the system using tools such as the data flow diagram and elementary data description of the elementary algorithm. The logical model is Subject to review by both the management and the user who agree that the model does in fact reflect what should be done to solve the problem. System analysis is not a precise science. It is in fact more of an art, aided by scientific approach to find definition and recording data, gathering traditional structures is only one part of the system analysis, the next step is to examine the data, assess the situation and looking at the alternatives. 4.2.2 Description of Present System Magazines printed on papers take a lot of time to edit the posts and features. Also in process of this editing many deserving articles or literary posts remain obscure and are not featured. This leads to the demoralisation of the writer. In that scenario, Online college magazine gives ample opportunities to the talent to come up with their best. It features the article as soon as possible and also shows them on the basis of

their popularity. Also interactive feedbacks are implemented which is hard to come by in magazines. Users can access the magazine and give their comment on any post and discuss it. Administrators are given the powers to combat any adversaries in the smooth running of the magazine. They are supposed to regulate the posts on the basis of their conscience. 4.2.3 Limitations of Present System Magazines now-a-days are related to a fixed firm. But here we tried to build an open magazine for students all over the world to access and share their experience and valuable information. Apart from basic functionalities and easier access, there are a few limitations in the magazine. As the users and posts would enhance, we would need more moderators to organise the magazine. Since it is an open platform, overhead increases for the administrators. Also user access cannot be checked using the IP address monitoring. Also making it accessible all the time is an overhead for the administrator. 4.2.4 Advantages Online college magazine surpasses its printed counterpart in many aspects. First it gives everyone a chance to post and get a positive response in an instant. Also it is cheaper as we did not need to print a new version after a month of fortnight. Users need not wait for a longer period to get their post printed. They get their deserving space in the magazine. Printed magazines have their own limitations as they cant reach a larger audience but the online counterpart can access it and also give their interactive feedback. Also it gives a platform for various students of different culture and background to access the service and share the valuable information. 4.2.5 Feasibility Study A feasibility analysis usually involves a thorough assessment of the operational (need), financial and technical aspects of a proposal. Feasibility study is the test of the system proposal made to identify whether the user needs may be satisfied using the current software and hardware technologies, whether the system will be cost effective from a business point of view and whether it can be developed with the given budgetary constraints. A feasibility study should be relatively cheap and done at the earliest possible time. Depending on the study, the decision is made whether to go ahead with a more detailed analysis. When a new project is proposed, it normally goes through feasibility assessment. Feasibility study is

10

carried out to determine whether the proposed system is possible to develop with available resources and what should be the cost consideration. Facts considered in the feasibility analysis were Technical Feasibility Economic Feasibility Behavioural Feasibility

4.2.5.1 Technical Feasibility Technical feasibility includes whether the technology is available in the market for development and its availability. The assessment of technical feasibility must be based on an outline design of system requirements in terms of input, output, files, programs and procedures. This can be qualified in terms of volumes of data, trends, frequency of updating, cycles of activity etc, in order to give an introduction of technical system. Considering our project it is technical feasible. Online Recruiting and Online Recruitment Systems, with its emphasis on a more strategic decision making process is fast gaining ground as a popular outsourced function. 4.2.5.2 Economic Feasibility This feasibility study present tangible and intangible benefits from the project by comparing the development and operational cost. The technique of cost benefit analysis is often used as a basis for assessing economic feasibility. This system needs some more initial investment than the existing system, but it can be justifiable that it will improve quality of service. Thus feasibility study should centre along the following points: Improvement resulting over the existing method in terms of accuracy, timeliness. Cost comparison. Estimate on the life expectancy of the hardware.

4.2.5.3 Behavioural / Operational Feasibility This analysis involves how it will work when it is installed and the assessment of political and managerial environment in which it is implemented. People are inherently resistant to

11

change and computers have been known to facilitate change. The new proposed system is very much useful to the users and therefore it will accept broad audience from around the world. 4.3 System Design 4.3.1 Definition The most creative and challenging face of the system development is System Design. It provides the understanding and procedural details necessary for the logical and physical stages of development. In designing a new system, the system analyst must have a clear understanding of the objectives, which the design is aiming to fulfil. The first step is to determine how the output is to be produced and in what format. Second, input data and master files have to be designed to meet the requirements of the proposed output. The operational phases are handled through program construction and testing. Design of the system can be defined as a process of applying various techniques and principles for the purpose of defining a device, a process or a system in sufficient detail to permit its physical realization. Thus system design is a solution to how to approach to the creation of a new system. This important phase provides the understanding and the procedural details necessary for implementing the system recommended in the feasibility study. The design step provides a data design, architectural design, and a procedural design.

4.3.2 Output Design In the output design, the emphasis is on producing a hard copy of the information requested or displaying the output on the CRT screen in a predetermined format. Two of the most output media today are printers and the screen. Most users now access their reports from either a hard copy or screen display. Computers output is the most important and direct source of information to the user, efficient, logical, output design should improve the systems relations with the user and help in decision-making. As the outputs are the most important source of information to the user, better design should improve the systems relations and also should help in decision-making. The output devices capability, print quality, response time requirements etc should also be considered, form

12

design elaborates the way the output is presented and layout available for capturing information.

4.3.3 Input Design In the input design, user-originated inputs are converted into a computer-based system format. It also includes determining the record media, method of input, speed of capture and entry on to the screen. Online data entry accepts commands and data through a keyboard. The major approach to input design is the menu and the prompt design. In each alternative, the users options are predefined. The data flow diagram indicates logical data flow, data stores, source and destination. Input data are collected and organized into a group of similar data once identified input media are selected for processing.

4.3.4 Logical Design Logical data design is about the logically implied data. Each and every data in the form can be designed in such a manner to understand the meaning. Logical data designing should give a clear understanding & idea about the related data used to construct a form.

13

Chapter-5 System Planning (PERT Chart)

5.1 Project Evaluation & Review Technique (PERT):The complexities of the present day management problems and the business competitions have added to the brains of the decision makers. In a large & complex project involving a number of integrated activities, requirement a number of men, machine & materials, it is not possible for the management to take & execute an optimum schedule just by intuition based on the organizational capabilities & work experience. Management, are thus, always on a look out for some methods & technique which may help in planning scheduling & controlling the project. A project may be defined as a combination of integrated activities, which must be executed in a certain order before the entire task can be completed. The aim of planning is to develop a sequence of activities of the project, so that the project completion time & cost are properly balanced & that the excessive demand of key resources is avoided. To meet the object of systematic planning, the management has evolved a number of techniques applying network strategy. PERT is one of the many network techniques, which have been widely used for planning, scheduling & controlling the large & complex projects.

14

5.2 PERT chart

Fig 5.1

15

Chapter-6 Methodology adopted & Details of hardware And software used

6.1 Process Model For this project we have followed the Waterfall model. The waterfall model is a model which was developed for software development; that is to create software. It is called as such because the model develops systematically from one phase to other in a downward fashion, like a waterfall. The most probable phases through which it progresses downwards are Definition Study/Analysis Basic Design Technical Design/Detailed Design Construction Testing Integration Management and Maintenance.

6.1.1 About the Phases As said earlier the waterfall model has been structured on multiple phases especially to help out the software construction companies to develop an organized system of construction. By following this method, the project will be divided into many stages thus easing out the whole process. For example you start with Phase I and according to this model, one only progresses to the next Phase once the previous one has been completed. This way one moves progressively to the final stage and once that point is reached, you cannot turn back; similar to the water in a waterfall.

16

6.1.2 Brief Description of the Phases of Waterfall Model

Fig. 6.1

Definition Study / Analysis: During this phase research is being conducted which

includes brainstorming about the software, what it is going to be and what purpose is it going to fulfil. Basic Design: If the first phase gets successfully completed and a well thought out

plan for the software development has been laid then the next step involves formulating the basic design of the software on paper. Technical Design / Detail Design: After the basic design gets approved, then a more

elaborated technical design can be planned. Here the functions of each of the part are decided and the engineering units are placed for example modules, programs etc. written. Testing: At this phase, the whole design and its construction is put under a test to Construction / Implementation: In this phase the source code of the programs is

check its functionality. If there are any errors then they will surface at this point of the process.

17

has

Integration: in the phase of Integration, the company puts it in use after the system been successfully tested.

Management and Maintenance: Maintenance and management is needed to ensure

that the system will continue to perform as desired. Through the above mentioned steps it is clearly shown that the Waterfall model was meant to function in a systematic way that takes the production of the software from the basic step going downwards towards detailing just like a Waterfall which begins at the top of the cliff and goes downwards but not backwards. 6.1.3 History of the Waterfall Model The history of the Waterfall model is somewhat disrupted. It is often said or believed that the model was first put forth by Winston Royce in 1970 in one of his articles; whereas he did not even used the word waterfall. In fact Royce later presented this model to depict a failure or a flaw in a non-working model. So later on, this term was mostly used in writing about something that is often wrongly done in the process of software development like a common malpractice. Royce was more of the opinion that a successful model should have the allowance of repetition or to go back and forth between phases which the waterfall model does not do. He examined the first draft of this model and documented that a recurrent method should be developed in this model. He felt the need of progressing only after a feedback from the previous stage has been received. This is known as the Iterative model. As opposed to the Waterfall model, the Iterative model is more practical and has room for maneuver. Followers of the Iterative method perceive the Waterfall model as inappropriate. 6.1.4 Advantages of the Waterfall Model Lets look at some of the advantages of this model,

The project requires the fulfilment of one phase, before proceeding to the next.

Therefore if there is a fault in this software it will be detected during one of the initial phases and will be sealed off for correction.

A lot of emphasis is laid on paperwork in this method as compared to the newer

18

methods. When new workers enter the project, it is easier for them to carry on the work from where it had been left. The newer methods dont document their developmental process which makes it difficult for a newer member of the team to understand what step is going to follow next. The Waterfall Model is a straight forward method and lets one know easily what stage is in progress.

The Waterfall method is also well known amongst the software developers therefore

it is easy to use. It is easier to develop various software through this method in short span of time. 6.1.5 Disadvantages of the Waterfall Model There are many disadvantages to the model as well. Lets have a look at those, Many software projects are dependent upon external factors; out of which the client

for which the software is being designed is the biggest factor. It happens a lot of times, that the client changes the requirement of the project, thereby influencing an alteration in the normal plan of construction and hence the functionality as well. The Waterfall Model doesnt work well in a situation like this as it assumes no alteration to occur once the process has started according to plan. If, for instance, this happens in a Waterfall Model, then a number of steps would go to waste, and there would arise a need to start everything all over again. Of course this also brings about the aspect of time and money which will all go to waste. Therefore this method will not at all prove to be cost effective. It is not even easy to take out the cost estimate of each step, as each of the phases is quite big. There are many other software developmental models which include many of the same aspects of the Waterfall model. But unlike the Waterfall model, these methods are not largely affected by the outside sources. In the waterfall model, there are many different people working in the different phases of the project like the designers and builders and each carries his own opinion regarding his area of expertise. The design, therefore, is bound to be influenced; however in the Waterfall model, there is no room for that. The other negative aspect of this model is that a huge amount of time is also wasted.

For example if we study any software development process, we know that Phase II cannot be

19

executed until Phase I has been successfully completed; so while the designers are still designing the software, time of the builders is completely wasted.

Another disadvantage of this method is that the testing period comes quite late in the

developmental process; whereas in various other developmental programs the designs would be tested a lot sooner to find the flaw at a time when a lot of time and money has not been wasted. Elaborate documentation during the Waterfall method has its advantages, but it is not

without the disadvantages as well. It takes a lot of effort and time, which is why it is not suitable for smaller projects.

6.2 Technologies used Software used 6.2.1 HTML HyperText Markup Language (HTML) is the main markup language for web pages. HTML elements are the basic building-blocks of webpages. HTML is written in the form of HTML elements consisting of tags enclosed in angle brackets (like <html>), within the web page content. HTML tags most commonly come in pairs like <h1> and </h1>, although some tags, known as empty elements, are unpaired, for example <img>. The first tag in a pair is the start tag, the second tag is the end tag (they are also called opening tags and closing tags). In between these tags web designers can add text, tags, comments and other types of text-based content. The purpose of a web browser is to read HTML documents and compose them into visible or audible web pages. The browser does not display the HTML tags, but uses the tags to interpret the content of the page. HTML elements form the building blocks of all websites. HTML allows images and objects to be embedded and can be used to create interactive forms. It provides a means to create structured documents by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes and other items. It can embed scripts in languages such as JavaScript which affect the behaviour of HTML webpages.

20

Web browsers can also refer to Cascading Style Sheets (CSS) to define the appearance and layout of text and other material. The W3C, maintainer of both the HTML and the CSS standards, encourages the use of CSS over explicitly presentational HTML mark-up. 6.2.2 CSS Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation semantics (the look and formatting) of a document written in a mark-up language. Its most common application is to style web pages written in HTML and XHTML, but the language can also be applied to any kind of XML document, including plain XML, SVG and XUL. CSS is designed primarily to enable the separation of document content (written in HTML or a similar mark-up language) from document presentation, including elements such as the layout, colours, and fonts. This separation can improve content accessibility, provide more flexibility and control in the specification of presentation characteristics, enable multiple pages to share formatting, and reduce complexity and repetition in the structural content (such as by allowing for table-less web design). CSS can also allow the same markup page to be presented in different styles for different rendering methods, such as on-screen, in print, by voice (when read out by a speech-based browser or screen reader) and on Braillebased, tactile devices. It can also be used to allow the web page to display differently depending on the screen size or device on which it is being viewed. While the author of a document typically links that document to a CSS style sheet, readers can use a different style sheet, perhaps one on their own computer, to override the one the author has specified. CSS specifies a priority scheme to determine which style rules apply if more than one rule matches against a particular element. In this so-called cascade, priorities or weights are calculated and assigned to rules, so that the results are predictable. The CSS specifications are maintained by the World Wide Web Consortium (W3C). Internet media type (MIME type) text/css is registered for use with CSS by RFC 2318 (March 1998). 6.2.3 Javascript JavaScript (sometimes abbreviated JS) is a prototype-based scripting language that

is dynamic, weakly typed, general purpose programming language and has first-class

21

functions.

It

is

a multi-paradigm language,

supporting object-oriented, imperative,

and functional programming styles. JavaScript was formalized in the ECMAScript language standard and is primarily used in the form of client-side JavaScript, implemented as part of a Web browser in order to provide enhanced user interfaces and dynamic websites. This enables programmatic access to computational objects within a host environment. JavaScript's use in applications outside Web pages for example in PDF documents, sitespecific browsers, and desktop widgets is also significant. Newer and faster JavaScript VMs and frameworks built upon them (notably Node.js) have also increased the popularity of JavaScript for server-side web applications. JavaScript uses syntax influenced by that of C. JavaScript copies many names and naming conventions from Java, but the two languages are otherwise unrelated and have very different semantics. The key design principles within JavaScript are taken from

the self and Scheme programming languages. 6.2.4 PHP PHP is a general-purpose server-side scripting language originally designed for Web development to produce dynamic Web pages. It is one of the first developed server-side scripting languages to be embedded into an HTML source document, rather than calling an external file to process data. Ultimately, the code is interpreted by a Web server with a PHP processor module which generates the resulting Web page. It also has evolved to include a command-line interface capability and can be used in standalone graphical

applications. PHP can be deployed on most Web servers and also as a standalone shell on almost every operating system and platform free of charge. A competitor

to Microsoft's Active Server Pages (ASP) server-side script engine and similar languages, PHP is installed on more than 20 million Web sites and 1 million Web servers. PHP was originally created by Rasmus Lerdorf in 1995. The main implementation of PHP is now produced by The PHP Group and serves as the formal reference to the PHP language. PHP is free software released under the PHP License, which is incompatible with the GNU General Public License (GPL) due to restrictions on the usage of the term PHP.

22

While PHP originally stood for "Personal Home Page", it is now said to stand for "PHP: Hypertext Pre-processor", a recursive acronym. 6.2.5 MySQL MySQL is the world's most used relational database management system (RDBMS) that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My. The SQL phrase stands for Structured Query Language. The MySQL development project has made its source code available under the terms of the GNU General Public License, as well as under a variety of proprietary agreements. MySQL was owned and sponsored by a single for-profit firm, the Swedish company MySQL AB, now owned by Oracle Corporation. Free-software-open source projects that require a full-featured database management system often use MySQL. For commercial use, several paid editions are available, and offer additional functionality. Applications which Drupal and use other MySQL software databases built on

include: TYPO3, Joomla, WordPress, phpBB,

the LAMP software stack. MySQL is also used in many high-profile, large-scale World Wide Web products, and Twitter. 6.2.6 WAMP WampServer is a Windows web development environment. It allows you to create web applications with Apache2, PHP and a MySQL database. WAMP is an acronym formed from the initials of the operating system Microsoft Windows and the principal components of the package: Apache, MySQL and one of PHP, Perl or Python. Apache is a web server. MySQL is an open-source database. PHP is a scripting language that can manipulate information held in a database and generate web pages dynamically each time content is requested by a browser. Other programs may also be included in a package, such as phpMyAdmin which provides a graphical user interface for the MySQL database manager, or the alternative scripting languages Python or Perl. including Wikipedia, Google (though not for searches), Facebook,

23

Chapter-7 Detailed Life Cycle of the Project


The development of an information system is a process with various stages. Actually, the development process is a cycle, which rotates around. System Development Life Cycle has 6 stages:1. Problem Definition 2. Feasibility Study 3. System Design 4. Implementation 5. Maintenance 6. Post implementation One must progress from one stage to another methodically, answering key questions and achieving result in each stage. The life cycle activities are isolated and sequenced, but in real life they overlap and are highly interrelated. They can be an overlap during any phase of the cycle. 7.1 Describe detail description Phases of SDLC 7.1.1 Problem Definition: - One must know what the problem is before it can be solved. Preliminary system survey or initial investigation to determine whether an alternative system can solve the problem. It entails working into the duplication of efforts, existing procedures, whether parts of existing system would be candidate for computerization. 7.1.2 Feasibility Study: - Depending on the results of the initial investigation, the survey is expanded to a more detailed feasibility study. A feasibility study is a test of system proposal according to its workability, impact on the organization, ability to meet user needs and effective use of resources. It focuses on three major questions:

24

What are the users demonstrated needs and how does a candidate system meet them? What resources are available for a given candidate system? Is the problem worth solving? What are the likely impacts of the candidate system on the organization? How well does it fit within the organization MIS plan?

7.1.3 System Design: - The most creative and challenging phase of the system life cycle is system design. The term design describes a final system and process by which it is developed. It refers to the technical specifications that will be applied in implementing the candidate system. It also includes the construction of programmers and programmed testing. The key question here is: How should the problem is solved? The first step is to determine how the output is to be produced and in which format. Sample of output are also presented. Second, input data and master files (database) have to be designed to meet the requirements of the proposed output. The operational phases are handled through programmed construction and testing, including a list of programmers needed to meet the systems objectives and complete documentation. Projected cost must be close to actual cost of implementation. 7.1.4 Implementation: - The implementation phase isles creative than system design. It is primarily concerned with user training, site preparation and file conversion. When the candidate system is linked to terminal or remote sites, the telecommunication network and tests of network along with the system are also included under implementation. Programming provides a reality test for the assumption made by the analyst. It is therefore a mistake to exclude programmers from the initial investigation design. System testing checks the readiness and accuracy of the system to access update and retrieve data from new files. Once the programmers become available, test data are read into computer and processed against the files provided for testing.In most conversions; a parallel run is conducted where the new system runs simultaneously with the old system. This system provides opportunity to the staff to ork with the new system as well as old system. In some cases it is not possible to run parallel systems. After the new system proves itself, the old system is phased out. 7.1.5 Maintenance: - There is an ageing process in software that requires periodic maintenance of hardware and software. If the new information is inconsistent with design specifications, then changes have to be made. Hardware also requires periodic maintenance to

25

be in tune with design specifications. The important of maintenance is to continue to bring the new system to standards. User priorities, changes in organizational or environmental factors also call for system enhancements. 7.1.6 Post Implementation: - Every system requires periodic evaluation after implementation. The post implementation measures the systems performance against predefined requirements. Unlike system testing, which determines where the system fails, so the necessary adjustments can be made, post implementation determines how well the system continues to meet performance specification. A post- implementation is a review is an evaluation of the system in terms of the extent to which a system accomplishes stated objectives and actual project cost exceeds initial estimates.

26

Chapter-8 DFD and ER Diagram

8.1 DATA FLOW DIAGRAM A data-flow diagram (DFD) is a graphical representation of the "flow" of data through an information system. DFDs can also be used for the visualization of data processing (structured design).
On a DFD, data items flow from an external data source or an internal data store to an internal data store or an external data sink, via an internal process.

Fig. 8.1 Level 0 Data Flow Diagram

27

Fig. 8.2 Level 1 Data Flow Diagram

28

8.2 ENTITY RELATIONSHIP DIAGRAM

Fig. 8.3

29

Chapter-9 Database Diagram

9.1 Article table

Fig. 9.1

9.2 Comment Table

Fig. 9.2

30

9.3 Admin Table

Fig. 9.3

31

Chapter-10 Input and Output Screen Design


10.1 User home page

Fig. 10.1

32

10.2 New Post

Fig. 10.2

33

10.3 Article page

Fig. 10.3

34

10.4 Literature page

Fig. 10.4

35

10.5 News Page

Fig. 10.5

36

10.6 View Page For a News

Fig. 10.6

37

10.7 Administrator Login

Fig. 10.7

38

10.8 Administrator Home

Fig. 10.8

39

10.9 View of an Article for Administrator

Fig. 10.9

40

10.10 Comment control view for Administrator

Fig. 10.10

10.11 View For only Pending Articles

Fig. 10.11

41

Chapter-11 Code Sheet

11.1 Home Page <?php if(isset($_GET['t'])) $type=$_GET['t']; else $type='home'; if ($type=='article'||$type=='literature'||$type=='news'); else $type='home'; ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Expressions</title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <link rel="stylesheet" href="style.css" type="text/css" /> <link rel="icon" href="images/favicon.ico" /> </head><body> <div id="wrapper"> <a href="index.php"><div id="logo"></div></a> <div id="header"style="margin-top:81px"> <div id="updates"></div><ul id="navigation">

42

<li <?php if($type=='home') { ?>class="on"<?php } ?>><a href="index.php">Home</a></li> <li><a href="newpost.php">New</a></li> <li <?php if($type=='article') { ?>class="on"<?php } ?>><a href="index.php?t=article">Articles</a></li> <li <?php if($type=='literature') { ?>class="on"<?php } ?>><a href="index.php?t=literature">Literature</a></li> <li <?php if($type=='news') { ?>class="on"<?php } ?>><a href="index.php?t=news">News</a></li> <li><a href="about.php">About us</a></li> <li><a href="contact.php">Contact</a></li> </ul></div> <div id="content"> <div id="site_content"> <div class="content_header"> <?php if ( $type=='home') echo "LATEST COLLEGE CONTENT"; else echo $type; ?></div> <?php $link= mysqli_connect('localhost','root','','magazine')or die(); if($type!='home') { $q="select * from `article` where `status`='1' AND `type` = '".$type."' order by id DESC";

43

$num=5;} else { $q="select * from `article` where `status`='1' order by id DESC" ; $num=7;} $result=mysqli_query($link,$q); if(!$result || (mysqli_num_rows($result)<1)) {echo ""; } if($num > mysqli_num_rows($result)) $num=mysqli_num_rows($result); while($num--) { $row=mysqli_fetch_array($result,MYSQLI_ASSOC); ?> <div id="item-body"> <div class="item-header"> <a href="article_det.php?id=<?php echo $row['id']; ?>"><?php echo $row['title']; ?></a> </div> <div class="author-name"> <i> by:</i> <?php echo $row['author'] ; ?> <i>on </i><?php echo date('M d, Y',$row['time']) ; ?> </div> <div class="item-content">

44

<?php echo substr($row['content'],0,400) ; ?>......</div></div> <?php }?> </div> <?php include('rightpane.php'); ?> <br clear="all" /></div> <div id="footer"> <div id="copyright">&copy; Expressions 2012.</div></div></div> </body> </html> 11.2 New Post <?php if(isset($_GET['t'])) $type=$_GET['t']; else $type='home'; if ($type=='article'||$type=='literature'||$type=='news'); else $type='home';?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Expressions</title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <link rel="stylesheet" href="style.css" type="text/css" />

45

<link rel="stylesheet" href="style1.css" type="text/css" /> <link rel="icon" href="images/favicon.ico" /> <script type='text/javascript' language="javascript" src="scripts/jquery1.7.2.min.js"></script> <script type='text/javascript' language="javascript" src="scripts/jquery.validate.min.js"></script> <script type='text/javascript'> $().ready(function() { $("#articlepost").validate({ submitHandler: function(form, validator){ alert('post successfully submitted'); form.submit();}, errorElement: "span", errorPlacement: function(error, element) { error.insertAfter(element); }, success: function(label) { label.html("&nbsp;").addClass("success"); }, rules: { title:{ required:true,

46

minlength:3, maxlength:100}, author: { required: true, minlength: 3, maxlength:50 }, type: { required: true }, content: { required:true, minlength:100, maxlength:2500 }} }); }); </script> </head> <body> <div id="wrapper"> <a href="index.php"><div id="logo"></div></a>

47

<div id="header" style="margin-top:81px"> <div id="updates"></div> <ul id="navigation"> <li <?php if($type=='home') { ?><?php } ?>><a href="index.php">Home</a></li> <li class="on"><a href="newpost.php">New</a></li> <li <?php if($type=='article') { ?>class="on"<?php } ?>><a href="index.php?t=article">Articles</a></li> <li <?php if($type=='literature') { ?>class="on"<?php } ?>><a href="index.php?t=literature">Literature</a></li> <li <?php if($type=='news') { ?>class="on"<?php } ?>><a href="index.php?t=news">News</a></li> <li><a href="about.php">About us</a></li> <li><a href="contact.php">Contact</a></li></ul></div> <div id="content"> <div id="site_content"> <div class="content_header"> New Post </div> <?php if(isset($_POST['title'])){ $title=$_POST['title']; $title= addslashes($title); $type=$_POST['type'];

48

$author=$_POST['author']; $author= addslashes($author); $content=$_POST['content']; $content = addslashes(htmlspecialchars($content)); $time=time(); $link=mysqli_connect('localhost','root','','magazine')or die(); $q="insert into `article`(`title`,`type`,`author`,`content`,`time`) value('$title','$type','$author','$content','$time')"; $result=mysqli_query($link,$q) or die();} ?> <form id="articlepost" name="articlepost" method="post"> <div class="form"> <p> <label for="title">Article Title <span>(Required Field)</span></label> <input type="text" class="field size1" name="title" id="title"> </p> <p> <label for="author">Author Name <span>(Required Field)</span></label> <input type="text" class="field size1" name="author" id="author"> </p> <p>

49

<label for="type">Type</label><select class="feild size3" name="type" id="type" style="float:left"><br/> <option selected="selected" value="">Choose type...</option> <option value="article">ARTICLE</option> <option value="news">NEWS</option> <option value="literature">LITERATURE</option> </select><br/> </p><p> <label for="content">Content <span>(Required Field)</span></label> <textarea class="field size1" rows="10" cols="30" name="content"></textarea> </p></div> <div class="buttons"> <input type="submit" class="button" value="submit" /> </div> <!-- End Form Buttons --> </form> </div> <?php include('rightpane.php'); ?> <br clear= "all" /></div> <div id="footer"> <div id="copyright">&copy; Expressions 2012 .</div></div> </div></body></html>

50

11.3 Article Detail <?php if(isset($_GET['id'])) $id=$_GET['id']; else header('location:index.php'); $link= mysqli_connect('localhost','root','','magazine')or die(); $q="select * from `article` where `id`=".$id." and `status`='1'"; $result=mysqli_query($link,$q); if(!$result || (mysqli_num_rows($result)<1)) { header('location:index.php'); } $q="update `article` set `reads`=`reads` + 1 where `id` = ".$id; mysqli_query($link,$q); $row=mysqli_fetch_array($result,MYSQLI_ASSOC); $type=$row['type']; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Expressions</title>

51

<meta http-equiv="content-type" content="text/html; charset=utf-8" /> <link rel="stylesheet" href="style.css" type="text/css" /> <link rel="stylesheet" href="style2.css" type="text/css" /> <link rel="icon" href="images/favicon.ico" /> <script type='text/javascript' language="javascript" src="scripts/jquery1.7.2.min.js"></script> <script type='text/javascript' language="javascript" src="scripts/jquery.validate.min.js"></script> <script type='text/javascript'> $().ready(function() { $("#commentpost").validate({ submitHandler: function(form, validator){ alert('Comment successfully submitted'); form.submit(); }, errorElement: "span", errorPlacement: function(error, element) { error.insertAfter(element); }, success: function(label) { label.html("&nbsp;").addClass("success");}, rules: {

52

name:{ required:true, minlength:3, maxlength:100 }, email: { required: true, email: true, minlength: 3, maxlength:50 }, content: { required:true, minlength:100, maxlength:2500 }} }); }); </script></head> <body> <div id="wrapper"> <a href="index.php"><div id="logo"></div></a>

53

<div id="header" style="margin-top:81px"> <div id="updates"></div> <ul id="navigation"> <li><a href="index.php">Home</a></li> <li><a href="newpost.php">New</a></li> <li <?php if($type=='article') { ?>class="on"<?php } ?>><a href="index.php?t=article">Articles</a></li> <li <?php if($type=='literature') { ?>class="on"<?php } ?>><a href="index.php?t=literature">Literature</a></li> <li <?php if($type=='news') { ?>class="on"<?php } ?>><a href="index.php?t=news">News</a></li> <li><a href="about.php">About us</a></li> <li><a href="contact.php">Contact</a></li></ul> <div id="content"> <div id="site_content"> <div class="content_header"> <?php echo $row['title'];?></div> <div class="author-name"> <i> by:</i> <?php echo $row['author'] ; ?> <i>on </i><?php echo date('M d, Y',$row['time']) ; ?> </div> <div class="main_content">

54

<?php echo nl2br($row['content']); ?></div> <div id="item-body"> <div class="item-header">Comments</div></div> <?php $q="select * from `comment` where article_id= ".$id." order by id DESC" ; $res=mysqli_query($link,$q); $num=mysqli_num_rows($res); if(!$res || (mysqli_num_rows($res)<1)) echo ""; else while($num--) { $row1=mysqli_fetch_array($res,MYSQLI_ASSOC); ?> <div id="item-body"> <div class="item-content"> <?php echo $row1['name'];?>:<?php echo $row1['content']; ?> </div> <div class="author-name"> on <?php echo date('M d, Y',$row1['time']) ; ?> </div></div> <?php } ?>

55

<?php if(isset($_POST['name'])){ $name=$_POST['name']; $name= addslashes($name); $email=$_POST['email']; $content=$_POST['content']; $content= addslashes($content); $time=time(); $link= mysqli_connect('localhost','root','','magazine')or die(); $q="insert into `comment`(`name`,`email`,`article_id`,`content`,`time`) values('$name','$email','$id','$content','$time')"; $result=mysqli_query($link,$q) or die(); } ?>

<div id="item-body"> <form id="commentpost" name="commentpost" method="POST"> <div class="form"> <p> <label for="name">Name</label> <input type="text" class="field size1" name="name" id="name"></p> <p> <label for="email">Email</label> <input type="text" class="field size1" name="email" id="email"></p><p>

56

<label for="content">Content</label> <textarea class="field size1" rows="10" cols="10" name="content"></textarea> </p></div> <div class="buttons"> <input type="submit" class="button" value="submit" /></div> </form></div></div> <?php include('rightpane.php') ?> <br clear= "all" /></div> <div id="footer"> <div id="copyright">&copy; Expressions 2012 .</div> </div></body></html> 11.4 Admin Login <!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>Admin login</title> <link rel="stylesheet" href="css/style.css" type="text/css" media="all" /> </head> <body><!-- Container --> <div id="container">

57

<div class="shell"> <div id="main">

<br />

<div class="cl">&nbsp;</div> <div id="content"> <div class="box"> <div class="box-head"><h2>Admin Login</h2></div> <?php session_start(); if(isset($_SESSION['loggedin']) && $_SESSION['loggedin']==1) header('location:admin.php'); if(isset($_POST['uname'])){ $uname=$_POST['uname']; $pass=$_POST['password']; $pass=md5($pass); $link= mysqli_connect('localhost','root','','magazine')or die(); $q="select `pass` from `login` where `uname`='".$uname."'"; $res=mysqli_query($link,$q); $row=mysqli_fetch_array($res); if($pass==$row['pass']){ $_SESSION['loggedin']=1; header('location:admin.php'); }

58

else echo "WRONG PASSWORD!!"; } ?> <form id="loginadmin" name="loginadmin" method="post"> <div class="form"><p> <label for="title">Username<span>(Required Field)</span></label> <input type="text" class="field size1" name="uname" id="uname"></p> <p><label for="title">Password<span>(Required Field)</span></label> <input type="password" class="field size1" name="password" id="password"></p> </div> <div class="buttons"> <input type="submit" class="button" value="submit" /></div> </form></div></div> </div> <div class="cl">&nbsp;</div> </div></div></div> </body> </html> 11.5 Admin Home page <?php session_start(); if(isset($_SESSION['loggedin']) && $_SESSION['loggedin']==1);

59

else header('location:login.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>Welcome Admin</title> <link rel="stylesheet" href="css/style.css" type="text/css" media="all" /> <script type='text/javascript' language="javascript" src="scripts/jquery1.7.2.min.js"></script> <script type='text/javascript' language="javascript"> function del_article(id){ var chk = confirm("Are you sure you want to delete this article"); if(chk==true){ $.post('ajaxprocess.php',{request:"article_delete",a_id:id},function(data){ window.location.reload(); }); }} function accept_article(id){ $.post('ajaxprocess.php',{request:"accept_article",a_id:id},function(data){ window.location.reload();

60

}); } </script> <script type='text/javascript' language="javascript" src="scripts/jquery1.7.2.min.js"></script> <script type='text/javascript' language="javascript" src="scripts/jquery.validate.min.js"></script> <script type='text/javascript'> $().ready(function() { $("#articlepost").validate({ submitHandler: function(form, validator){ alert('post successfully submitted'); form.submit(); }, errorElement: "span", errorPlacement: function(error, element) { error.insertAfter(element); }, success: function(label) { label.html("&nbsp;").addClass("success"); }, rules: {

61

title:{ required:true, minlength:3, maxlength:100 }, type: { required: true }, content: { required:true, minlength:100, maxlength:2500 } } }); }); </script> <link rel="stylesheet" type="text/css" media="screen" href="css/colorbox_theme3.css"/> <script type='text/javascript' language="javascript" src="scripts/jquery.colorboxmin.js"></script> <script type="text/javascript"> $(function() {

62

$(".ajax_colorbox").colorbox({close:"x", width:"70%", height:"80%", fixed:true,scrolling: true}); }); </script> </head> <body> <div id="header"> <div class="shell"> <div id="top"> <h1><a href="#">Expressions</a></h1> <div id="top-navigation"> Welcome &nbsp; <strong>Administrator</strong></a><span>|</span> <a href="logout.php">Log out</a></div></div> <div id="navigation"> <ul> <li><a href="#" class="active"><span>Dashboard</span></a></li> <li><a href="admin_new.php"><span>New Articles</span></a></li> </ul> </div></div></div> <div id="container"> <div class="shell"> <br />

63

<div id="main"> <div class="cl">&nbsp;</div> <div id="content"> <div class="box"> <div class="box-head"> <h2 class="left">Articles</h2> </div> <div class="table"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <th>Articles</th> <th>Date</th> <th>Status</th> <th>Added by</th> <th width="110" class="ac">User Control</th> </tr> <?php $link= mysqli_connect('localhost','root','','magazine')or die(); $q="select * from `article` order by id DESC" ; $result=mysqli_query($link,$q); $num=mysqli_num_rows($result); if(!$result || (mysqli_num_rows($result)<1))

64

echo""; else while($num--) { $row=mysqli_fetch_array($result,MYSQLI_ASSOC); ?> <tr> <td><h3><a class="ajax_colorbox" href="admin_show.php?id=<?php echo $row['id']; ?>"><?php echo substr($row['title'],0,30); ?>....</a></h3></td> <td><?php echo date('M d, Y',$row['time']) ; ?></td> <td><?php if($row['status']==0) echo "Pending"; else echo "Accepted";?> </td> <td><?php echo $row['author']?></td> <td><a href="javascript:del_article(<?php echo $row['id'] ?>);" class="ico del">Delete</a> <?php $q="select count(*) as 'cmnt' from comment where `article_id`= ".$row['id']; $res=mysqli_query($link,$q); $row1=mysqli_fetch_array($res,MYSQLI_ASSOC); if($row1['cmnt']>0){

65

?> <a href="comment.php?id=<?php echo $row['id']; ?>" class="ico comment">Comment <?php $s="select count(*) as 'comnt' from comment where `article_id`= ".$row['id']." and `status`=0"; $resu=mysqli_query($link,$s); $row2=mysqli_fetch_array($resu,MYSQLI_ASSOC); echo "(".$row2['comnt'].")";?> </a> <?php }?> <?php if($row['status']==0) echo "<a href=\"javascript:accept_article(". $row['id'].");\" class=\"ico edit\">Accept</a>";?> </td> </tr><?php } ?> </table></div> </div> <div class="box"> <div class="box-head"> <h2>Add New Article</h2> </div> <?php if(isset($_POST['title'])){

66

$title=$_POST['title']; $title= addslashes($title); $type=$_POST['type']; $author='Admin'; $content=$_POST['content']; $content = addslashes(htmlspecialchars($content)); $time=time(); $link= mysqli_connect('localhost','root','','magazine')or die(); $q="insert into `article`(`title`,`type`,`author`,`content`,`time`,`status`) value('$title','$type','$author','$content','$time','1')"; $result=mysqli_query($link,$q) or die(); }?> <form id="articlepost" name="articlepost" method="post"> <div class="form"> <p><label for="title">Article Title <span>(Required Field)</span></label> <input type="text" class="field size1" name="title" id="title"></p> <p> <label for="type">Type</label><select class="feild size3" name="type" id="type" style="float:left"><br/> <option selected="selected" value="">Choose type...</option> <option value="article">ARTICLE</option> <option value="news">NEWS</option>

67

<option value="literature">LITERATURE</option> </select><br/> </p><br/><p> <span class="req">max 3000 Characeters</span> <label for="content">Content<span>(Required Field)</span></label> <textarea class="field size1" rows="10" cols="30" name="content"></textarea> </p> </div> <div class="buttons"> <input type="submit" class="button" value="submit" /></div> </form></div> </div> <div id="sidebar"> </div> <div class="cl">&nbsp;</div></div></div></div> <div id="footer"> <div class="shell"> <span class="left">&copy; Expressions 2012</span> <span class="right"></span> </div></div> </body> </html>

68

11.6 Admin page for new articles only <?php session_start(); if(isset($_SESSION['loggedin']) && $_SESSION['loggedin']==1); else header('location:login.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>Welcome Admin</title> <link rel="stylesheet" href="css/style.css" type="text/css" media="all" /> <script type='text/javascript' language="javascript" src="scripts/jquery1.7.2.min.js"></script> <script type='text/javascript' language="javascript"> function del_article(id){ var chk = confirm("Are you sure you want to delete this article"); if(chk==true){ $.post('ajaxprocess.php',{request:"article_delete",a_id:id},function(data){ window.location.reload(); }); }}

69

function accept_article(id){ $.post('ajaxprocess.php',{request:"accept_article",a_id:id},function(data){ window.location.reload(); });} </script></head> <body> <div id="header"> <div class="shell"> <div id="top"> <h1><a href="#">Expressions</a></h1> <div id="top-navigation"> Welcome &nbsp; <strong>Administrator</strong></a><span>|</span> <a href="logout.php">Log out</a> </div></div> <div id="navigation"> <ul> <li><a href="admin.php"><span>Dashboard</span></a></li> <li><a href="admin_new.php" class="active"><span>New Articles</span></a></li> </ul> </div></div></div> <div id="container"> <div class="shell"><br />

70

<div id="main"> <div class="cl">&nbsp;</div> <div id="content"> <div class="box"> <div class="box-head"> <h2 class="left">Articles</h2></div> <div class="table"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <th>Articles</th> <th>Date</th> <th>Status</th> <th>Added by</th> <th width="110" class="ac">User Control</th> </tr> <?php $link= mysqli_connect('localhost','root','','magazine')or die(); $q="select * from `article` where `status`= 0 order by id DESC" ; $result=mysqli_query($link,$q); $num=mysqli_num_rows($result); if(!$result || (mysqli_num_rows($result)<1)) echo"";

71

else while($num--) { $row=mysqli_fetch_array($result,MYSQLI_ASSOC); ?><tr> <td><h3><a href="admin_show.php?id=<?php echo $row['id']; ?>"><?php echo $row['title']; ?></a></h3></td> <td><?php echo date('M d, Y',$row['time']) ; ?></td> <td><?php if($row['status']==0) echo "Pending"; else echo "Accepted"; ?></td> <td><?php echo $row['author']?></td> <td><a href="javascript:del_article(<?php echo $row['id'] ?>);" class="ico del">Delete</a> <?php $q="select count(*) as 'cmnt' from comment where `article_id`= ".$row['id']; $res=mysqli_query($link,$q); $row1=mysqli_fetch_array($res,MYSQLI_ASSOC); if($row1['cmnt']>0){?> <a href="comment.php?id=<?php echo $row['id']; ?>" class="ico del">Comment <?php

72

$s="select count(*) as 'comnt' from comment where `article_id`= ".$row['id']." and `status`=0"; $resu=mysqli_query($link,$s); $row2=mysqli_fetch_array($resu,MYSQLI_ASSOC); echo "(".$row2['comnt'].")"; ?></a> <?php } ?> <?php if($row['status']==0) echo "<a href=\"javascript:accept_article(". $row['id'].");\" class=\"ico edit\">Accept</a>";?> </td></tr><?php } ?> </table></div> </div></div> <div id="sidebar"></div> <div class="cl">&nbsp;</div> </div></div></div> <div id="footer"> <div class="shell"> <span class="left">&copy; Expressions 2012</span> <span class="right"></span> </div></div> </body> </html>

73

Chapter-12 Testing
Before actually implementing the new system into operations, a test run of the system is done removing all the bugs, if any. It is an important phase of a successful system. After codifying the whole programs of the system, a test plan should be developed and run on a given set of test data. The output of the test run should match the expected results. Unit test: When the programs have been coded and compiled and brought to working conditions, they must be individually tested with the prepared test data. Any undesirable happening must be noted and debugged (error corrections). System Test: After carrying out the unit test for each of the programs of the system and when errors are removed, then system test is done. At this stage the test is done on actual data. The complete system is executed on the actual data. At each stage of the execution, the results or output of the system is analysed. During the result analysis, it may be found that the outputs are not matching the expected out of the system. In such case, the errors in the particular programs are identified and are fixed and further tested for the expected output.When it is ensured that the system is running error-free, the users are called with their own actual data so that the system could be shown running as per their requirements. 12.1 Inspection The system is inspected on the basis of inputs specified in the documents.The documental proposal is compared with the system.For inspecting the system SRS documents is prepared in the starting phase.SRS gives the complete idea of the project alongwith how it is to be implemented,what will be the output for corresponding input,database schema and flow diagrams. 12.2 Functional Testing The functioning of system is tested according to the requirement and restrictions specified in a document proposal.

74

12.3 Implementation After having the user acceptance of the new system developed, the implementation phase begins. Implementation is the stage of a project during which theory is turned into practice. During this phase, all the programs of the system are loaded onto the user's computer. After loading the system, training of the users starts. Main topics of such type of training are:

How to execute the package How to enter the data How to process the data (processing details) How to take out the reports

12.4 Maintenance After implementation maintenance of system is the most challenging tasks.It is assumed that maintenance of a system cost more than its development. Software will definitely undergo change once it is delivered to the customer. There are many reasons for the change. Change could be happen because of some unexpected input values into the system. In addition, the changes in the system could be directly affecting the software operations. The software should be developed to accommodate changes that could happen during the post implementation period. Maintenance is necessary to eliminate errors in the system during its working life and to tune the system to any variations in its working environment. It has been seen that there are always some errors found in the system that must be noted and corrected. It also means the review of the system from time to time. The review of the system is done for:

knowing the full capabilities of the system knowing the required changes or the additional requirements studying the performance.

75

Chapter-13 User/Operation Manual

13.1 Security Aspects

For Security point of view Authentication service is used. As it is an open service for everyone, access is given to everyone for the service. But administrators are placed to check and authenticate the content and validity of the post. Administrative users are the master users. Administrators are the major controller of the website. They have the sole responsibility of checking any unauthenticated content or inappropriate content before posting it. For this every post or comment is needed to be verified by the administrators. Administrators are bound to login to control the web contents to be posted. The username and password is with the administrator only.

13.2 Access Rights There are 2 types of users in Online College Magazine. According to the access right they are classified under two categories: Administrative users General users

13.2.1 Access Rights for administrative Users REQ 1: Login to Administrator page. Input: Username and Password Process; Verify the Username and Password from the database Output: Open the home page of Administrator, if the username and password are correct otherwise show error message. REQ 2: Verify the article content

76

Input: Article identity Details like, article header, article id. Process: Login to admin account and accept the article after viewing Output: Article posted on home page REQ 3: Verify Comment Input: comment id, comment content Process: Retrieve the comment content and read it Output: if the comment is found to be relevant, accept it, else reject it.

REQ - 4:

Adding comment or article

Input: login details of admin Process: Post with the relevant pages of the posting of comment and articles Output: Article is posted and displayed. So is the comment.

13.2.2 Access Rights for General users. Access to the website has been provided to each and every user. They can post or comment to give interactive feedbacks. But the acceptance of their post or comment will be verified by the administrator and after thoroughly checked, it will be moved ahead.

77

Chapter-14 Conclusions
The enhancement over the printed counterpart as Online College Magazine gives a better chances to the user to enhance their talent. Also apart from studies it provide an instant refreshment from the course studies for both students and teachers. Economically, it has far more upper hand over printed magazine. The expenses are only for up gradation of the services and maintenance. Online college magazine can be accessed by different users with different field of interest and share a common platform to enlighten each other with their experiences. Online magazine also reduce the overhead for the college management to get the printed out. Also it gives the information regarding latest events and news on or off campus focussing on the features of education, society or nation.

78

Chapter-15 Future Enhancement


Online College magazine is a never done endeavour. There is always a chance for future enhancements for the magazine. When the number of users grows more, user login could be initialised. Also the infrastructure would be needed to be up graded. Moderators could also be added and increased for proper functioning of the magazine. Uploading a picture facility can be given to the user. Also profile for every user can be created where they can view each others prospect and ideology. Online College Magazine is designed for different types of users and organisers. So security is one of the essential part to maintain as internet in under many threats. So the college magazine generated can have better security facilities which would help in smooth running of the endeavour. Also the spammers and bots are needed to be restricted from getting adjoined to the web site.

79

Chapter-16 References

[1]

Roger S. pressmen, - Software engineering A practitioners approach, Tata McGraw Hill, Sixth edition, 2005.

[2]

Silber Schatz, Korth, Sudershan, - Database system concepts, Tata McGraw Hill, Fourth edition, 2002.

[3]

Thomas H Cormen, Charles E Leiserson, Ronald L. Rivest, Cliford Stein, Introduction to algorithms, Prentice Hall India, Second edition, 2001.

80

Вам также может понравиться