Database တစ္ခုကုိ PHP သံုးၿပီးေဆာက္ပါမယ္ ။
ဒါကုိေလ့လာမယ္ဆိုရင္ SQL Query ကုိသိၿပီးသားလို႕ သတ္မွတ္ပါမယ္ ။
ဘာေၾကာင့္လည္းဆိုေတာ့ SQL Query ေရးသားပံုကုိ မေျပာေတာ့ပါဘူး ။
PHP ရဲ႕ Function ေတြနဲ႕ခ်ိတ္ဆက္ ၿပီး သံုးတာကုိပဲျပသြားမွာျဖစ္ပါတယ္ ။
အရင္က Web Blog တစ္ခု ဖန္တီးမယ္ဆိုရင္ Database တစ္ခု ကုိၾကိဳ
ေဆာက္ထားရပါတယ္ ။ ၿပီးမွ Data input putput ေတြေဆာင္ရြက္ပါတယ္ ။
ဒီနည္းေလးသံုးမယ္ဆိုရင္ PHP myadmin ထဲ လံုး၀ မ၀င္ပဲ အစအဆံုး
ဖန္တီးႏိုင္ပါလိမ့္မယ္ ။
Database ကုိ Movies ေတြ ကုိစာရင္းျပဳစုတဲ့ Web အတြက္လို႕သေဘာထားလိုက္မယ္ ။
အဲဒီမွာ movie ဆိုတဲ့ နာမည္နဲ႕ Database တစ္ခုေဆာက္မယ္။အဲဒီထဲမွာ movietype table
နဲ႕ people table ႏွစ္ခုထည့္မယ္။OK ? စမယ္ ။
Connection တည္ေဆာက္ဖို႕ mysql_connect() function ကုိသံုးမယ္ ။ အဲဒီထဲမွာ
hostname, Database username ,Database password ထည့္ေပးရပါတယ္ ။
ဒီလိုေလးေပါ့ mysql_connect('hostname ','username','password')
localhost မွာ သံုးမယ္ ဆိုရင္ hostname =localhost ,username = root , password မေပးထားပါဘူး။
ဒီေန၇ာမွာ 'hostname ','username' တစ္ခုခုကသာလြဲေနမယ္ဆိုရင္ error တတ္ပါမယ္ ။
အလြယ္ဆံုးerror ေျဖရွင္းနည္းကေတာ့ die() Method ေလးယူသံုးတာပါ ။ကြင္းထဲမွာ Error Message
ထည့္ေပးလို႕ရပါတယ္ ။error အတြက္ message မေရးေပးခ်င္လည္းရပါတယ္ ။ အဲဒီ error
မွာ Program ကသတ္မွတ္ေပးတဲ့ Error Message ရွိၿပီးသားပါ ။အဲဒီ Error ကုိပဲေခၚျပခ်င္ရင္ေတာ့ mysql_error()
ဆိုတဲ့ Method ေလးသံုးယံုပါပဲ ။ ဒါေပမယ့္ အဲဒါက ေျပာရရင္ သာမန္အားျဖင့္နားလည္ဖို႕ခက္ပါတယ္ ။
ဒါေၾကာင့္ ကုိယ့္ဖာသာ Error Message ဖန္တီးေပးတာကပိုေကာင္းပါတယ္ ။
ပထမ Connection ေဆာက္မယ္ error ျဖစ္ရင္ messageတစ္ခု ျပမယ္။
or နဲ႕ဆက္ေပးလိုက္မယ္ဆိုရင္ ဒီလိုေလးရမယ္ ။
$db = mysql_connect('localhost','root','') or
die ('Unable to connect. Check your connection parameters.');
ေနာက္ထပ္ေရးရမယ့္Database ထဲကလုပ္ေဆာင္ခ်က္ေတြအတြက္ကေတာ့ Query ေတြေရးရမွာေပါ့ ။
အဲဒီ Query ေတြကPHP Language မဟုတ္ျပန္ဘူး ။ ဒီေတာ့ PHP နဲ႕အဆင္ေျပေျပသံုးႏိုင္ဖို႕
mysql_query() Method ကုိယူသံုးရပါတယ္ ။
ဥပမာျပရရင္-
$query = 'CREATE DATABASE IF NOT EXISTS movie';
mysql_query($query) ;
ပထမ CREATE DATABASE IF NOT EXISTS movie ဆိုတဲ့ Query Language နဲ႕ movie ဆိုတဲ့
Database တစ္ခုေဆာက္လိုက္တယ္ ။ ဒါကုိ $query နာမည္ေပးထားတဲ့ Variable ထဲသြားထည့္တယ္။
အဲဒါကုိ မွ တစ္ခါ mysql_query() မွာေတာ့ သြားျပန္ထည့္တယ္ ။ဒါဆို အဲဒီ Query PHP မွာ အလုပ္လုပ္ၿပီ ။
$ db ကုိပါထည့္ေပးခ်င္ရင္ေတာ့ ေကာ္မာ ေလးခံၿပီးထည့္ေပးလို႕ရတယ္ ။ ဒါဆိုဒီလိုျဖစ္လိမ့္မယ္ ။
$query = 'CREATE DATABASE IF NOT EXISTS moviesite1';
mysql_query($query, $db) or die(mysql_error($db));
ဒီမွာေတာ့ error တတ္ရင္ သူ႕ Message ကုိပဲထုတ္ျပခိုင္းလိုက္တာေတြ႕လိမ့္မယ္ ။ ဒါဆို လုပ္တတ္ၿပီ ။
ေအာက္ကဥပမာေလးကုိနားလည္ေအာင္ၾကည့္ၾကည့္ ၿပီးရင္ page တစ္ခုေခၚ ၿပီး ေ၇း ။
အိုေခ? ။
ဒါကုိေလ့လာမယ္ဆိုရင္ SQL Query ကုိသိၿပီးသားလို႕ သတ္မွတ္ပါမယ္ ။
ဘာေၾကာင့္လည္းဆိုေတာ့ SQL Query ေရးသားပံုကုိ မေျပာေတာ့ပါဘူး ။
PHP ရဲ႕ Function ေတြနဲ႕ခ်ိတ္ဆက္ ၿပီး သံုးတာကုိပဲျပသြားမွာျဖစ္ပါတယ္ ။
အရင္က Web Blog တစ္ခု ဖန္တီးမယ္ဆိုရင္ Database တစ္ခု ကုိၾကိဳ
ေဆာက္ထားရပါတယ္ ။ ၿပီးမွ Data input putput ေတြေဆာင္ရြက္ပါတယ္ ။
ဒီနည္းေလးသံုးမယ္ဆိုရင္ PHP myadmin ထဲ လံုး၀ မ၀င္ပဲ အစအဆံုး
ဖန္တီးႏိုင္ပါလိမ့္မယ္ ။
Database ကုိ Movies ေတြ ကုိစာရင္းျပဳစုတဲ့ Web အတြက္လို႕သေဘာထားလိုက္မယ္ ။
အဲဒီမွာ movie ဆိုတဲ့ နာမည္နဲ႕ Database တစ္ခုေဆာက္မယ္။အဲဒီထဲမွာ movietype table
နဲ႕ people table ႏွစ္ခုထည့္မယ္။OK ? စမယ္ ။
Connection တည္ေဆာက္ဖို႕ mysql_connect() function ကုိသံုးမယ္ ။ အဲဒီထဲမွာ
hostname, Database username ,Database password ထည့္ေပးရပါတယ္ ။
ဒီလိုေလးေပါ့ mysql_connect('hostname ','username','password')
localhost မွာ သံုးမယ္ ဆိုရင္ hostname =localhost ,username = root , password မေပးထားပါဘူး။
ဒီေန၇ာမွာ 'hostname ','username' တစ္ခုခုကသာလြဲေနမယ္ဆိုရင္ error တတ္ပါမယ္ ။
အလြယ္ဆံုးerror ေျဖရွင္းနည္းကေတာ့ die() Method ေလးယူသံုးတာပါ ။ကြင္းထဲမွာ Error Message
ထည့္ေပးလို႕ရပါတယ္ ။error အတြက္ message မေရးေပးခ်င္လည္းရပါတယ္ ။ အဲဒီ error
မွာ Program ကသတ္မွတ္ေပးတဲ့ Error Message ရွိၿပီးသားပါ ။အဲဒီ Error ကုိပဲေခၚျပခ်င္ရင္ေတာ့ mysql_error()
ဆိုတဲ့ Method ေလးသံုးယံုပါပဲ ။ ဒါေပမယ့္ အဲဒါက ေျပာရရင္ သာမန္အားျဖင့္နားလည္ဖို႕ခက္ပါတယ္ ။
ဒါေၾကာင့္ ကုိယ့္ဖာသာ Error Message ဖန္တီးေပးတာကပိုေကာင္းပါတယ္ ။
ပထမ Connection ေဆာက္မယ္ error ျဖစ္ရင္ messageတစ္ခု ျပမယ္။
or နဲ႕ဆက္ေပးလိုက္မယ္ဆိုရင္ ဒီလိုေလးရမယ္ ။
$db = mysql_connect('localhost','root','') or
die ('Unable to connect. Check your connection parameters.');
ေနာက္ထပ္ေရးရမယ့္Database ထဲကလုပ္ေဆာင္ခ်က္ေတြအတြက္ကေတာ့ Query ေတြေရးရမွာေပါ့ ။
အဲဒီ Query ေတြကPHP Language မဟုတ္ျပန္ဘူး ။ ဒီေတာ့ PHP နဲ႕အဆင္ေျပေျပသံုးႏိုင္ဖို႕
mysql_query() Method ကုိယူသံုးရပါတယ္ ။
ဥပမာျပရရင္-
$query = 'CREATE DATABASE IF NOT EXISTS movie';
mysql_query($query) ;
ပထမ CREATE DATABASE IF NOT EXISTS movie ဆိုတဲ့ Query Language နဲ႕ movie ဆိုတဲ့
Database တစ္ခုေဆာက္လိုက္တယ္ ။ ဒါကုိ $query နာမည္ေပးထားတဲ့ Variable ထဲသြားထည့္တယ္။
အဲဒါကုိ မွ တစ္ခါ mysql_query() မွာေတာ့ သြားျပန္ထည့္တယ္ ။ဒါဆို အဲဒီ Query PHP မွာ အလုပ္လုပ္ၿပီ ။
$ db ကုိပါထည့္ေပးခ်င္ရင္ေတာ့ ေကာ္မာ ေလးခံၿပီးထည့္ေပးလို႕ရတယ္ ။ ဒါဆိုဒီလိုျဖစ္လိမ့္မယ္ ။
$query = 'CREATE DATABASE IF NOT EXISTS moviesite1';
mysql_query($query, $db) or die(mysql_error($db));
ဒီမွာေတာ့ error တတ္ရင္ သူ႕ Message ကုိပဲထုတ္ျပခိုင္းလိုက္တာေတြ႕လိမ့္မယ္ ။ ဒါဆို လုပ္တတ္ၿပီ ။
ေအာက္ကဥပမာေလးကုိနားလည္ေအာင္ၾကည့္ၾကည့္ ၿပီးရင္ page တစ္ခုေခၚ ၿပီး ေ၇း ။
<?phplocalhost မွာ Run တာနဲ႕ Database ေဆာက္ၿပီးသားရၿပီ ။ မယံုဘူးလား၊မယံုရင္ phpmyadmin ထဲသြားၾကည့္ ။
$db = mysql_connect('localhost','root','') or
die ('Unable to connect. Check your connection parameters.');
//create the main database if it doesn’t already exist
$query = 'CREATE DATABASE IF NOT EXISTS moviesite1';
mysql_query($query, $db) or die(mysql_error($db));
//make sure our recently created database is the active one
mysql_select_db('moviesite1',$db) or die(mysql_error($db));
//Create the movie table
$query = 'CREATE TABLE IF NOT EXISTS movie (
movie_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
movie_name VARCHAR(255) NOT NULL,
movie_type TINYINT NOT NULL DEFAULT 0,
movie_year SMALLINT UNSIGNED NOT NULL DEFAULT 0,
movie_leadactor INTEGER UNSIGNED NOT NULL DEFAULT 0,
movie_director INTEGER UNSIGNED NOT NULL DEFAULT 0,
PRIMARY KEY (movie_id),
KEY (movie_type, movie_year)
) ENGINE MYISAM' ;
mysql_query($query,$db) or die(mysql_error($db));
//Create the movietype table.
$query = 'CREATE TABLE IF NOT EXISTS movietype (
movietype_id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
movietype_label VARCHAR(100) NOT NULL,
PRIMARY KEY (movietype_id)
)ENGINE MYISAM';
mysql_query($query,$db) or die (mysql_error($db));
//Create the people table
$query = 'CREATE TABLE IF NOT EXISTS people(
people_id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
people_fullname VARCHAR(255) NOT NULL,
people_isactor TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
people_isdirector TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
PRIMARY KEY (people_id)
)ENGINE MYISAM';
mysql_query($query,$db) or die (mysql_error($db));
echo ' Movie database successfully created!';
?>
အိုေခ? ။
လြပ္လပ္စြာကူးယူမွ်ေ၀ႏိုင္ပါသည္။
Aung Aung
No comments:
Post a Comment