SubjectsSubjects(version: 963)
Course, academic year 2013/2014
  
Web Applications - N445059
Title: Webové aplikace
Guaranteed by: Department of Computing and Control Engineering (445)
Faculty: Faculty of Chemical Engineering
Actual: from 2013 to 2013
Semester: winter
Points: winter s.:5
E-Credits: winter s.:5
Examination process: winter s.:
Hours per week, examination: winter s.:2/3, MC [HT]
Capacity: unlimited / unlimited (unknown)
Min. number of students: unlimited
State of the course: taught
Language: Czech
Teaching methods: full-time
Teaching methods: full-time
Level:  
Additional information: http://moodle.vscht.cz/course/view.php?id=106
Guarantor: Nachtigalová Iva Ing. Ph.D.
Vovsík Jaroslav Ing. Ph.D.
Examination dates   Schedule   
Annotation -
The course focuses on the development of dynamic web applications using open source technology Apache - MySQL - PHP. The course first introduces students to the HTTP communication and current technology of applications running in the Internet environment, then focuses on the basic techniques (kernel commands, generating output, databases handling, etc.) and advanced techniques (sessions and cookies handling, user authentication, etc.) for writing code of applications in a server scripting language PHP, of which data is stored and retrieved dynamically to/from MySQL database server. The course also helps students to acquire the necessary knowledge to implement applications in the Apache web server, to program selected functions in the client browser using JavaScript scripting language and also to optimize web applications for web search engines (SEO).
Last update: Nachtigalová Iva (23.07.2013)
Aim of the course -

Students will be able to:

  • program the advanced features of web applications in a server scripting language PHP
  • connect web applications programmed in PHP with MySQL database server to store/retrieve data
  • program selected features of web application in the client scripting language JavaScript
  • optimize applications and published content for web search engines (SEO).

Last update: Nachtigalová Iva (22.07.2013)
Descriptors -

www, web, applications, HTTP, PHP, MySQL, Apache, JavaScript scripting language, XHTML, CSS, Search Engine Optimization SEO

Last update: Nachtigalová Iva (22.07.2013)
Literature -

R: Murach's PHP and MySQL (Murach: Training & Reference): Murach's PHP and MySQL (Murach: Training & Reference). Mike Murach & Associates; First Printing edition (November 23, 2010). ISBN: 1890774561.

R: Bowen, R. - Coar, K.: Apache Cookbook: Solutions and Examples for Apache Administrators. O'Reilly Media; Second Edition edition (January 11, 2008). ISBN-10: 0596529945.

R: Tim Wright: Learning JavaScript: A Hands-On Guide to the Fundamentals of Modern JavaScript. Addison-Wesley Professional; 1 edition (August 5, 2012). ISBN: 0321832744.

R: Michael H. Fleischner: SEO Made Simple (Third Edition): Strategies for Dominating the World's Largest Search Engine. CreateSpace Independent Publishing Platform; 3 edition (January 2, 2013). ISBN: 1481838067.

Last update: TAJ445 (30.09.2013)
Teaching methods -

The 5-hour course starts with two-hour lecture followed by a three-hour thematic exercises in a computer lab where students solve tasks together and gradually step by step create sample web application like web blog. Each student works on his own computer at the same time regularly alternates with with other students at the teacher's computer and actively participates in the preparation of the specification in discussion with others. In the exercises, students learn to work with off-line and on-line resources and to analyse case studies and program codes as well.

Last update: Nachtigalová Iva (22.07.2013)
Syllabus -

  1. 1. HTTP protocol - protocol versions and their characteristics, communication model, the structure of requests and responses, HTTP methods, headers and status codes.
  2. 2. Technology and tools of design and implementation of dynamic web applications - client technologies, server technologies, PHP language, Apache web server, the basic configuration.
  3. 3. Introduction to PHP - lexical structure, data types, constants, variables, (superglobal) arrays, commands for control the code flow, string interpretation, including files, built-in and user functions.
  4. 4. Advanced PHP properties - arrays and time data handling, string handling, regular expressions, basic and advanced OOP capabilities, handling with file and operating system.
  5. 5. Connection PHP with MySQL database - using the mysqli extension, starting and termination connection, errors handling, interaction with databases, queries and decomposition of the query results. PhpMyAdmin web client.
  6. 6. Form elements in XHTML. Transmission of data on a web server - GET and POST method, data transmission, data processing in PHP.
  7. 7. Maintaining status information - cookies method, structure, receiving and sending out/in PHP, session method, SID and the way of transmission, session variables, session handling in PHP, HTTP authentication, forms authentication in PHP.
  8. 8. Introduction to JavaScript - lexical structure, data types, constants, variables, arrays, control commands for control the code flow, user functions.
  9. 9. Advanced capabilities of JavaScript - client side of language, connection to hypertext documents, BOM and DOM, object hierarchy, DOM nodes handling, cookies handling, CSS handling, forms handling, events handling.
  10. 10. Web applications security - causes of vulnerability, attacks over all inputs, attacks through cookies and session cookies, attacks exploit technology bugs, social engineering.
  11. 11. Web applications security - passwords breaking, form spam, methods of protection.
  12. 12. Web applications architecture, templating systems, SMARTY system, systems Model-View-Controller (MVC), functions of MVC parts.
  13. 13. Search Engine Optimization - searching principles, indexing, generation of search results, evaluation factors, on-page and off-page optimization factors, recommended techniques, XML maps.
  14. 14. The development of sample dynamic web application like web blog.

Last update: TAJ445 (30.09.2013)
Learning resources -

The PHP Group: PHP Manual [on-line][cit. 9. 11. 2012] Availability on the Internet: http://www.php.net/manual/en/.

The Apache Software Foundation: Apache HTTP Server Documentation [on-line][cit. 9. 11. 2012] Availability on the Internet: http://httpd.apache.org/docs/.

Refsnes Data: w3schools.com - the world's largest web development site [on-line][cit. 9. 11. 2012]. Availability on the Internet: http://w3schools.com/.

Last update: Nachtigalová Iva (22.07.2013)
Entry requirements -

Study of the course assumes:

  • knowledge to create valid, well-styled, usable and accessible hypertext documents in XHTML and CSS languages (i.e. to create published content using semantic and structural elements of XHTML in accordance with language standard, to create layouts and to format text, background, fonts, links, lists, and tables using properties and values of CSS in accordance with language standard, to improve and usability and accessibility of published content by recommended XHTML and CSS techniques)
  • knowledge of aspects of simple databases design (i.e. data types, relational data model, primary and foreign keys) and knowledge of using SQL queries to interact with databases (i.e. commands for creating and editing diagrams and commands for inserting, retrieving, editing and deleting data)

Required skills can be obtained after the studies of courses listed in the Registration Requirements.

Last update: Nachtigalová Iva (22.07.2013)
Registration requirements -

Database Systems, Computer Presentations

Last update: Nachtigalová Iva (22.07.2013)
Teaching methods
Activity Credits Hours
Účast na přednáškách 1 28
Příprava na přednášky, semináře, laboratoře, exkurzi nebo praxi 1 28
Účast na seminářích 1 28
3 / 5 84 / 140
Coursework assessment
Form Significance
Continuous assessment of study performance and course -credit tests 50

 
VŠCHT Praha