+ All Categories
Home > Documents > PHP and MySQL Database

PHP and MySQL Database

Date post: 27-Mar-2016
Category:
Upload: minnhein-khant
View: 242 times
Download: 9 times
Share this document with a friend
Description:
PHP and MySQL Database By Tin Htun Lwin
30
qwertyuiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiopasdfgh jklzxcvbnmqwertyuiopasdfghjklzxcvb nmqwertyuiopasdfghjklzxcvbnmqwer tyuiopasdfghjklzxcvbnmqwertyuiopas dfghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq wertyuiopasdfghjklzxcvbnmqwertyuio pasdfghjklzxcvbnmqwertyuiopasdfghj klzxcvbnmqwertyuiopasdfghjklzxcvbn mqwertyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyuiopasdf ghjklzxcvbnmqwertyuiopasdfghjklzxc vbnmqwertyuiopasdfghjklzxcvbnmrty uiopasdfghjklzxcvbnmqwertyuiopasdf ghjklzxcvbnmqwertyuiopasdfghjklzxc vbnmqwertyuiopasdfghjklzxcvbnmqw PHP and MySQL Database [Type the document title] [Type the document subtitle] [Pick the date] SOELINAUNG
Transcript
Page 1: PHP and MySQL Database

qwertyuiopasdfghjklzxcvbnmqwertyui

opasdfghjklzxcvbnmqwertyuiopasdfgh

jklzxcvbnmqwertyuiopasdfghjklzxcvb

nmqwertyuiopasdfghjklzxcvbnmqwer

tyuiopasdfghjklzxcvbnmqwertyuiopas

dfghjklzxcvbnmqwertyuiopasdfghjklzx

cvbnmqwertyuiopasdfghjklzxcvbnmq

wertyuiopasdfghjklzxcvbnmqwertyuio

pasdfghjklzxcvbnmqwertyuiopasdfghj

klzxcvbnmqwertyuiopasdfghjklzxcvbn

mqwertyuiopasdfghjklzxcvbnmqwerty

uiopasdfghjklzxcvbnmqwertyuiopasdf

ghjklzxcvbnmqwertyuiopasdfghjklzxc

vbnmqwertyuiopasdfghjklzxcvbnmrty

uiopasdfghjklzxcvbnmqwertyuiopasdf

ghjklzxcvbnmqwertyuiopasdfghjklzxc

vbnmqwertyuiopasdfghjklzxcvbnmqw

PHP and MySQL Database

[Type the document title]

[Type the document subtitle]

[Pick the date]

SOELINAUNG

Page 2: PHP and MySQL Database

PHP and MySQL Database

PHP and MySQL Database အေျခခသငခနးစာမားက မရငးျပခငမာ MySQL Database အေၾကာငးက ေရ႕ဥးစြာရငးျပေပးမာ ျဖစပါသည။ ကၽြနေတာရ႕သငခနးစာေတြမာ WAMP Server က အသးျပမာ ျဖစတအတြက Wamp Install ျပလပပက PHP က အေျခခကေန စတငေလလာၾကမယ (သငခနးစာ - ၁) မာ ၾကညရႈ႕ႏငပါသည။

MySQL Introduction

MySQL သည Open Source Relational Database Management System ျဖစျပး MySQL သည Database ျဖစသည။ American National Standards Institute- ANSI/ISO SQL Standard အျဖစသတမတထားသည SQL (Structured Query Language) သည Standardlized အကဆး language တစချဖစပါသည။

Open Source Relational Database Management System ဆတာ MySQL ထမာ Database Objects လ႔ ေခၚသည Table ေတြပငးျခားၿပး Flexibility ျဖစတ Data ေတြက အျမနေပါငးထညျပးသေလာငထားျခငးျဖစပါသည။ Data ေတြက အျမနေပါငးထညျပးျမနဆနစြာအသးျပ လပေဆာငႏငဖ႔အတြက Database Engine ကအသးျပရပါသည။

Page 3: PHP and MySQL Database

SQL : DML AND DDL

Database ထက Date ေတြက လပေဆာငတ အပငး (၂) ခရပါတယ။

၁။ Data Manipulating Language (DML)

၂။ Data Definition Language (DDL)(သ႔) Data Description Language (DDL)

Data Manipulating Language (DML)

