+ All Categories
Home > Documents > PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

Date post: 16-Dec-2015
Category:
Upload: elise-mires
View: 236 times
Download: 5 times
Share this document with a friend
34
PRACTICAL PHP AND MYSQL WALKTHROUGH USI NG S AMPLE CO DES MAX NG
Transcript
Page 1: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

PRACTI

CAL PHP

AND

MYSQL W

ALKTH

ROUGH

US

I NG

SA

MP

L E C

OD

ES

– M

AX

NG

Page 2: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

WHY PHP AND MYSQL?

• Easy to learn and install• Free to use and readily for

download•LAMP is a solution stack of free, open source software.

• Rich resources in WWW• Well supported in PolyU COMP lab

Page 3: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

PHP IN POLYU COMP LAB

PHP (Apache)

• PHP files are to be placed in :/webhome/<your id>/public_html

• Solaris Cluster Machine can be accessed thr PC using

WINSCP (file transfer) PuTTY (Line command session)

• The website can be accessed using Web browser to the url link : • http:/www.comp.polyu.edu.hk/~<your id>/index.php

Page 4: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

MYSQL IN POLYU COMP LAB

MySQL

• A MySQL account is readily activated for your perusal.

• Account Details: Host: mysql.comp.polyu.edu.hk:3306 User: <your id> Password: <assigned, please check your email> Schema: <your id>

• To directly manipulate your schema thr’ PC: In Lab PC, there is a GUI Tool: • "COMP" ->"Network Application Packages" -

>"Database" ->"MySQL" ->"MySQLQBrowser“

Page 5: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

WE WILL WALKTHROUGH PHP AND MYSQL TOGETHER• Purpose oriented • Start from Database table preparation • To website implementation

• Using a simple website to study some basic coding technique• My Book Store

• Using a advanced website to walkthrough a e-commerce system• My Web Shop

Page 6: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

AT THE END OF SESSION, WE SHOULD BE ABLE TO USE THE PROVIDED CODE TO BUILD A SIMPLE WEB SITE.1. MySQL table setup Create table Insert record

2. Write PHP page Connect to MySQL Take the http-get parameters Handle session Looping control Generate dynamic web page thr select statement

Page 7: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

BASIC WEB PAGE DESIGN OF “MY BOOK STORE”1. Request user login

2. Show product list and selection

3. Purchase list summary

index.php

books.php

summary_order.php

Page 8: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

WE HAVE TO CREATE A SCHEMA AT FIRST IN MYSQL.

1. Create the schema to house our new table.

CREATE DATABASE <dbname>;

Note:

a. To remove the schema, we issue DROP DATABASE <dbname>;

b. In COMP lab, we use only our login ID as our default schema.

2. Change our session to another schema by issuing USE <dbname>;

Page 9: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

WE PUT THE BOOKLIST TABLE INTO THE ACTIVE SCHEMA.

1. Create table by issuing

CREATE TABLE [IF NOT EXISTS]

<tableName> ( <columnName> <columnType> <columnAttribute>, ... PRIMARY KEY(<columnName>), FOREIGN KEY (<columnName>) REFERENCES <tableName> (<columnName>) ) ;

E.g.

CREATE TABLE book_records_store(

Book_No BIGINT NOT NULL AUTO_INCREMENT,

Book VARCHAR(150) NOT NULL,

Price DECIMAL(5,2) NOT NULL,

PRIMARY KEY(Book_No))ENGINE=MyISAM AUTO_INCREMENT=1;

Page 10: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

WE INSERT RECORDS INTO THE BOOKLIST TABLE.

1. Insert record by issuing

INSERT INTO <tableName>

VALUES (<column1Value>, <column2Value>,...), ...

e.g.

INSERT INTO book_records_store VALUES

(null,'C++ for Starters','125.50'),

(null,'Java AWT Package','178.50');

Page 11: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

FINALLY, WE INSPECT THE TABLE CONTENT.• Review the schemas we have SHOW DATABASES;

• Set active schema by issuing USE <dbname>;

• Review all table names in a schema SHOW TABLES;

• Browse the table content

SELECT * | <column1Name> AS <alias1>, ..., <columnNName> AS <aliasN> FROM <tableName> WHERE <criteria> GROUP BY <columnName> ORDER BY <columnName> ASC|DESC, ... HAVING <groupConstraints> LIMIT <count> | <offset> <count>;

e.g.

SELECT * FROM book_records_store;

Page 12: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

BASIC WEB PAGE DESIGN OF “MY BOOK STORE”1. Request user login

2. Show product list and selection

3. Purchase list summary

index.php

books.php

summary_order.php

Page 13: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

THE SIMPLEST FORM OF PHP PAGE IS ACTUALLY A PAGE OF HTML TAG.

Index.php

Page 14: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

