PHP on a Fast Track a quick introduction to PHP programming by Jarek Francik last time updated in 2012.

Slides:



Advertisements
Similar presentations
WordPress Installation for Beginners Sheila Bergman
Advertisements

PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.
1 Web Servers / Deployment Alastair Dawes Original by Bhupinder Reehal.
PHP on a Fast Track and other web development techniques a quick introduction to web programming by Jarek Francik.
Languages for Dynamic Web Documents
Server-Side vs. Client-Side Scripting Languages
Creating WordPress Websites. Creating a site on your computer Local server Local WordPress installation Setting Up Dreamweaver.
Website Development with PHP and MySQL Introduction.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
PHP Scripting Language. Introduction “PHP” is an acronym for “PHP: Hypertext Preprocessor.” It is an interpreted, server-side scripting language. Originally.
Dynamic Web site With PHP and MySQL. MySQL The combination of MySQL database and PHP scripting language is optimum for building dynamic websites. MySQL.
INTRO TO MAKING A WEBSITE Mark Zhang.  HTML  CSS  Javascript  PHP  MySQL  …That’s a lot of stuff!
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
PHP on a Fast Track a quick introduction to PHP programming by Jarek Francik.
SEEM4570: XAMPP, Eclipse, Summary of Html Kangfei Zhao Room 711,ERB
SYST Web Technologies SYST Web Technologies Installing a Web Server (XAMPP)
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
PHP Programming. Topics Background and History of PHP Installation Comments in PHP Variables Conditions Loops Functions File Handling Database Handling.
E-Commerce LAB#1 Samia alblwi1E-Commerce ( IS412) 2011.
SJSU CS157B Dr. Lee1  2004 Jenny Mitchell Two Useful Tools You Can’t Live Without by Jenny Mitchell SJSU CS157B Section PHP and MySQL.
Lecture 3 – Data Storage with XML+AJAX and MySQL+socket.io
© Yanbu University College YANBU UNIVERSITY COLLEGE Management Science Department © Yanbu University College Module 6:WEB SERVER AND SERVER SIDE SCRPTING,
1Computer Sciences Department Princess Nourah bint Abdulrahman University.
Session 5: Working with MySQL iNET Academy Open Source Web Development.
1 Chapter 8 – Working with Databases spring into PHP 5 by Steven Holzner Slides were developed by Jack Davis College of Information Science and Technology.
INTERNET APPLICATION DEVELOPMENT For More visit:
Chapter 1: Introduction to Web
Server-side Scripting Powering the webs favourite services.
Multifarious Project Team Members Alberto Dominguez Nirmit Gang Jimmy Garcia Javier Handal.
Web Server Administration Chapter 7 Installing and Testing a Programming Environment.
SQL Queries Relational database and SQL MySQL LAMP SQL queries A MySQL Tutorial and applications Database Building Assignment.
JavaScript – Quiz #9 Lecture Code:
Introduction to MySQL Lab no. 10 Advance Database Management System.
PHP MySQL Introduction. MySQL is the most popular open-source database system. What is MySQL? MySQL is a database. The data in MySQL is stored in database.
School of Computing and Information Systems CS 371 Web Application Programming PHP – Forms, Cookies, Sessions and Database.
SYST Web Technologies SYST Web Technologies Databases & MySQL.
Chapter 8 Collecting Data with Forms. Chapter 8 Lessons Introduction 1.Plan and create a form 2.Edit and format a form 3.Work with form objects 4.Test.
1 Welcome to CSC 301 Web Programming Charles Frank.
Web Scripting [PHP] CIS166AE Wednesdays 6:00pm – 9:50pm Rob Loy.
CS 174: Web Programming August 31 Class Meeting Department of Computer Science San Jose State University Fall 2015 Instructor: Ron Mak
Creating A Database Driven Website 1.Setting Up Your Web Server 2.Creating a Database 3.Creating a Webpage to Display Information From a Database 4.Creating.
PHP “Personal Home Page Hypertext Pre-processor” (a recursive acronym) Allows you to create dynamic web pages and link web pages to a database.
Creating a simple database This shows you how to set up a database using PHPMyAdmin (installed with WAMP)
WHAT IS SERVER SIDE SCRIPTING? Server-side scripting is a web server technology in which a user's request is verified by running a script directly on the.
PHP Introduction PHP is a server-side scripting language.
Unit 1 – Web Concepts Instructor: Brent Presley.
CSC 405: Web Application Engineering II8.1 Web programming using PHP What have we learnt? What have we learnt? Underlying technologies of database supported.
IS2803 Developing Multimedia Applications for Business (Part 2) Lecture 2: Introduction to IS2803 Rob Gleasure
8 th Semester, Batch 2009 Department Of Computer Science SSUET.
Intro to APACHE, MySQL, and PHP & freely available (hackable) Packages Aonghus Sugrue 04 Oct 2012.
Web Page Designing With Dreamweaver MX\Session 1\1 of 9 Session 1 Introduction to PHP Hypertext Preprocessor - PHP.
ASP.NET WEB Applications. ASP.NET  Web application framework developed by Microsoft  Build dynamic data driven web applications and web services  Subset.
CGS 3066: Web Programming and Design Spring 2016 Introduction to Server-Side Programming.
Basics Components of Web Design & Development Basics, Components, Design and Development.
ITX2000 Remote hosts and web servers Prof. Xiaohong (Sharon) Gao Room: T125 Ext: Week 8 – Review Reference:
PHP is a server scripting language, and a powerful tool for making dynamic and interactive Web pages. PHP is a widely-used, free, and efficient alternative.
Web Programming Language
Tonga Institute of Higher Education IT 141: Information Systems
Introduction and Principles
Introduction to PHP FdSc Module 109 Server side scripting and
PHP / MySQL Introduction
Tonga Institute of Higher Education IT 141: Information Systems
Title: Tech Training Certificate: Ace of Initiative Program
PHP and Forms.
Web Servers / Deployment
Tonga Institute of Higher Education IT 141: Information Systems
Tutorial 6 PHP & MySQL Li Xu
BOF #1 – Fundamentals of the Web
PHP By Prof. B.A.Khivsara Note: The material to prepare this presentation has been taken from internet and are generated only for students reference and.
Web Application Development Using PHP
Presentation transcript:

PHP on a Fast Track a quick introduction to PHP programming by Jarek Francik last time updated in 2012

Client & Server ClientServer

Client & Server ClientServer

Client & Server ClientServer Remote File System

Client & Server ClientServer REQUEST: GET RESPONSE: HTML Remote File System

Client & Server CLIENT SIDE PROCESSING ClientServer REQUEST: GET RESPONSE: HTML Files served over the network may contain HTML, CSS, JavaScript, Flash and may be pretty much complex! Remote File System

Client & Server ClientServer REQUEST: GET RESPONSE: HTML Remote File System

Client & Server ClientServer REQUEST: GET RESPONSE: HTML Remote File System REQUEST: GET RESPONSE: HTML

Client & Server ClientServer REQUEST: POST RESPONSE: HTML Remote File System RESPONSE: HTML REQUEST: POST DB

Client & Server ClientServer REQUEST: POST RESPONSE: PHP Remote File System REQUEST: POST RESPONSE: PHP DB SERVER SIDE PROCESSING Great Hiking Shoe Perfect Company

Client-Side ProcessingServer-Side Processing DB

Client-Side Processing Executed locally, on client’s computer Results visible immediately Fast & dynamic Processing within a single webpage Information cannot be shared No Databases* Keeping things secret is very difficult – everything is on the user’s computer * Limited local database functionality is available in HTML5, but without sharing Server-Side Processing Executed remotely, on a web server Results must be sent over the network Network latency Pages must be re-loaded in order to view the results* Information easily shared Database back-end Flexible and powerful security control * AJAX technology allows for remote updates without pages being reloaded but technically it is a combination of server side and client side technologies

PHP Scripting language for web development Created by Rasmus Lerdorf 16 years ago Currently phasing out Easy to learn but time-consuming to use