DML သည database ထမာ သတမတထားေသာ data ေတြက ျပနလရယျခငး သမးဆညးျခငး ၊ ေျပာငးလျခငး၊ ဖကျခငး နင ထညသြငးျခငး စသည စမခန႔ခြမႈ႕အပငးေတြက လပေဆာငပါသည။

SELECT - database ထမာ data ေတြက ဆြယျပးအသးျပႏငပါသည။ (Select … From …. Where)

UPDATE - database ထမာ data ေတြက Update လပႏငတယ။ (Update … Set … Where)

DELETE - database ထမာ data ေတြက Delete လပႏငတယ။ (Delete … From Where)

INSERT INTO - database တစခအတြငးသ႔ data အသစေတြေပါငးထညႏငသည။ (Insert into ... Value ...)

Data Definition Language (DDL) (သ႔) Data Description Language (DDL)

Database Table ေတြ ဖနတးျခငး၊ ျဖတျခငး ကခြငျပပါသည။ ေအာကမာ လပေဆာငႏငတ DDL statement ေတြက ေဖာျပေပးထားပါသည။

• CREATE DATABASE - Database အသစတစခဖနတျခငး

• ALTER DATABASE - Database တစခက ျပျပငျခငး

• CREATE TABLE - Database ထမာ Table အသစဖနတးျခငး

• ALTER TABLE - Table က ျပျပငျခငး

• DROP TABLE - Table က ဖကျခငး

Page 4: PHP and MySQL Database

• CREATE INDEX - အညႊနးကနးေတြ ဖနတးျခငး

• DROP INDEX - အညႊနးကနးေတြက ဖကျခငး တ႔ ျဖစပါသည။

သငခနးစာ (၂) အေနန႔ DML = Data Manipulation Language (SELECT,UPDATE,DELETE,INSERT INTO) က

ရငးျပေပးမာ ျဖစပါတယ။

Select Statement

Select Statement က Data ေတြက Select ဆြထတတအခါမာ အသးျပပါတယ။

MySQL SELECT Statement Syntax

SELECT column_name(s)

FROM table_name

(သ႔)

SELECT * FROM table_name

asterisk (*) star shortcat က table တစခလးမာရတ Columns ေတြအားလးက Select

မတတအခါမာအသးျပပါတယ။

ဥပမာ အေနျဖင ကၽြနေတာတ႔ employees ဆတ Table တစခတညေဆာကထားတယဆပါစ႔။

Page 5: PHP and MySQL Database

ဒလမးေလးေရးလကပါမယ။

SELECT * FROM employees

ဒါဆရငေတာ Select * လ႔ေရးထားတ အတြက Columns ေတြ အားလးက Select မတလကပါျပ။ ထ႔ေနာက From

employees ဆတ အတြက employees ဆတ table က ဆြယလကတာျဖစပါတယ။ အေျဖကေတာ employees ဆတ

table ထက Columns ေတြအကနလးက ယလကတာျဖစပါတယ။

ပျပး နားလညသြားေအာင ထပေရးၾကညပါဥးမည။

SELECT lastname,firstname,jobtitle

FROM employees

Page 6: PHP and MySQL Database

ဒတခါမာေတာ employees table ထက lastname,firstname,jobtitle column ေတြက select မတလကတာပ

ျဖစပါတယ။ အေျဖကေတာ ဒလရပါမယ။

ဒေနရာမာ conditional statement ေတြ၊ query ေတြန႔ တြျပး အသးျပတ Where Clause က ရငးျပေပးပါမည။

Where clause က record ေတြ စစထတတ အခါမာ အသးျပပါသည။ where clause တြင operator

ေတြကသတမတေပးတအခါမာစာသားနငကနးတနဖးေတြပါ၀ငပါတယ။ ထ႔ေၾကာင Text ေတြက စစတအခါမာ ( ‘ ’ )

ကသးျပးစစရပါတယ။ Numeric ဆရငေတာ () ထညရငရသလ မထညရငလညးရပါတယ။

SELECT column_name(s)

FROM table_name

WHERE column_name operator value

ဥပမာ -

SELECT firstname,lastname,email

FROM employees

Page 7: PHP and MySQL Database

WHERE jobtitle="president"

ယခ ပေလးန႔ ေရးထားတာက ရငးျပပါမည။ employees table ထက jobtitle column မ president ပါတ row က

စစမာျဖစပါတယ။ ျပးရငေတာ firstname,lastname,email က ေဖာျပေပးခငးလကတာ ျဖစပါတယ။