WE HAVE TO PASS INPUT VALUES FROM INDEX.PHP TO BOOKS.PHP USING HTTP-GET

<form method="GET" action="books.php">

<input type="text" name="fname"/></td>

<input type="text" name="lname"/></td>

<input type="submit" name="Loging" value="Login"/></td>

</form>

http://.../books.php?fname=Max&lname=Ng&Loging=Login

index.php

books.php

(1)

(1)

(1)

(1)

(2)

(2)

(2)(3)

(3)

(2)

Page 15: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

BASIC WEB PAGE DESIGN OF “MY BOOK STORE”1. Request user login

2. Show product list and selection

3. Purchase list summary

index.php

books.php

summary_order.php

Page 16: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

WE SHOW THE LIST OF BOOKS IN OUR BOOKLIST TABLE IN THE BOOKS.PHP

Page 17: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

PHP CODE IS EMBEDDED INTO HTML PAGE TO GENERATE THE BOOKLIST TABLE.1. First of all, we connect to the database we just created and

build our database query.

include is to take the code from another php file and evaluate. databaseconfig.php

Page 18: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

NEXT, CREATE SESSION TO LET VALUES TO BE AVAILABLE THROUGHOUT SESSION

[2] $_GET: Return the http-get variable. Do you remember what is this variable?

[4] $_REQUEST: Return the variable either in the array variables in http-get, http-post or cookies.

[3] session_start(): start a session

[5] $_SESSION: refer to a session variable to be available throughout the session

[1] isset() : check null

[1] [2]

[3]

[4]

[5]

Page 19: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

LASTLY, EXTRACT THE DATABASE QUERY RETURN AND CONSTRUCT THE BOOKLIST TABLE

[1]

[1] mysql_fetch_array() : Fetch a result row as an array

[2]

[2] echo : output http text

[3]

[3] in calling order_summary.php, http-get will pass an array with name “order[]” and value which is the price of the book.

Page 20: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

ONLY THE CHECKBOX = ‘Y’ WILL BE HTTP-GET TO THE SUMMARY_ORDER.PHP

http://.../order_summary.php?order%5B%5D=125.50&order%5B%5D=186.75&order%5B%5D=189.00&Ord=Order

Page 21: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

BASIC WEB PAGE DESIGN OF “MY BOOK STORE”1. Request user login

2. Show product list and selection

3. Purchase list summary

index.php

books.php

summary_order.php

Page 22: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

SUMMARY_ORDER.PHP CONSTRUCT THE ORDER TABLE AND OUTPUT AS HTTP PAGE

[1]

[1] session_start() : Retrieve the saved session. Now the session variable “firstN” and “lastN” available.

[2]

[2] count() : count the no. of element in an array

[?]

[?] We will discuss in the coming lab session.

Page 23: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

SUMMARY_ORDER.PHP CONSTRUCT THE ORDER TABLE AND OUTPUT AS HTTP PAGE (CONT’D)

Page 24: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

AT THE END OF SESSION, WE SHOULD BE ABLE TO USE THE PROVIDED CODE TO BUILD A SIMPLE WEB SITE.1. MySQL table setup Create table Insert record

2. Write PHP page Connect to MySQL Take the http-get parameters Handle session Looping control Generate dynamic web page thr select statement

Page 25: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

FUNCTIONAL WALKTHROUGH: A ECOMMERCE SYSTEM USING PHP AND MYSQL

Page 26: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

A COMPREHENSIVE ECOMMERCE SITE SHOULD BE ABLE TO:

1. Handle customer request in timely fashion

2. Provide sufficient information for customer to make purchase decision

3. Smoothen the process from product selection to payment

4. Maintain the product list and stock control

5. Maintain the order information

6. Maintain the customer information

7. Perform web advertising and site analytics

Page 27: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

PRODUCT LIST INTEGRATED WITH SHOPPING CART

Page 28: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

SHOPPING CART PROVIDED WITH DIRECT CHECKOUT OR BACK TO SHOPPING

Page 29: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

CHECK OUT, PAYMENT AND EMAIL NOTIFICATION ALL-DO IN ONE-TAKE

Page 30: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

ADMINISTRATION: CATALOG, ORDER MANAGEMENT AND MINOR SCREEN LAYOUT

Page 31: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

CATALOG MANAGEMENT ON PRODUCT, FEATURED PRODUCT LIST AND STOCK MANAGEMENT

Page 32: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

TRACE CUSTOMER NEW ORDER AND FURTHER BACKEND PROCESSING

Page 33: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

COMPREHENSIVE SITE CONFIGURATION ON VARIOUS SETTINGS

Page 34: PRACTICAL PHP AND MYSQL WALKTHROUGH USING SAMPLE CODES – MAX NG.

Thanks!!


Recommended