Let’s write a shopping cart application

What do we need? Operating System Web Server Database Scripring Language Windows, Linux, MacOS... Appache, IIS, WEBrick... MySQL, Postgres, SQLite, Oracle... PHP, Perl, Python, Ruby, C#, Java... DB

What do we need? Operating System Web Server Database Scripring Language Windows, Linux, MacOS... Appache, IIS, WEBrick... MySQL, Postgres, SQLite, Oracle... PHP, Perl, Python, Ruby, C#, Java... DB

What do we need? Operating System Web Server Database Scripring Language Linux, Windows, MacOS... Appache, IIS, WEBrick... MySQL, Postgres, SQLite, Oracle... PHP, Perl, Python, Ruby, C#, Java... DB

What do we need? Operating System Web Server Database Scripring Language MacOS, Windows, Linux... Appache, IIS, WEBrick... MySQL, Postgres, SQLite, Oracle... PHP, Perl, Python, Ruby, C#, Java... DB

What do we need? Operating System Web Server Database Scripring Language X - Platform Appache MySQL PHP Perl DB

What do we need? Operating System Web Server Database Scripring Language X A M P DB

XAMPP or google for “xampp”

KU Server There is a web server available for you at Find all details there (or check the end of this presentation)

XAMPP 1.Download and install – it’s easy 2.Run XAMPP Control Panel 3.Start Apache & MySql 4.Run in your browser: Click Explore and go to htdocs to browse your web files 6.Use MySql Admin to setup your database with mySqlAdmin

phpMyAdmin

Database structure (SQL) USE test; CREATE TABLE goods ( id int(6) unsigned NOT NULL auto_increment, item varchar(100) NOT NULL default '', price decimal(6,2) NOT NULL default '0.00', image varchar(100) NOT NULL default '', PRIMARY KEY (id) ); INSERT INTO goods VALUES (1, 'Soap', '4.99'); INSERT INTO goods VALUES (2, 'Strawberry Jam', '1.99'); INSERT INTO goods VALUES (3, 'Toothpaste', '2.49'); INSERT INTO goods VALUES (4, '8GB Memory Stick', '22.99');

The First PHP File <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " Your Cart Your Cart <?php ?> cart.php 0

The First PHP File <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " Your Cart Your Cart <?php echo "Hello, world!"; ?> cart.php

Another File: Front Page <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " Your Shop Your Shop Add item #1 to the cart Add item #2 to the cart Add item #3 to the cart Add item #4 to the cart Show your cart index.php 1

What the application should do

What the application should do <?php $action = $_GET['action']; $id = $_GET['id']; echo " DEBUG: Action to do is $action, and item id is $id. "; ?> cart.php 1

Make information persistent HTTP as a stateless protocol protocol with no memory of who you are Cookies Sessions Session variables $_SESSION['cart'] Name of the variable Collection of session variables

Make information persistent must appear in the first line (before DOCTYPE) cart.php

Make information persistent <?php $cart = $_SESSION['cart']; $action = $_GET['action']; $id = $_GET['id']; echo " DEBUG: Action to do is $action, and item id is $id. "; if ($action == 'add') { $cart = $cart. ",$id"; $_SESSION['cart'] = $cart; } echo " DEBUG: Cart is: $cart "; ?> must appear in the first line (before DOCTYPE) cart.php 2

Display Your Cart <?php $cart = $_SESSION['cart']; $action = $_GET['action']; $id = $_GET['id']; if ($action == 'add') { $cart = $cart. ",$id"; $_SESSION['cart'] = $cart; } $myitems = explode(',', $cart);// explode using comma as a separator if (count($myitems) <= 1) echo " Your cart is empty. "; else foreach ($myitems as $i) if ($i != '') { echo " Item id: $i "; } ?> cart.php 3

Connect to the Database <?php $hostname = 'localhost';// localhost is the URL of the server $username = 'root';// the username in this example is root $password = 'elvis';// put here your MySQL root password // connect to the database server $con = mysql_connect($hostname, $username, $password) or die ('Could not connect: '. mysql_error()); // display if connection failed mysql_select_db("test", $con); // choose the test database... cart.php