ဒေလာကဆ သေဘာေပါကျပ ထငလပါတယ။

Update Statement

Update Statement ကေတာ ရျပးသား Record ေတြကedit လပတသေဘာပါပ။ Gmail Password ခနးသလမးေပါ။

MySQL Update Statement Syntax

UPDATE table_name

SET column_name=value, column_name=value2,...

WHERE column_name

Page 8: PHP and MySQL Database

ဥပမာ -

+-----------+-----------+--------------------------------+ | lastname | firstname | email | +-----------+-----------+--------------------------------+ | m51a | thl | [email protected] | +-----------+-----------+--------------------------------+

ဒတခါ ကၽြနေတာတ႔ employees table က Update လပပါမယ။

UPDATE employees

SET email = ‘[email protected]

WHERE employeeNumber = 1

ဒါဆရငေတာ ေအာကမာျပထားသလ Email ခနးသြားမာ ျဖစပါတယ။ ဒေနရာမာ သတထားရမာ တစခကေတာ where

clause က မသးပ set ကပ သးခမယဆရငေတာ Column မာ ရတ record ေတြ အားလးက ခနးသြားမာ ျဖစပါတယ။

+-----------+-----------+--------------------------------+ | lastname | firstname | email | +-----------+-----------+--------------------------------+ | m51a | thl | [email protected]| +-----------+-----------+--------------------------------+

Delete Statement

Delete Statement ကေတာ ရျပးသား table ထမာမလခငေသာ rowေတြ ၊ Record

ေတြကဖကခငတအခါမာအသးျပပါတယ။

MySQL Delect Statement Syntax

DELETE FROM table_name

WHERE column_name

Page 9: PHP and MySQL Database

ဥပမာ -

DELETE FROMemployees

WHERE lastname ='Murphy'

Table တစခလးက ဖကခငရငေတာ

DELETE FROM employees

Insert Into Statement

Insert Into Statement ကေတာ table ထ row အသစေတြ ထညထပတအခါမာအသးျပပါတယ။ Insert Into က

အသးျပနညး ၂မးရပါသည။

column name သတမတျပးထညသြငးျခငး

column name မသတမတဘထညသြငးျခငးတ႔ ျဖစပါတယ။

MySQL Insert Into Statement Syntax

INSERT INTO table_ Name

Page 10: PHP and MySQL Database

VALUES

ဥပမာ -

ကၽြနေတာတ႔ Column Name မသတမတပ ထညၾကညပါမယ။

INSERT INTO employees

VALUES (‘Diane’,'Murphy', '[email protected]')

column name သတမတျပးထညသြငးမယဆရငေတာ ဒလေရးရပါတယ။

INSERT INTO employees (firstname,lastname,email)

VALUES (‘Diane’,'Murphy', '[email protected]')

ဒေလာကဆ နားလညသေဘာေပါကမယလ႔ ေမာလငပါတယ။ သငခနးစာ (၂) က ဒေနရာမာပ

အဆးသတပါမယခငဗာ။

Page 11: PHP and MySQL Database

သငခနးစာ (၃) အေနန႔ သငခနးစာ (၂)မာ ရငးျပခတ WHERE clause က ထပရငးျပမာ ျဖစပါတယ။

SQL Where

WHERE clause

Where clause က record ေတြစစထတတအခါမာအသးျပပါသည။ where clause တြင operator

ေတြကသတမတေပးတအခါမာစာသားနငကနးတနဖးေတြပါ၀ငပါတယ။ထ႔ေၾကာင Text ေတြကစစတအခါမာ( ‘ ’ )

ကသးျပးစစရပါတယ။ Numeric ဆရငေတာ () ထညရငရသလမထညရငလညးရပါတယ။

MySQL WHERE clauseSyntax

SELECT column_name(s)

FROM table_name

WHERE column_name / operator value

ဥပမာ -

SELECT firstname,lastname,email

FROM employees

WHERE jobtitle="president"

Page 12: PHP and MySQL Database

ယခ ပေလးန႔ ေရးထားတာက ရငးျပပါမည။ employees table ထက jobtitle column မ president ပါတ row က

စစမာျဖစပါတယ။ ျပးရငေတာ firstname,lastname,email က ေဖာျပေပးခငးလကတာ ျဖစပါတယ။

WHERE Clause မာ အသးျပနငသည Operators မားကေတာ -

