Web development... the server side (of the force)

Size: px
Start display at page:

Download "Web development... the server side (of the force)"

Transcription

1 Web development... the server side (of the force) Fabien POULARD Document under license Creative Commons Attribution Share Alike 2.5

2 Web development... the server side (of the force) To take full advantage of the current slides, you can go to :

3 Contents Server side / Client side... brief review of HTTP PHP 4 vs. PHP 5... the real reasons for switching Fundamentals of PHP (language syntax) Execution flow control Object oriented programming Interfacing with a database Interfacing with the client side Variables and constants you should know Resources... behind this short formation

4 Server side / Client side... brief review of HTTP Accessing a web application on the network is done is several times : CLIENT SIDE SERVER SIDE HTTP 1 : ask URL

5 Server side / Client side... brief review of HTTP Accessing a web application on the network is done is several times : CLIENT SIDE SERVER SIDE 2 : get the document by eventually executing scripts

6 Server side / Client side... brief review of HTTP Accessing a web application on the network is done is several times : CLIENT SIDE SERVER SIDE 3 : send the document HTTP

7 Server side / Client side... brief review of HTTP Accessing a web application on the network is done is several times : CLIENT SIDE SERVER SIDE 4 : execute eventually client scripts to display the document

8 Server side / Client side... brief review of HTTP On the client side we find : HTML/XHTML/CSS JavaScript / VBScript Applets Java... On the server side we find : PHP / ASP / CGI /... Servlets Java...

9 Server side / Client side... brief review of HTTP The service scripts are executed on the server and transformed into client side languages. The execution process on the server side cannot be interrupted by a client side action (except AJAX...) It is possible to send data from the server to the client before the end of the script execution, especially when the script need a long execution but is able to give results along its execution

10 Server side / Client side... brief review of HTTP In order to develop in PHP it is more than a good idea to have a webserver (and databases servers depending on the need) installed locally on the computer used for the development. Under Windows, you can use EasyPHP to install a complete WAMP (Windows, Apache, MySQL, PHP) server : You will then be able to access your server at the address :

11 Server side / Client side... brief review of HTTP Web Server (includes PHP) MySQL Server

12 PHP 4 vs. PHP 5... the real reasons for switching There are currently two major versions of PHP existing concurrently : PHP4 and PHP5. Considering the huge number of scripts in PHP4, the migration to PHP5 is very slow. It is difficult to have PHP4 and PHP5 cohabiting on the same server, reason why PHP5 is not yet well adopted. However, PHP5 is mostly retrocompatible with PHP4, only PHP4 hacks are not compatible. So, a clean PHP4 scripts will work with PHP5.

13 PHP 4 vs. PHP 5... the real reasons for switching The advantages of PHP5 over PHP4 are : the interpreter (Zend Engine 2.0) is way faster and so the scripts are executed in less time, consuming less resource on the server side PHP5 supports a larger number of databases (MySQL5, SQLite,...) The PHP5 object programming handling is more evolved than the one from PHP4 and provides a syntax close to Java/C++ PHP5 integrates an exception model such that you can throw and catch exceptions.

14 Fundamentals of PHP (language syntax) The syntax is similar to C, proof is that most of PHP developers use their editor in C-mode when they develop in PHP. A bloc script starts with <?php <?php and ends with?>?> /* */ and // // delimit comments Each instruction ends with a semi-colon : ; <?php /* A comment spreaded out on * several lines in the file */ echo Hello World ; // a comment on one line?>

15 Fundamentals of PHP (language syntax) Variables MUST start with a dollar $ There is no need to declare the variables and all the variables (except $this) are mutable (no fixed type) You do not have to take care of the memory, PHP will unset the variables by itself <?php /* Assign the string Hello World to * the variable */ $var = Hello World ; echo '$var'; // will output $var echo $var ; // will output Hello World echo $var; // will output Hello World?>

16 Fundamentals of PHP (language syntax) By default the variables are set to NULL which is equivalent to 0 or to the empty string. Arrays are declared implicitly with the constructor array() or explicitly by using [] [] <?php $var = Hello World ; // $var is a string $var = array(); // $var has mutated to an array $n; // $n is a variable with value NULL $n[] = 3; // $n is an array with one row $n[] = 4; print_r($n); // Array ( [0] => 3 [1] => 4)?>

17 Fundamentals of PHP (language syntax) Variables are available only in their scope! The scope of a variable declared outside any function/class bloc is global. Otherwise it is local. The keyword global indicates to consider the global value identified by the name in parameter. <?php $var = Hello World ; // $var is global function dummy() { $var = 10; // $var has a local scope echo $var; // 10 global $var; // now we consider the global echo $var; // Hello World }?>

18 Fundamentals of PHP (language syntax) Blocs begin with an open bracket { and end with a closing bracket } Functions are declared using the keyword function and their result is returned with the keyword return return <?php /* a function returning Hello World */ function hello() { return Hello World ; } echo hello(); // will output Hello World echo hello() ; // will output hello()?>