Connect to the Database <?php $hostname = 'localhost';// localhost is the URL of the server $username = 'root';// the username in this example is root $password = 'elvis';// put here your MySQL root password // connect to the database server $con = mysql_connect($hostname, $username, $password) or die ('Could not connect: '. mysql_error()); // display if connection failed mysql_select_db("test", $con); // choose the test database... Provide the proper username & password (the latter maybe ‘’) cart.php

Display Your Items.... foreach ($myitems as $i) if ($i != '') { $result = mysql_query("SELECT * FROM goods WHERE id = $i"); $row = mysql_fetch_array($result); $item = $row['item']; $price = $row['price']; echo " $item: £$price "; } ?> cart.php 4

Final Polishings cart.php: Better HTML formatting Total price of the cart calculated index.php: Connected to the database

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " Your title here --> Your Cart <?php $hostname = 'localhost'; // localhost is the URL of the server $username = 'root'; // the username in this example is root $password = 'elvis'; // put here your MySQL root password // connect to the database server $con = mysql_connect($hostname, $username, $password) or die ('Could not connect: '. mysql_error());// display if failed mysql_select_db("test", $con); // choose the test database $cart = $_SESSION['cart']; $action = $_GET['action']; $id = $_GET['id']; if ($action == 'add') { $cart = $cart. ",$id"; $_SESSION['cart'] = $cart; } $myitems = explode(',', $cart);// explode using comma as a separator if (count($myitems) <= 1) echo " Your cart is empty. "; else { echo " "; $total = 0; foreach ($myitems as $i) if ($i != '') { $result = mysql_query("SELECT * FROM goods WHERE id = $i"); $row = mysql_fetch_array($result); $item = $row['item']; $price = $row['price']; $total += $price; echo " $item £$price "; } echo " Total &pound ;$total "; echo " "; } ?> [ Home Page ] cart.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " <?php $hostname = 'localhost'; // localhost is the URL of the server $username = 'root'; // the username in this example is root $password = 'elvis'; // put here your MySQL root password // connect to the database server $con = mysql_connect($hostname, $username, $password) or die ('Could not connect: '. mysql_error()); // display if failed mysql_select_db("test", $con); // choose the test database ?> Your Shop --> Your Shop <?php $result = mysql_query("SELECT * FROM goods"); while ($row = mysql_fetch_array($result)) { $id = $row['id']; $item = $row['item']; $price = $row['price']; echo " "; echo " $item "; echo " £$price "; echo " add to cart "; echo " "; }; mysql_free_result($result); ?> Show your cart index.php

Other Possible Options PHP... ???

Other Possible Options PHP ASP.NET Java Python Perl Ruby on Rails So, which way to go?

actually, PHP is rarely a good choice!

THE END

How to use studentnet

Your personal website is (provide your correct k-number) To upload files, you will need a FTP client program to send your files to the server. Here are configuration settings for Filezilla: – Host: studentnet.kingston.ac.uk – Protocol: SFTP – User: k (your normal k number) – Password: ******** (your normal password)

How to use studentnet To configure your database: go to Database Management Tool (link available at the main page login with your standard KU knumber and password). First time, you will be asked to configure the name of your database and the password – remember them! You will then be able to Manage Database. Use your KU k-number and the database password (you created it in the previous point). You will find yourself in phpMyAdmin. Use it to create faces table and populate it with data, exactly the same as we did it with XAMPP

How to use studentnet Before uploading your application you have to setup the connection for the new server – see the example below (do it for each PHP file that connects to the DB): $hostname = 'studentnet.kingston.ac.uk'; // URL of the server $username = ‘k '; // replace with your real username $password = ‘elvis'; // your MySQL database password should go here // connect to the database server $con = mysql_connect($hostname, $username, $password) or die ('Could not connect: '. mysql_error()); // display if connection failed mysql_select_db("db_k ", $con); // replace with your real db name