Equal , Not Equal, .. အစရတာေတြကေတာ အေသးစတ ရငးျပဖ႔လမယ မထငပါဘး။ PHP အေျခခသငခနးစာေတြက

ေလလာချပးသာ သေတြအေနျဖင သျပးသား ျဖစၾကမာပါ။

Page 13: PHP and MySQL Database

ကၽြနေတာအခ Between Operator က ရငးျပေပးပါမည။

BETWEEN Operator

Between operator ကေတာ သတမတထားေသာNumber ေတြ၊ Text ေတြ၊ Date ေတြရ႕တနးဖးနစခ၏ၾကားက data

ေတြက select လပေပးဖ႔ WHERE Clause တစခမာ အသးျပပါသည။

SQL BETWEEN Syntax

SELECT column_name(s)

FROM table_name

WHERE column_name

BETWEEN value1 AND value2

ဥပမာ - tblCompany လ႔ အမည ေပးထားတ Table ႏင ရငျပပါမည။

SELECT * FROM tblCompany

WHERE Sales

BETWEEN ‘10000’ AND ‘19000’

ကၽြနေတာတ႔ tblCompany Table ထက Sale Column ထမ 10000 န႔ 19000 ၾကားမာ ရတ တနဖးေတြက Select

ဆြထတလကတာ ျဖစပါတယ။ အေျဖက ေအာကက ပကၾကညလကပါ။

Page 14: PHP and MySQL Database

ေနာကတစခအေနန႔ NOT BETWEEN က ရငးျပပါမည။

ဥပမာ -

SELECT * FROM tblCompany

WHERE Sales

NOT BETWEEN ‘10000’ AND ‘19000’

ဒတခါေတာ Not Between ျဖစတအတြက 10000 န႔ 19000 ၾကားမာ မပါတ တနဖးက Select ေရြးထတမာ ျဖစပါတယ။

အေျဖက ၾကညလကရင နာလည သေဘာေပါကမယထငပါတယ။

Page 15: PHP and MySQL Database

LIKE Operator

Like operator ကေတာ Column ေတြထမာ သတမတထားေသာDate ေတြက ရာေဖြေပးဖ႔ အသးျပပါသည။

SQL LIKE Syntax

SELECT column_name(s)

FROM table_name

WHERE column_name LIKE pattern;

ဥပမာ - tblCompany လ႔ အမည ေပးထားတ Table ႏင ရငျပပါမည။

SELECT * FROM tblCompany

WHERE Town

LIKE ‘H%’;

အေပၚမာ ေရးထားတာကေတာ H ပါတ ျမ ႔ေတြက ဆြထတလကတာပ ျဖစပါတယ။ ဒေနရာမာ ရငးျပခငတာကေတာ %

ပျဖစပါတယ။ % က wildcards ျဖစပါတယ။ wildcards ဆတာကေတာ ကၽြနေတာတ႔ Data ေတြက ရာေဖြခငတအခါ

Page 16: PHP and MySQL Database

အစစာလးကပ မတမတ အခါမာ wildcards က သးျပးရာရပါတယ။ wildcards က WHERE Clause ႏငတြဖကျပး

အထကမာ ျပထားသညအတငး အသးျပႏငပါသည။ wildcards က ေနာကပငးသငခနးစာေတြမာ

အေသးစတထပရငးျပေပးပါမည။

IN Operator

In operator ကေတာ WHERE clause ထမ တနဖးေတြက ဆငပြားျပး အသးျပပါသည။

SQL IN Syntax

SELECT column_name(s)

FROM table_name WHERE column_name IN (value1,value2,value3...)

ဥပမာ - tblCompany လ႔ အမည ေပးထားတ Table ႏင ရငျပပါမည။

SELECT * FROM tblCompany

WHERE Town

IN (‘Pisa’, ‘Hamburg’);

ကၽြနေတာတ႔ tblCompany Table ထက Town Column ထမ Pisa န႔ Hamburg အမညပါတ တနဖးေတြက Select

ဆြထတလကတာ ျဖစပါတယ။ အေျဖက ေအာကက ပကၾကညလကပါ။

Page 17: PHP and MySQL Database

သငခနးစာ (၁) ကေန (၃) အထကေတာ SQLႏင သကဆငသည အေျခခ သငခနးစာ အနညးငယက

ရငးျပေပးခသညအတြက SQL က နနေတာ တးမေခါကမမယထငပါတယ။ ကၽြနေတာရ႕ သငခနးစာေတြက SQL