19 Fundamentals of PHP (language syntax) As C, PHP uses only functions. However, it is possible to declare a function that returns nothing. By default, the parameters are passed by copy. In order to pass them by reference, the parameter must be preceded by a &. <?php function silly($param1, &$param2) { $param1 = 10; // modification in local scope $param2 = 10; // modification of the original } $var1=0; $var2=0; silly($var1, $var2); echo $var1, $var2 ; // will output 0, 10?>

20 Fundamentals of PHP (language syntax) PHP has a lot of functions already implemented that can help you. You fill find an exhaustive list of these functions at :

21 Execution flow control There are two types of conditions control : if and switch <?php if (condition1) { // executed if condition1 is true } elseif (condition2) { // executed if condition1 is false and // if condition 1 is true } else { // executed if condition1 and condition2 // are both false }?>

22 Execution flow control <?php switch ($variable) { case value1 : // executed if $variable = value1 break; // necessary case value2 : // executed if $variable = value2 break; // necessary default : // executed if no value found equal }?>

23 Execution flow control Available loops are while, do while, for and foreach <?php while (condition) { // execution while the condition is true } do { // execution at least once and then as long // as the condition is true } while (condition);?>

24 <?php Execution flow control // initial is evaluated once at the beginning for (initial ; condition ; step) { // executed until the condition is false // at the end of each loop, step is executed } foreach( $array as $index => $value) { // executed for each entry of the array // with access to the index as variable // $index and the value as variable $value }?>

25 ?> <?php Execution flow control /* Example of simple loop to print the content of an array */ $arr = array('dog', 'cat', 'fish'); foreach( $arr as $value) { if ($value!= cat ) echo $value. <br/> ; else echo Mawww<br/> ; } /* result : * dog * Mawww * fish */

26 Object oriented programming... PHP4 The object model of PHP is based, as C++, Java,..., on classes. A class is a collection of attributes and methods without any protection system. Everything in a class is public. The attributes are variables that share the same properties as any PHP variable. The methods are functions that share the same properties as any PHP function. A special variable $this represents the current object. A bug in PHP4 makes this variable mutable... but it should not be the case.

27 <?php /* A class representing a chicken... original */ class chicken { var $weight; var $age; /* the constructor is a function with the same name as the class. There is no destructor. */ function chicken($age, $weight) { $this->weight = $weight; $this->age = $age; } }?> function cook() { if ($this->age > 3 $this->weight > 3) echo Hmm... delicious ; else echo Not ready to be cooked! ; }

28 Object oriented programming... PHP4 The constructor is implemented as a method with the same name as the name of the class it is supposed to build. There is no destructor. The only object oriented functionalities implemented in PHP4 are the inheritance, and the methods redefinition. inheritance : a class inherits attributes and methods from its parent. method redefinition : a child redefines the method it has inherited from its parent.

29 <?php /* A class representing a coffee recipient */ class coffee_recipient { function fill() { echo You fill the recipient! ; } } /*Child of coffee_recipient that does not redefine the method fill */ class cup extends coffee_recipient { } /*Child of coffee_recipient that does redefine the method fill */ class mug extends coffee_recipient { function fill() { echo Hop... do not forget the cover! ; } }?>

30 Object oriented programming Sometimes you want to access a class method without instantiated an object. You can use the scope resolution operator :: ::. You can also use the scope resolution operator to call a function from your ancestors that you have redefined. In the particular case of you direct parent, you can use parent:: parent:: Important Note (maybe to much hacking) : the function new used to instantiate objects from a class returns a copy of the object, not a reference.

31 <?php /*Child of coffee_recipient that does redefine the method fill */ class mug extends coffee_recipient { function fill() { echo Hop... do not forget the cover! ; parent::fill(); } }?> /* call the method fill from no object */ coffee_recipient::fill(); // You fill the recipient! /* create an object mug now */ $obj = new mug(); $obj->fill(); // Hop...do not forget the cover! // You fill the recipient!

32 Object oriented programming PHP5 introduces new constructors and destructors : construct() destruct() Apparition of visibility keywords : public, private and protected that can be used like in Java. Introduction of keywords static and abstract. Possibility to overload the functions get, set, call, isset and unset.. However, to understand those you need a good understanding of the PHP core.

33 Interfacing with a database PHP is extensible with modules that can be included at compilation time. Therefore you can access almost any existing database with PHP if you include the right module at compilation time. Most likely, those databases will be available : MySQL PostgreSQL Oracle Using directly the functions for those database give you the best handling on it. However, most of the time you do not need it.

34 Interfacing with a database PEAR (pear.php.net) is a collection of php libraries under BSD licenses implementing almost all the basic feature you may need in a project. In the particular case you want to abstract your database such that your application can work on any database available, you should use the excellent MDB2 : (MySQL driver)

35 Interfacing with a database In order to use a PEAR package, you have to install PEAR on your system and update some php configuration to take care of them. For those who have the good idea to use a Linux (or BSD) Distribution, just use your package manager to install PEAR. Debian : apt-get install PEAR-MDB2 Gentoo : emerge PEAR-MDB2... For those still using Windows, you can find some information :

36 Interfacing with a database <?php /* SET THE PATH TO FIND MDB */ ini_set('include_path', '/path/to/pear/directory'. PATH_SEPARATOR. ini_get('include_path')); $dsn = mysql://login:pass@localhost/db ; $db = &MDB2::factory($dsn); $c = $db->exec( DELETE FROM table ); echo $c rows deleted! ; $res = $db->queryall( SELECT * FROM table ); print_r($res); $db->disconnect();?>

37 Interfacing with the client side HTTP is (was) a non connected protocol, there is no synchrony operations between the server side and the client side. Each one acts independently from the other. However, the client and the server exchange some data. POST and GET data Moreover the server and the clients are able to remember informations about a specific client from one time to another. cookies and sessions

38 Interfacing with the client side POST and GET data The main way of a client to interact with a server is to use forms. Those one can send the information to the server through different methods : GET : the information is encoded in the URL. For example : POST : the information is sent to the server in an hidden (different from secure) way.

39 Interfacing with the client side POST and GET data The form is defined on the client side, in HTML : button to send the script that will form to the server receive the data name used to identify method to use to the data on send the form the server side <form name= dum action= index.php method= POST > <input type= text name= id > <input type= submit > </form>

40 Interfacing with the client side POST and GET data On the server side, the script receives the data by special variables : determined by the method used name of the field sent <?php // file index.php that receives the script /* check the value to validate the user */ if ( $_POST['id'] == admin ) echo Access granted ; else echo Access denied! ;?>

41 Interfacing with the client side POST and GET data In the case the method GET is used, the principle is identical. But instead of the variable $_POST, we will retrieve the data from the variable $_GET. Moreover, as the data for the GET method is passed directly by the URL, it is possible to format URL to send the data without needing forms

42 Client Side <!-- this is my menu --> <a href= my_script.php?action=home >Home</a><br/> <a href= my_script.php?action=forum >Forums</a><br/> <a href= my_script.php?action=contact >Contacts</a><br/> Server Side <?php // this is my_script.php switch ($_GET['action']) { case 'home' : launch_home_interface(); break; case 'forum' : launch_forum_interface(); break; case 'contact' : launch_contact_interface(); break; default : echo I cannot understand your request! ; }?>

43 Variables and constants you should know $_SERVER : indexed array with a lot of information about the server : HTTP_HOST : domain name HTTP_USER_AGENT : identifier of the client that sent the request SERVER_ADDR : address of the server on the network DOCUMENT_ROOT : root directory where the scripts are located REQUEST_METHOD : indicates the request method used (GET or POST). PHP_SELF : location of the script from the root directory

44 Variables and constants you should know $_POST : array indexed by the names of the elements of a form sent by a POST method. $_GET : array indexed by the names of the elements of a form sent by a GET method. FILE : constant which value corresponds to the current name and location of the file executed. You can use this constant in combination with the function dirname() to get the location of the current script. LINE : current line (useful when something goes wrong on you need details) CLASS : name of the current class

45 Resources... behind this short formation The reference : Others tutorials : Coding... coding... and coding! There is no secret, the only way to progress is to get experience. Do not hesitate to ask for help on specialized lists : comp.lang.php alt.php alt.comp.lang.php

Web Development using PHP (WD_PHP) Duration 1.5 months

Web Development using PHP (WD_PHP) Duration 1.5 months Duration 1.5 months Our program is a practical knowledge oriented program aimed at learning the techniques of web development using PHP, HTML, CSS & JavaScript. It has some unique features which are as

More information

PHP Tutorial From beginner to master

PHP Tutorial From beginner to master PHP Tutorial From beginner to master PHP is a powerful tool for making dynamic and interactive Web pages. PHP is the widely-used, free, and efficient alternative to competitors such as Microsoft's ASP.

More information

Short notes on webpage programming languages

Short notes on webpage programming languages Short notes on webpage programming languages What is HTML? HTML is a language for describing web pages. HTML stands for Hyper Text Markup Language HTML is a markup language A markup language is a set of

More information

Facebook Twitter YouTube Google Plus Website Email

Facebook Twitter YouTube Google Plus Website Email PHP MySQL COURSE WITH OOP COURSE COVERS: PHP MySQL OBJECT ORIENTED PROGRAMMING WITH PHP SYLLABUS PHP 1. Writing PHP scripts- Writing PHP scripts, learn about PHP code structure, how to write and execute

More information

Example for Using the PrestaShop Web Service : CRUD

Example for Using the PrestaShop Web Service : CRUD Example for Using the PrestaShop Web Service : CRUD This tutorial shows you how to use the PrestaShop web service with PHP library by creating a "CRUD". Prerequisites: - PrestaShop 1.4 installed on a server

More information

Fachgebiet Technische Informatik, Joachim Zumbrägel

Fachgebiet Technische Informatik, Joachim Zumbrägel Computer Network Lab 2015 Fachgebiet Technische Informatik, Joachim Zumbrägel Overview Internet Internet Protocols Fundamentals about HTTP Communication HTTP-Server, mode of operation Static/Dynamic Webpages

More information

INSTALLING, CONFIGURING, AND DEVELOPING WITH XAMPP

INSTALLING, CONFIGURING, AND DEVELOPING WITH XAMPP INSTALLING, CONFIGURING, AND DEVELOPING WITH XAMPP by Dalibor D. Dvorski, March 2007 Skills Canada Ontario DISCLAIMER: A lot of care has been taken in the accuracy of information provided in this article,

More information

COURSE CONTENT FOR WINTER TRAINING ON Web Development using PHP & MySql

COURSE CONTENT FOR WINTER TRAINING ON Web Development using PHP & MySql COURSE CONTENT FOR WINTER TRAINING ON Web Development using PHP & MySql 1 About WEB DEVELOPMENT Among web professionals, "web development" refers to the design aspects of building web sites. Web development

More information

Intro to Web Programming. using PHP, HTTP, CSS, and Javascript Layton Smith CSE 4000

Intro to Web Programming. using PHP, HTTP, CSS, and Javascript Layton Smith CSE 4000 Intro to Web Programming using PHP, HTTP, CSS, and Javascript Layton Smith CSE 4000 Intro Types in PHP Advanced String Manipulation The foreach construct $_REQUEST environmental variable Correction on

More information

CrownPeak Playbook CrownPeak Hosting with PHP

CrownPeak Playbook CrownPeak Hosting with PHP CrownPeak Playbook CrownPeak Hosting with PHP Version 1.0 2014, Inc. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical,

More information

Certified PHP/MySQL Web Developer Course

Certified PHP/MySQL Web Developer Course Course Duration : 3 Months (120 Hours) Day 1 Introduction to PHP 1.PHP web architecture 2.PHP wamp server installation 3.First PHP program 4.HTML with php 5.Comments and PHP manual usage Day 2 Variables,

More information

IceWarp to IceWarp Server Migration

IceWarp to IceWarp Server Migration IceWarp to IceWarp Server Migration Registered Trademarks iphone, ipad, Mac, OS X are trademarks of Apple Inc., registered in the U.S. and other countries. Microsoft, Windows, Outlook and Windows Phone

More information

INFORMATION BROCHURE Certificate Course in Web Design Using PHP/MySQL

INFORMATION BROCHURE Certificate Course in Web Design Using PHP/MySQL INFORMATION BROCHURE OF Certificate Course in Web Design Using PHP/MySQL National Institute of Electronics & Information Technology (An Autonomous Scientific Society of Department of Information Technology,

More information

Installation Guide for contineo

Installation Guide for contineo Installation Guide for contineo Sebastian Stein Michael Scholz 2007-02-07, contineo version 2.5 Contents 1 Overview 2 2 Installation 2 2.1 Server and Database....................... 2 2.2 Deployment............................

More information

LabVIEW Internet Toolkit User Guide

LabVIEW Internet Toolkit User Guide LabVIEW Internet Toolkit User Guide Version 6.0 Contents The LabVIEW Internet Toolkit provides you with the ability to incorporate Internet capabilities into VIs. You can use LabVIEW to work with XML documents,

More information

Course Name: Course in JSP Course Code: P5

Course Name: Course in JSP Course Code: P5 Course Name: Course in JSP Course Code: P5 Address: Sh No BSH 1,2,3 Almedia residency, Xetia Waddo Duler Mapusa Goa E-mail Id: ITKP@3i-infotech.com Tel: (0832) 2465556 (0832) 6454066 Course Code: P5 3i

More information

Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues

Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues Zend Server 4.0 Beta 2 Release Announcement Thank you for your participation in the Zend Server 4.0 beta program. Your involvement will help us ensure we best address your needs and deliver even higher

More information

Advanced Web Development SCOPE OF WEB DEVELOPMENT INDUSTRY

Advanced Web Development SCOPE OF WEB DEVELOPMENT INDUSTRY Advanced Web Development Duration: 6 Months SCOPE OF WEB DEVELOPMENT INDUSTRY Web development jobs have taken thе hot seat when it comes to career opportunities and positions as a Web developer, as every

More information

Advanced Object Oriented Database access using PDO. Marcus Börger

Advanced Object Oriented Database access using PDO. Marcus Börger Advanced Object Oriented Database access using PDO Marcus Börger ApacheCon EU 2005 Marcus Börger Advanced Object Oriented Database access using PDO 2 Intro PHP and Databases PHP 5 and PDO Marcus Börger

More information

PHP Skills and Techniques

PHP Skills and Techniques PHP Hypertext Pre-Processor Currently Version 4 The Server Side Scripting Technology http://www.php.net PHP Overview About My Person Introduction to PHP History of PHP Dynamic Web Contents -> Server Side

More information

7 Why Use Perl for CGI?

7 Why Use Perl for CGI? 7 Why Use Perl for CGI? Perl is the de facto standard for CGI programming for a number of reasons, but perhaps the most important are: Socket Support: Perl makes it easy to create programs that interface

More information

LAMP [Linux. Apache. MySQL. PHP] Industrial Implementations Module Description

LAMP [Linux. Apache. MySQL. PHP] Industrial Implementations Module Description LAMP [Linux. Apache. MySQL. PHP] Industrial Implementations Module Description Mastering LINUX Vikas Debnath Linux Administrator, Red Hat Professional Instructor : Vikas Debnath Contact

More information

CSCI110 Exercise 4: Database - MySQL

CSCI110 Exercise 4: Database - MySQL CSCI110 Exercise 4: Database - MySQL The exercise This exercise is to be completed in the laboratory and your completed work is to be shown to the laboratory tutor. The work should be done in week-8 but

More information

Drupal CMS for marketing sites

Drupal CMS for marketing sites Drupal CMS for marketing sites Intro Sample sites: End to End flow Folder Structure Project setup Content Folder Data Store (Drupal CMS) Importing/Exporting Content Database Migrations Backend Config Unit

More information

Instructor: Betty O Neil

Instructor: Betty O Neil Introduction to Web Application Development, for CS437/637 Instructor: Betty O Neil 1 Introduction: Internet vs. World Wide Web Internet is an interconnected network of thousands of networks and millions

More information

PHP Integration Kit. Version 2.5.1. User Guide

PHP Integration Kit. Version 2.5.1. User Guide PHP Integration Kit Version 2.5.1 User Guide 2012 Ping Identity Corporation. All rights reserved. PingFederate PHP Integration Kit User Guide Version 2.5.1 December, 2012 Ping Identity Corporation 1001

More information

Load testing with. WAPT Cloud. Quick Start Guide

Load testing with. WAPT Cloud. Quick Start Guide Load testing with WAPT Cloud Quick Start Guide This document describes step by step how to create a simple typical test for a web application, execute it and interpret the results. 2007-2015 SoftLogica

More information

Accessing Data with ADOBE FLEX 4.6

Accessing Data with ADOBE FLEX 4.6 Accessing Data with ADOBE FLEX 4.6 Legal notices Legal notices For legal notices, see http://help.adobe.com/en_us/legalnotices/index.html. iii Contents Chapter 1: Accessing data services overview Data

More information

PHP on IBM i: What s New with Zend Server 5 for IBM i

PHP on IBM i: What s New with Zend Server 5 for IBM i PHP on IBM i: What s New with Zend Server 5 for IBM i Mike Pavlak Solutions Consultant mike.p@zend.com (815) 722 3454 Function Junction Audience Used PHP in Zend Core/Platform New to Zend PHP Looking to

More information

Specialized Programme on Web Application Development using Open Source Tools

Specialized Programme on Web Application Development using Open Source Tools Specialized Programme on Web Application Development using Open Source Tools A. NAME OF INSTITUTE Centre For Development of Advanced Computing B. NAME/TITLE OF THE COURSE C. COURSE DATES WITH DURATION

More information

Mercury Users Guide Version 1.3 February 14, 2006

Mercury Users Guide Version 1.3 February 14, 2006 Mercury Users Guide Version 1.3 February 14, 2006 1 Introduction Introducing Mercury Your corporate shipping has just become easier! The satisfaction of your customers depends on the accuracy of your shipments,

More information

Java Application Developer Certificate Program Competencies

Java Application Developer Certificate Program Competencies Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle

More information

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip Load testing with WAPT: Quick Start Guide This document describes step by step how to create a simple typical test for a web application, execute it and interpret the results. A brief insight is provided

More information

Ficha técnica de curso Código: IFCPR190b. Learning PHP, MySql and JavaScript

Ficha técnica de curso Código: IFCPR190b. Learning PHP, MySql and JavaScript Curso de: Objetivos: Learning PHP, MySql and JavaScript Aprender al desarrollo Web con las herramientas mas extendidas en la red como son un potente lenguaje interpretado, una buena base de datos y un

More information

database abstraction layer database abstraction layers in PHP Lukas Smith BackendMedia smith@backendmedia.com

database abstraction layer database abstraction layers in PHP Lukas Smith BackendMedia smith@backendmedia.com Lukas Smith database abstraction layers in PHP BackendMedia 1 Overview Introduction Motivation PDO extension PEAR::MDB2 Client API SQL syntax SQL concepts Result sets Error handling High level features

More information

install the extension:

install the extension: AITOC s Extensions for Magento Installation Guide Thank you for choosing AITOC s extension for Magento. This document will provide you with the informationn on how to install andd deactivatee this extension.

More information

Specialized Programme on Web Application Development using Open Source Tools

Specialized Programme on Web Application Development using Open Source Tools Specialized Programme on Web Application Development using Open Source Tools Objective: At the end of the course, Students will be able to: Understand various open source tools(programming tools and databases)

More information

CSCI110: Examination information.

CSCI110: Examination information. CSCI110: Examination information. The exam for CSCI110 will consist of short answer questions. Most of them will require a couple of sentences of explanation of a concept covered in lectures or practical

More information

600-152 People Data and the Web Forms and CGI. HTML forms. A user interface to CGI applications

600-152 People Data and the Web Forms and CGI. HTML forms. A user interface to CGI applications HTML forms A user interface to CGI applications Outline A simple example form. GET versus POST. cgi.escape(). Input controls. A very simple form a simple form

More information

INTRODUCTION TO WEB TECHNOLOGY

INTRODUCTION TO WEB TECHNOLOGY UNIT-I Introduction to Web Technologies: Introduction to web servers like Apache1.1, IIS, XAMPP (Bundle Server), WAMP Server(Bundle Server), handling HTTP Request and Response, installation of above servers

More information

Log Analyzer Reference

Log Analyzer Reference IceWarp Unified Communications Log Analyzer Reference Version 10.4 Printed on 27 February, 2012 Contents Log Analyzer 1 Quick Start... 2 Required Steps... 2 Optional Steps... 3 Advanced Configuration...

More information

Course Number: IAC-SOFT-WDAD Web Design and Application Development

Course Number: IAC-SOFT-WDAD Web Design and Application Development Course Number: IAC-SOFT-WDAD Web Design and Application Development Session 1 (10 Hours) Client Side Scripting Session 2 (10 Hours) Server Side Scripting - I Session 3 (10 hours) Database Session 4 (10

More information

DIPLOMA IN WEBDEVELOPMENT

DIPLOMA IN WEBDEVELOPMENT DIPLOMA IN WEBDEVELOPMENT Prerequisite skills Basic programming knowledge on C Language or Core Java is must. # Module 1 Basics and introduction to HTML Basic HTML training. Different HTML elements, tags

More information

Pemrograman Web. 1. Pengenalan Web Server. M. Udin Harun Al Rasyid, S.Kom, Ph.D http://lecturer.eepis-its.edu/~udinharun udinharun@eepis-its.

Pemrograman Web. 1. Pengenalan Web Server. M. Udin Harun Al Rasyid, S.Kom, Ph.D http://lecturer.eepis-its.edu/~udinharun udinharun@eepis-its. Pemrograman Web 1. Pengenalan Web Server M. Udin Harun Al Rasyid, S.Kom, Ph.D http://lecturer.eepis-its.edu/~udinharun udinharun@eepis-its.edu Table of Contents World Wide Web Web Page Web Server Internet

More information

LICENSE4J LICENSE MANAGER USER GUIDE

LICENSE4J LICENSE MANAGER USER GUIDE LICENSE4J LICENSE MANAGER USER GUIDE VERSION 4.5.5 LICENSE4J www.license4j.com Table of Contents Getting Started... 4 Managing Products... 6 Create Product... 6 Edit Product... 7 Refresh, Delete Product...

More information

Certified PHP Developer VS-1054

Certified PHP Developer VS-1054 Certified PHP Developer VS-1054 Certification Code VS-1054 Certified PHP Developer Vskills certification for PHP Developers assesses the candidate for developing PHP based applications. The certification

More information

Web Application Development

Web Application Development Web Application Development Introduction Because of wide spread use of internet, web based applications are becoming vital part of IT infrastructure of large organizations. For example web based employee

More information

Oracle Forms Services Secure Web.Show_Document() calls to Oracle Reports Server 6i

Oracle Forms Services Secure Web.Show_Document() calls to Oracle Reports Server 6i Oracle Forms Services Secure Web.Show_Document() calls to Oracle Reports Server 6i $Q2UDFOH7HFKQLFDO:KLWHSDSHU 0DUFK Secure Web.Show_Document() calls to Oracle Reports Server 6i Introduction...3 solution

More information

Course Outline Basic Web Development

Course Outline Basic Web Development Course Outline Basic Web Development For Professionals Who Can Participate? Anyone can join who has the interest to get into the creative web development profession. Prerequisite: Technical Skill: Must

More information

Magento & Zend Benchmarks Version 1.2, 1.3 (with & without Flat Catalogs)

Magento & Zend Benchmarks Version 1.2, 1.3 (with & without Flat Catalogs) Magento & Zend Benchmarks Version 1.2, 1.3 (with & without Flat Catalogs) 1. Foreword Magento is a PHP/Zend application which intensively uses the CPU. Since version 1.1.6, each new version includes some

More information

LICENSE4J AUTO LICENSE GENERATION AND ACTIVATION SERVER USER GUIDE

LICENSE4J AUTO LICENSE GENERATION AND ACTIVATION SERVER USER GUIDE LICENSE4J AUTO LICENSE GENERATION AND ACTIVATION SERVER USER GUIDE VERSION 1.6.0 LICENSE4J www.license4j.com Table of Contents Getting Started... 2 Server Roles... 4 Installation... 9 Server WAR Deployment...

More information

Designing and Implementing an Online Bookstore Website

Designing and Implementing an Online Bookstore Website KEMI-TORNIO UNIVERSITY OF APPLIED SCIENCES TECHNOLOGY Cha Li Designing and Implementing an Online Bookstore Website The Bachelor s Thesis Information Technology programme Kemi 2011 Cha Li BACHELOR S THESIS

More information

CSC 551: Web Programming. Spring 2004

CSC 551: Web Programming. Spring 2004 CSC 551: Web Programming Spring 2004 Java Overview Design goals & features platform independence, portable, secure, simple, object-oriented, Programming models applications vs. applets vs. servlets intro

More information

www.virtualians.pk CS506 Web Design and Development Solved Online Quiz No. 01 www.virtualians.pk

www.virtualians.pk CS506 Web Design and Development Solved Online Quiz No. 01 www.virtualians.pk CS506 Web Design and Development Solved Online Quiz No. 01 Which of the following is a general purpose container? JFrame Dialog JPanel JApplet Which of the following package needs to be import while handling

More information

JavaScript: Client-Side Scripting. Chapter 6

JavaScript: Client-Side Scripting. Chapter 6 JavaScript: Client-Side Scripting Chapter 6 Textbook to be published by Pearson Ed 2015 in early Pearson 2014 Fundamentals of Web http://www.funwebdev.com Development Section 1 of 8 WHAT IS JAVASCRIPT

More information

7 Web Databases. Access to Web Databases: Servlets, Applets. Java Server Pages PHP, PEAR. Languages: Java, PHP, Python,...

7 Web Databases. Access to Web Databases: Servlets, Applets. Java Server Pages PHP, PEAR. Languages: Java, PHP, Python,... 7 Web Databases Access to Web Databases: Servlets, Applets Java Server Pages PHP, PEAR Languages: Java, PHP, Python,... Prof. Dr. Dietmar Seipel 837 7.1 Access to Web Databases by Servlets Java Servlets

More information

WIRIS quizzes web services Getting started with PHP and Java

WIRIS quizzes web services Getting started with PHP and Java WIRIS quizzes web services Getting started with PHP and Java Document Release: 1.3 2011 march, Maths for More www.wiris.com Summary This document provides client examples for PHP and Java. Contents WIRIS

More information

Glassfish, JAVA EE, Servlets, JSP, EJB

Glassfish, JAVA EE, Servlets, JSP, EJB Glassfish, JAVA EE, Servlets, JSP, EJB Java platform A Java platform comprises the JVM together with supporting class libraries. Java 2 Standard Edition (J2SE) (1999) provides core libraries for data structures,

More information

Web Development on the SOEN 6011 Server

Web Development on the SOEN 6011 Server Web Development on the SOEN 6011 Server Stephen Barret October 30, 2007 Introduction Systems structured around Fowler s patterns of Enterprise Application Architecture (EAA) require a multi-tiered environment

More information

Installation Instructions

Installation Instructions Installation Instructions 25 February 2014 SIAM AST Installation Instructions 2 Table of Contents Server Software Requirements... 3 Summary of the Installation Steps... 3 Application Access Levels... 3

More information

Java (12 Weeks) Introduction to Java Programming Language

Java (12 Weeks) Introduction to Java Programming Language Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short

More information

If you wanted multiple screens, there was no way for data to be accumulated or stored

If you wanted multiple screens, there was no way for data to be accumulated or stored Handling State in Web Applications Jeff Offutt http://www.cs.gmu.edu/~offutt/ SWE 642 Software Engineering for the World Wide Web sources: Professional Java Server Programming, Patzer, Wrox Web Technologies:

More information

Content Management System

Content Management System Content Management System XT-CMS INSTALL GUIDE Requirements The cms runs on PHP so the host/server it is intended to be run on should ideally be linux based with PHP 4.3 or above. A fresh install requires

More information

JAVASCRIPT AND COOKIES

JAVASCRIPT AND COOKIES JAVASCRIPT AND COOKIES http://www.tutorialspoint.com/javascript/javascript_cookies.htm Copyright tutorialspoint.com What are Cookies? Web Browsers and Servers use HTTP protocol to communicate and HTTP

More information

Web Programming Languages Overview

Web Programming Languages Overview Web Programming Languages Overview Thomas Powell tpowell@pint.com Web Programming in Context Web Programming Toolbox ActiveX Controls Java Applets Client Side Helper Applications Netscape Plug-ins Scripting

More information

Writing Scripts with PHP s PEAR DB Module

Writing Scripts with PHP s PEAR DB Module Writing Scripts with PHP s PEAR DB Module Paul DuBois paul@kitebird.com Document revision: 1.02 Last update: 2005-12-30 As a web programming language, one of PHP s strengths traditionally has been to make

More information

CCM 4350 Week 11. Security Architecture and Engineering. Guest Lecturer: Mr Louis Slabbert School of Science and Technology.

CCM 4350 Week 11. Security Architecture and Engineering. Guest Lecturer: Mr Louis Slabbert School of Science and Technology. CCM 4350 Week 11 Security Architecture and Engineering Guest Lecturer: Mr Louis Slabbert School of Science and Technology CCM4350_CNSec 1 Web Server Security The Web is the most visible part of the net

More information

Modern Web Application Framework Python, SQL Alchemy, Jinja2 & Flask

Modern Web Application Framework Python, SQL Alchemy, Jinja2 & Flask Modern Web Application Framework Python, SQL Alchemy, Jinja2 & Flask Devert Alexandre December 29, 2012 Slide 1/62 Table of Contents 1 Model-View-Controller 2 Flask 3 First steps 4 Routing 5 Templates

More information

Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies)

Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies) Course Name: ADVANCE COURSE IN SOFTWARE DEVELOPMENT (Specialization:.Net Technologies) Duration of Course: 6 Months Fees: Rs. 25,000/- (including Service Tax) Eligibility: B.E./B.Tech., M.Sc.(IT/ computer

More information

Curriculum Map. Discipline: Computer Science Course: C++

Curriculum Map. Discipline: Computer Science Course: C++ Curriculum Map Discipline: Computer Science Course: C++ August/September: How can computer programs make problem solving easier and more efficient? In what order does a computer execute the lines of code

More information

Table of Contents. Java CGI HOWTO

Table of Contents. Java CGI HOWTO Table of Contents Java CGI HOWTO...1 by David H. Silber javacgi document@orbits.com...1 1.Introduction...1 2.Setting Up Your Server to Run Java CGI Programs (With Explanations)...1 3.Setting Up Your Server

More information

ESPResSo Summer School 2012

ESPResSo Summer School 2012 ESPResSo Summer School 2012 Introduction to Tcl Pedro A. Sánchez Institute for Computational Physics Allmandring 3 D-70569 Stuttgart Germany http://www.icp.uni-stuttgart.de 2/26 Outline History, Characteristics,

More information

This presentation will discuss how to troubleshoot different types of project creation issues with Information Server DataStage version 8.

This presentation will discuss how to troubleshoot different types of project creation issues with Information Server DataStage version 8. This presentation will discuss how to troubleshoot different types of project creation issues with Information Server DataStage version 8. Page 1 of 29 The objectives of this module are to list the causes

More information

CEFNS Web Hosting a Guide for CS212

CEFNS Web Hosting a Guide for CS212 CEFNS Web Hosting a Guide for CS212 INTRODUCTION: TOOLS: In CS212, you will be learning the basics of web development. Therefore, you want to keep your tools to a minimum so that you understand how things

More information

IceWarp Server. Log Analyzer. Version 10

IceWarp Server. Log Analyzer. Version 10 IceWarp Server Log Analyzer Version 10 Printed on 23 June, 2009 i Contents Log Analyzer 1 Quick Start... 2 Required Steps... 2 Optional Steps... 2 Advanced Configuration... 5 Log Importer... 6 General...

More information

CTIS 256 Web Technologies II. Week # 1 Serkan GENÇ

CTIS 256 Web Technologies II. Week # 1 Serkan GENÇ CTIS 256 Web Technologies II Week # 1 Serkan GENÇ Introduction Aim: to be able to develop web-based applications using PHP (programming language) and mysql(dbms). Internet is a huge network structure connecting

More information

COURSE SYLLABUS EDG 6931: Designing Integrated Media Environments 2 Educational Technology Program University of Florida

COURSE SYLLABUS EDG 6931: Designing Integrated Media Environments 2 Educational Technology Program University of Florida COURSE SYLLABUS EDG 6931: Designing Integrated Media Environments 2 Educational Technology Program University of Florida CREDIT HOURS 3 credits hours PREREQUISITE Completion of EME 6208 with a passing

More information

15-415 Database Applications Recitation 10. Project 3: CMUQFlix CMUQ s Movies Recommendation System

15-415 Database Applications Recitation 10. Project 3: CMUQFlix CMUQ s Movies Recommendation System 15-415 Database Applications Recitation 10 Project 3: CMUQFlix CMUQ s Movies Recommendation System Project Objective 1. Set up a front-end website with PostgreSQL back-end 2. Allow users to login, like

More information

Building Java Servlets with Oracle JDeveloper

Building Java Servlets with Oracle JDeveloper Building Java Servlets with Oracle JDeveloper Chris Schalk Oracle Corporation Introduction Developers today face a formidable task. They need to create large, distributed business applications. The actual

More information

Introduction to Server-Side Programming. Charles Liu

Introduction to Server-Side Programming. Charles Liu Introduction to Server-Side Programming Charles Liu Overview 1. Basics of HTTP 2. PHP syntax 3. Server-side programming 4. Connecting to MySQL Request to a Static Site Server: 1. Homepage lookup 2. Send

More information

Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON

Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON Revista Informatica Economică, nr. 4 (44)/2007 45 Developing a Web Server Platform with SAPI Support for AJAX RPC using JSON Iulian ILIE-NEMEDI, Bucharest, Romania, inemedi@ie.ase.ro Writing a custom web

More information

Building a Multi-Threaded Web Server

Building a Multi-Threaded Web Server Building a Multi-Threaded Web Server In this lab we will develop a Web server in two steps. In the end, you will have built a multi-threaded Web server that is capable of processing multiple simultaneous

More information

MA-WA1920: Enterprise iphone and ipad Programming

MA-WA1920: Enterprise iphone and ipad Programming MA-WA1920: Enterprise iphone and ipad Programming Description This 5 day iphone training course teaches application development for the ios platform. It covers iphone, ipad and ipod Touch devices. This

More information

Moving from CS 61A Scheme to CS 61B Java

Moving from CS 61A Scheme to CS 61B Java Moving from CS 61A Scheme to CS 61B Java Introduction Java is an object-oriented language. This document describes some of the differences between object-oriented programming in Scheme (which we hope you

More information

All MySQL and PHP training students receive a copy of Apress' Beginning PHP and MySQL 5: From Novice to Professional and other related courseware.

All MySQL and PHP training students receive a copy of Apress' Beginning PHP and MySQL 5: From Novice to Professional and other related courseware. Course Code: Course Title: Duration Training Objectives PHP-DMV-001 Building Data-Driven PHP Web Sites with Adobe Dreamweaver CS5 2 Days To teach attendees the PHP programming skills they need to successfully

More information

MAGENTO Migration Tools

MAGENTO Migration Tools MAGENTO Migration Tools User Guide Copyright 2014 LitExtension.com. All Rights Reserved. Magento Migration Tools: User Guide Page 1 Content 1. Preparation... 3 2. Setup... 5 3. Plugins Setup... 7 4. Migration

More information

<Insert Picture Here> What's New in NetBeans IDE 7.2

<Insert Picture Here> What's New in NetBeans IDE 7.2 Slide 1 What's New in NetBeans IDE 7.2 The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated

More information

RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE CISY 233 INTRODUCTION TO PHP

RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE CISY 233 INTRODUCTION TO PHP RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE CISY 233 INTRODUCTION TO PHP I. Basic Course Information A. Course Number and Title: CISY 233 Introduction to PHP B. New or Modified Course: Modified

More information

Rweb: Web-based Statistical Analysis

Rweb: Web-based Statistical Analysis Rweb: Web-based Statistical Analysis Jeff Banfield Department of Mathematical Science Montana State University Bozeman, MT 59717 Abstract Rweb is a freely accessible statistical analysis environment that

More information

Bubble Full Page Cache for Magento

Bubble Full Page Cache for Magento User Guide Author: Version: Website: Support: Johann Reinke 2.0 http://www.bubbleshop.net bubblecode.net@gmail.com Table of Contents 1 Introducing Bubble Full Page Cache... 3 1.1 Features... 3 1.2 Compatibility...

More information

Version 1.0.0 USER GUIDE

Version 1.0.0 USER GUIDE Magento Extension Grid Manager Version 1.0.0 USER GUIDE Last update: Aug 13 th, 2013 DragonFroot.com Grid Manager v1-0 Content 1. Introduction 2. Installation 3. Configuration 4. Troubleshooting 5. Contact

More information

ISI ACADEMY Web applications Programming Diploma using PHP& MySQL

ISI ACADEMY Web applications Programming Diploma using PHP& MySQL ISI ACADEMY for PHP& MySQL web applications Programming ISI ACADEMY Web applications Programming Diploma using PHP& MySQL HTML - CSS - JavaScript PHP - MYSQL What You'll Learn Be able to write, deploy,

More information

An Introduction to Developing ez Publish Extensions

An Introduction to Developing ez Publish Extensions An Introduction to Developing ez Publish Extensions Felix Woldt Monday 21 January 2008 12:05:00 am Most Content Management System requirements can be fulfilled by ez Publish without any custom PHP coding.

More information

1. Introduction. 2. Web Application. 3. Components. 4. Common Vulnerabilities. 5. Improving security in Web applications

1. Introduction. 2. Web Application. 3. Components. 4. Common Vulnerabilities. 5. Improving security in Web applications 1. Introduction 2. Web Application 3. Components 4. Common Vulnerabilities 5. Improving security in Web applications 2 What does World Wide Web security mean? Webmasters=> confidence that their site won

More information

CSCI-UA:0060-02. Database Design & Web Implementation. Professor Evan Sandhaus sandhaus@cs.nyu.edu evan@nytimes.com

CSCI-UA:0060-02. Database Design & Web Implementation. Professor Evan Sandhaus sandhaus@cs.nyu.edu evan@nytimes.com CSCI-UA:0060-02 Database Design & Web Implementation Professor Evan Sandhaus sandhaus@cs.nyu.edu evan@nytimes.com Lecture #27: DB Administration and Modern Architecture:The last real lecture. Database

More information

PostgreSQL Functions By Example

PostgreSQL Functions By Example Postgre joe.conway@credativ.com credativ Group January 20, 2012 What are Functions? Introduction Uses Varieties Languages Full fledged SQL objects Many other database objects are implemented with them

More information

Oracle Forms Services Secure Web.Show_Document() calls to Oracle Reports

Oracle Forms Services Secure Web.Show_Document() calls to Oracle Reports Oracle Forms Services Secure Web.Show_Document() calls to Oracle Reports $Q2UDFOH7HFKQLFDO:KLWHSDSHU )HEUXDU\ Secure Web.Show_Document() calls to Oracle Reports Introduction...3 Using Web.Show_Document

More information

Install Apache on windows 8 Create your own server

Install Apache on windows 8 Create your own server Source: http://www.techscio.com/install-apache-on-windows-8/ Install Apache on windows 8 Create your own server Step 1: Downloading Apache Go to Apache download page and download the latest stable version

More information