အေၾကာငး သးသန႔ေရးတ သငခနးစာ မဟတတအတြက အဓက ရငးျပေပးမယ အေၾကာငးအရာေတြျဖစတ PHP ႏင

MySQL ေပါငးစပျပး ေရးသားသည သငခနးစာမားက သငခနးစာ (၄) ကေန စျပး ရငးျပေပးမာ ျဖစပါတယ။ SQL ႏင

သကဆငသညမားက သငခနးစာေတြထမာ အသးျပတအခါ သကဆငရာ အလက အေသးစတ ရငးျပေပးသြားပါမယ။

သငခနးစာ (၄)

ကၽြနေတာတ႔ PHP ႏင Database ေတြေပါငးစမျပးေရးသားဖ႔အတြက PHP, MySQL ႏင Apache အားလးပါ၀ငသည

Package ျဖစတ WAMP က အသးျပပါမည။ ထ႔ေၾကာငး Wamp Server က မမ ကြနပတာမာ Install

ျပလပထားဖ႔လအပပါသည။

Create New Database

Table ေတြေဆာကဖ႔အတြက Database တစခ ဖနတးရပါမည။ Wamp Server မာ Database အသစ

စတငတညေဆာငေတာမညဆလင Browser ကေန http://localhost/phpmyadmin/ ဆျပးေခၚဆ ႏငသလ

Localhost ဟ ရကျပး Enter ေခါကလကပါက Wamp Home Page ကလာပါက Tools မာရတ PHPmyadmin Tool

က ႏပျပး အသးျပႏငပါသည။ Browser ကေန မေခၚပ Wamp Server ကေန ေခၚမယဆလင Taskbar ရ႕

ညာဘကမာရတ WAMPServer image icon က Click ႏပျပး ပမာ ျပထားသညအတငး phpMyAdmin က Select

လပျပး ေခၚဆႏငပါသည။

Page 18: PHP and MySQL Database

ထ႔ေနာက Create New Database မာ မမၾကကႏစသကသည DB Name က ေပးလကပါ။ ကၽြနေတာကေတာ

m51a_db လ႔ ေပးလကပါတယ။ ျပးလင Collation ထမာ မမၾကကႏစသကသာက ေရြးေပးႏငပါတယ။

ကၽြနေတာကေတာ utf8_general_ci က ေရြးေပးလကပါတယ။ ျပးလင Create က ႏပလကပါ။

Page 19: PHP and MySQL Database

ပမာ ျပထားသညအတင ျမငေတြရျပဆလင ကၽြနေတာတ႔ DB တစေဆာကလ႔ျပးပါျပ။

Creating a New User

ကၽြနေတာတ႔ တညေဆာကထားတ Database မာ User အသစျပလပရနအတြက Privileges ဆတာက ရာျပး Click

ႏပလကပါ။

ထ႔ေနာက ပမာျပထားသညအတငး Add a new User က Click ႏပလကပါ။ Add a New User က မေတြ႔ရပါက Open

new phpMyAdmin window က ရာျပး Click ႏပလကလင ေတြ႔ရပါမည။

Page 20: PHP and MySQL Database

ထ႔ေနာက User Name ေနရာမာ မမၾကကႏစသကတအမညက ေပးလကပါ။ ကၽြနေတာကေတာ ကၽြနေတာအမည

တငထြနးလြင ကပ ေပးလကပါတယ။ Host မာေတာ localhost လ႔ေပးလကပါ။ Password မာေတာ မမၾကကတာ

ေပးလကပါ။ ကၽြနေတာကေတာ m51a လ႔ ေပးလကပါတယ။

ပမာ ျပထားသညအတငး Global privileges မာ Check All က ေရြးေပးပါ။ ျပးလင Go ကႏပလကပါ။

Page 21: PHP and MySQL Database

အထကပါ ပမာ ျပထားသညအတငး ျမငေတြ႔ရျပဆလငေတာ User အသစ ဖနတးလ႔ ျပးပါျပ။

သငခနးစာ (၄) ကေတာ ဒေနရာမာပ ရပနားပါမယ။ အားလးပ ေပာရြငစြာ ေလလာႏငၾကပါေစ။

သငခနးစာ (၅)

Page 22: PHP and MySQL Database

ကၽြနေတာတ႔ သငခနးစာ (၄) မာ Database ႏင User အသစ ဖနးတးချပး ျဖစတအတြက ကၽြနေတာတ႔ ဖနတးထားတ

Database ထမာ Table ေဆာကၾကပါမယ။

Table ေဆာကရနအတြက ကၽြနေတာတ႔ phpMyadmin က ေခၚလကပါ။

ထ႔ေနာက ဘယဘကမာ မမေဆာကခတ DB Name က ရာျပး Click ႏပလကပါ။ ကၽြနေတာကေတာ m51a_db ဆျပး

ေဆာကခပါတယ။

Page 23: PHP and MySQL Database

Create new table on database ဆတ ေနရာရ႕ Name မာ members လ အမညေပးျပး Number of fields: မာ ၃ လ႔

ေပးလကပါ။ ျပးလင Go က ႏပလကပါ။

ကၽြနေတာ Field ရ႔ ပထမ row မာ id လ႔ အမညေပးလကျပ Type က INT ေရြးေပးကာ length value က 10 ေပးျပး

Extra မာ auto_increment ေပးကာ PRIMARY KEY က ေရြးခပါတယ။ ကနတာေတြက ပမာ ျပထားသညအတငး

ျဖညလကပါ။ length value က input character ေတြရ႕ လကခႏငတ အရညက ထညသြငရတာျဖစပါတယ။

ျပးလင Save မတလကပါ။ ထ႔ေနာက မမေဆာကခတ Members Table က ျပနၾကညရနအတြက ညာဘကမာရတ

member ဆတ အမညက Click ႏပလကရင ေတြ႔ရမာ ျဖစပါတယ။

ကၽြနေတာတ႔ members table ထမာ တနဖးေတြရကထညမာ ျဖစတအတြက members table ရ Menu မာ Insert

ဆတာရပါတယ။ Click ႏပလကပါ။ ထ႔ေနာက ပမာ ျပထားသညအတငး ျဖညျပး Go က ႏပပါ။

Page 24: PHP and MySQL Database

ကၽြနေတာတ႔ထညလကတ Data ေရာကမေရာကက သခငရင Menu ရ Browse က ႏပျပး ၾကညႏငပါသည။

ကၽြနေတာတ႔ members Table ေဆာကတာက SQL Statement န႔ ေဆာကခငတယဆရင မမရ႔ DB က သြားျပး

ညာဘကရ Menu မာ SQL ဆတာ ရပါတယ။ အဒမာ Click ႏပျပး ေအာကမာ ေပးထားတာက ျဖညလကရင ရပါျပ။

CREATE TABLE members (

`id` int(10) NOT NULL auto_increment,

`username` varchar(65) NOT NULL default '',

`password` varchar(65) NOT NULL default '',

PRIMARY KEY ( id`)

Page 25: PHP and MySQL Database

) TYPE=MyISAM AUTO_INCREMENT=2 ;

--

-- Dumping data for table `members

--

INSERT INTO `members` VALUES (1, m51a, '1234');

ကၽြနေတာတ႔ အခဆ DB န႔ Table လညး တညေဆာကျပးျပဆေတာ ယခ သငခနးစာမာ PHP န႔ Login Script

တစခေရးၾကပါမည။

PHP သငခနးစာမားမာ ကၽြနေတာေျပာခတအတငး C:wamp ေအာကက www folder ေအာငမာ login ဆျပ Folder

တစခေဆာကျပး login.php, checklogin.php , login_success.php ဆျပး page ေတြ ဖနတးလကပါ။

ကၽြနေတာတ႔ login.php မာ ေရးရမည Coding က ေအာကမာ ေပးထားပါတယ။

<table width="300" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">

<tr>

<form name="form1" method="post" action="checklogin.php">

<td>

<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">

<tr><td colspan="3"><strong>Member Login </strong></td></tr>

<tr><td width="78">Username</td><td width="6">:</td>

<td width="294"><input name="myusername" type="text" id="myusername"></td>

Page 26: PHP and MySQL Database

</tr>

<tr><td>Password</td><td>:</td>

<td><input name="mypassword" type="password" id="mypassword"></td>

</tr>

<tr><td>&nbsp;</td><td>&nbsp;</td>

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

</tr>

</table></td></form></tr></table>

ကၽြနေတာတ႔ ဒ Page မာ ေရးထားတာက ျပနၾကညမယဆရင HTML ရ႔ Table န႔ Login Box

တညေဆာကထားတာျဖစပါတယ။ ဒ Page ရ႔ Form က ၾကညမယဆလင method="post"

ဆျပးေရးထားသညအတြက Post Method က သးထားပါတယ။ action="checklogin.php" ျဖစတအတြက Submit က

ႏပလကတာန႔ ဒ checklogin.php က အလပလပမာ ျဖစပါတယ။

checklogin.php အတြက ေအာကမာ ကးထညလကပါ။ သတထားရမာက username န႔ Pw ၊ DB Name မာ

Database ေဆာကတနးက ေပးထားတ DB name ၊ username န႔ Password က ထညေပးရမာ ျဖစပါတယ။

<?php

$host="localhost"; // Host name

$username="tinhtunlwin"; // Mysql username

$password="m51a"; // Mysql password

Page 27: PHP and MySQL Database

$db_name="m51a_db"; // Database name

$tbl_name="members"; // Table name

// Connect to server and select databse.

mysql_connect("$host", "$username", "$password")or die("cannot connect");

mysql_select_db("$db_name")or die("cannot select DB");

// username and password sent from form

$myusername=$_POST['myusername'];

$mypassword=$_POST['mypassword'];

$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";

$result=mysql_query($sql);

// Mysql_num_row is counting table row

$count=mysql_num_rows($result);

// If result matched $myusername and $mypassword, table row must be 1 row

if($count==1){

// Register $myusername, $mypassword and redirect to file "login_success.php"

session_register("myusername");

Page 28: PHP and MySQL Database

session_register("mypassword");

header("location:login_success.php");

}

else {

echo "Wrong Username or Password";

}

?>

PHP ေရးထားတာေတြကေတာ ကၽြနေတာမရငးျပေတာပါဘး။ နာမလညတာရရင PHP သငခနးစာေတြက

ျပနေလလာပါ။ Variable က ဘယလ႔ သတမတတယဆတာ PHP သငခနးစာမာ မရငးတ သေတြ ဒ Page က ၾကညရင

နာလညးမယလ႔ ထငပါတယ။ မသတာရရင ကၽြနေတာ Mail က ဆကသြယျပး ေမးျမနႏငပါတယ။

mysql_connect("$host", "$username", "$password")or die("cannot connect");

mysql_connect ဆျပးေရးထားတာကေတာ Database ထက Data ေတြက Access မလပခင Connection

ခတဆကရပါတယ။ အဒါေၾကာင mysql_connect() function က သးျပး PHP Page ေတြန႔ Database က

Connection ခတဆကထားျခငးပ ျဖစပါတယ။ သ႔ရ႕ Syntax ကေတာ -

mysql_connect(servername,username,password);

ျဖစပါတယ။

or die("cannot connect") ကေတာ Variable သတမတထားတ $host ၊ $username ၊ $password တ႔ရ႔ Data ေတြ

မနကနမႈ႔မရခရင cannot connect ဆျပး ျပပါဖ႔ေရးထားတာ ျဖစပါတယ။

Page 29: PHP and MySQL Database

mysql_select_db("$db_name") ကေတာ mysql_select_db()function က သးျပး $db_name က Select

လပထားတာ ျဖစပါတယ။

login_success.php အတြက ေအာကက Coding က ကးထညလကပါ။ ဒ Page က Login လပတာမနရင Login

Successful ဆျပး ျပေပးမာ ျဖစပါတယ။

<?

if ($_REQUEST['action']== 'dologout')

{

session_destroy();

header ("location: login.php");

}?>

<html><body>

<center><font size="5">Login Successful (PHP & MySQL Lesson - 5)</font>

<br><br>

<a href="login.php?action=dologout"><input type="submit" name="Submit"

value="logout"></a></center>

</body></html>

ကၽြနေတာတ႔ အခလပခတ သငခနးစာက Browser ကေန ျပနၾကညမယဆလင Localhost ရကျပး Enter

ေခါကလကပါက Wamp Home Page ကလာပါလမမယ။ အဒေနာက Your projects ေခါငးစဥေအာကမ www

Page 30: PHP and MySQL Database

ေအာကမာ မမေဆာကခတ Folder က ျမငေတြ႔ရမာ ျဖစပါတယ။ Click ႏပျပး login.php ကႏပခါ စမးသပႏငပါတယ။

သငခနးစာ (၅) က ဒေနရာမာပ ရပနားမာ ျဖစပါတယခငဗာ။


Recommended