5. udkausmf 5
အဲဒိ ျမားျပထားတဲ႔ icon ေပၚမွာ left click ႏွိပ္ၿပီးေတာ႔ put online ကို ကလစ္လိုက္ပါ။
အဲဒါၿပီးရင္ wamp server icon ေလးဟာ ေအာက္ပါပံုအတုိင္းေျပာင္းသြားပါလိမ္႔မယ္။
rZÑdr pmay
6. 6 PHP avScg;xpfrsm;
အားလံုးၿပီးသြားၿပီဆုိရင္ သင္႔အေနနဲ႔ wamp server ကို ေအာင္ျမင္စြာ install လုပ္ၿပီးသြားပါၿပီ။ သင္
ယခုျပဳလုပ္လုိက္တဲ႔ ဆာဗာထဲမွာ PHP 5.2.6 , Apache 2.2.8 , MySQL 5.0.51b တုိ႔ ကိုလည္း install
လုပ္ၿပီးသား ျဖစ္သြားပါမည္။
Starting with browser
firefox browser မွာ localhost or 127.0.0.1 လုိ႔ ရိုက္ထည့္လိုက္ပါက ေအာက္ပါအတုိင္း
တက္လာရပါမည္။
ဒါမွမဟုတ္လည္း wamp server icon အေပၚမွာ left click လုပ္ၿပီး localhost ကို click လုပ္ရင္လည္း
တက္ပါတယ္။
rZÑdr pmay
7. udkausmf 7
Your projects ဆိုတဲ႔ေနရာမွာ ခုေလာေလာဆယ္ ေအာက္ပါအတုိင္းျမင္ရမွာျဖစ္ပါတယ္။
No projects yet.
To create a new one, just create a directory in ‘www’.
ကၽြန္ေတာ္တုိ႔လုပ္သမွ် projects အားလံုးသည္ c:wampwww ဆိုေသာ folder
ေအာက္တြင္သာ ျပဳလုပ္ရမည္ ျဖစ္ပါသည္။
ေနာက္ထပ္ phpMyAdmin ကို ေခၚလိုလွ်င္ wamp server icon ေပၚမွ phpMyAdmin ကို
click လုပ္ၿပီး ေခၚႏိုင္ပါသည္။
Default Database username မွာ root ျဖစ္ၿပီး password မွာ blank ျဖစ္ပါသည္။
ယခုစာအုပ္တြင္ Default အတိုင္းသာ သံုးသြားမည္ျဖစ္ပါသည္။
rZÑdr pmay
8. 8 PHP avScg;xpfrsm;
How to use Notepad++
Notepad++ ကို install လုပ္ၿပီးၿပီဆုိပါက text document တစ္ခုေပၚတြင္ right click
လုပ္ၾကည့္ပါက Edit with Notepad++ ဆိုေသာ စာတမ္းကိုေတြ႕ျမင္ရမည္ျဖစ္ပါသည္။
သင္က php page တစ္ခုကို စတင္ၿပီး create လုပ္လုိပါက www folder ထဲတြင္ text docu-
ment တစ္ခု လုပ္လိုက္ပါ။ ၿပီးရင္အဲဒိ text document ေပၚကို right click လုပ္ၿပီးေတာ႔ Edit with
Notepad++ လုပ္လုိက္ပါ။ ဒီလိုဆိုရင္ notepad++ program တက္လာပါမယ္။ တက္လာတဲ႔အခါမွာ
Language မွာ PHP ကို ေရြးေပးပါ။ ၿပီးရင္save as လုပ္ၿပီးေတာ႔ နာမည္တစ္ခုနဲ႔ သိမ္းလိုက္ရင္ php
file တစ္ခုကို ရလာမွာျဖစ္ပါတယ္။ default အေနနဲ႔ PHP ရဲ႕ open and close tag ေတြကို အနီနဲ႔
ေဖာ္ျပၿပီး comment ေတြကို အစိမ္းနဲ႔ျပပါတယ္။ ျပင္ခ်င္တယ္ဆုိရင္ေတာ႔ settings/style configura-
tor မွာ ျပင္လို႔ရပါတယ္။
rZÑdr pmay
9. udkausmf 9
Chapter (2)
Creating PHP pages using PHP
ဒီအခန္းမွာေတာ႔ PHP ရဲ႕ အေျခခံအခ်က္ေလးမ်ားကို ေျပာသြားမွာျဖစ္ၿပီး တစ္ခ်ိန္တည္း
မွာဘဲ ေျပာသြားတဲ႔အခ်က္ေလးေတြနဲ႔ web တစ္ခုကို အဆင္႔ဆင္႔ တည္ေဆာက္သြားမွာျဖစ္ပါတယ္။
အားလံုးၿပီးသြားတဲ႔အခါမွာ Movie review ေတြရယ္ ၊ ဒီ web ကို လာတဲ႔ လူေတြရဲ႕ comment
ေတြရယ္ movie details ေတြကို MySQL နဲ႔ တြဲၿပီး ျပႏိုင္မွာျဖစ္ပါတယ္။ အေသးစား dynam-
ic web page တစ္ခု တည္ေဆာက္တယ္လို႔ မွတ္ယူလို႔ရပါတယ္။ သင္႔အေနနဲ႔ PHP program ကို
ဒီအတုိင္း သီအိုရီ ခ်ည္း သက္သက္ေလ႔လာ ေနရင္ ပ်င္းမွာစိုးပါတယ္။ ကိုယ္ သိထားသေလာက္က
ဘယ္ေလာက္ထိ ေရးလို႔ရသလဲ ဘယ္ေလာက္ထိ ဖန္တီးလို႔ရသလဲဆုိတာကို သိထားဖုိ႔လိုပါတယ္။
ခု အေျခခံအခ်က္ေလးေတြနဲ႔ တင္ သင္ ထင္မွတ္မထားေလာက္ေအာင္ လုပ္ႏိုင္မွာကို ေတြ႕ရွိရမွာပါ။
ကၽြန္ေတာ္ဟာ ဒီစာအုပ္နဲ႔ အတူ CD တစ္ခ်ပ္ တြဲထည့္ေပးထားၿပီးေတာ႔ အဲဒိ CD ထဲမွာ Exercise files
ေတြပါတယ္။ အႀကံျပဳလိုတာကေတာ႔ အဲဒိ CD ထဲက ဖိုင္ေတြကို တတ္ႏုိင္သမွ် နားလည္ေအာင္ၾကည့္ပါ။
copy paste လုပ္ၿပီး သင္မေလ႔က်င္႔ပါနဲ႔။ Programming ဆိုတာမ်ဳိးကလည္း တစ္ခါေရးနားမလည္
ႏွစ္ခါေရး ရင္ ရူးသြားတာမ်ဳိးမဟုတ္ပါဘူး။ ထပ္ခါထပ္ခါေရးေလ ပို နားလည္ေလ ျဖစ္ေစတာပါ။
PHP ကို အျခား language ေတြျဖစ္တဲ႔ HTML တို႔လို text editor နဲ႔ ေရးလို႔ရပါတယ္။ ဒါေပမယ္႔
HTML နဲ႔ မတူတာက PHP မွာက .php ဆိုတဲ႔ extension နဲ႔ အဆံုး သတ္တာျဖစ္ၿပီး Web စာမ်က္ႏွာ
ေပၚတာေတြက HTML ေတြျဖစ္တယ္ဆုိတာ မွတ္ထားဖို႔လိုပါတယ္။
How PHP fits with HTML
The Rules of PHP syntax
PHP ကို စေရးၿပီဆုိရင္ ထိပ္ဆံုးမွာ <?php နဲ႔ စၿပီးေတာ႔ ေနာက္ဆံုးမွာ ?> အဆံုးသတ္ရပါတယ္။
ေယ်ဘူယ်အားျဖင္႔ PHP statement ေတြရဲ႕အဆံုးကို semicolon(;)နဲ႔ အဆံုး သတ္ေပးရပါတယ္။
ေအာက္က ဥပမာကို ၾကည့္ပါ။
rZÑdr pmay
11. udkausmf 11
Example(2) ကိုၾကည့္လိုက္ရင္ ပိုရွည္တယ္ထင္ေပမယ္႔ တကယ္တမ္းၾကေတာ႔ syntax err-
ror or other troubleshooting လုပ္တဲ႔အခါမွာ ပိုမိုျမန္ဆန္စြာလုပ္ႏိုင္ပါတယ္။
ဒါဟာ ပရိုဂရမ္ကို ခုမွ စေရးမယ္႔ သူေတြအတြက္တကယ္႔ကို အေရးႀကီးပါတယ္။
ၾကံဳသလိုေရးလိုက္ရင္ အက်င္႔ႀကီးပါသြားတတ္ပါတယ္။
Example (1)
< ?php
//check to make sure the first name is equal to MgMg before granting ac-
cess
if ($_POST['fname'] == 'MgMg') {
echo '<p> Hi '. $_POST['fname'] . '</p>';
} else {
echo '<p> Your name isn't MgMg so you cannot enter the web site. </p>
';
}
?>
Example(2)
< ?php
//check to make sure the first name is equal to Joe before granting access
if ($_POST['fname'] == 'Joe')
{
echo '<p>';
echo 'Hi';
echo $_POST['fname'];
echo '</p>';
}
else
{
echo '<p>';
echo 'Your name's not MgMg so you cannot enter the web site!';
echo '</p>';
rZÑdr pmay
12. 12 PHP avScg;xpfrsm;
Creating your first program
Using (echo)
1. ေအာက္မွာ ျပထားတဲ႔ ကုဒ္ေတြကို notepad++ ထဲ ကူးထည့္ၿပီး firstprog.php ဆိုၿပီး Save
လုပ္ပါ။
<html>
<head>
<title>My first Program</title>
</head>
<body>
<?php
echo "I'm a KoKo.And I'm OK.";
?>
</body>
</html>
OK . အဲဒိ firstprog.php ဆိုတ႔ဲ ဖုိင္ကို web browser ကေန ၾကည့္ၾကည့္ရင္ ေအာက္ကပံုအတိုင္း
ျမင္ရပါမယ္။
rZÑdr pmay
26. 26 PHP avScg;xpfrsm;
ပံုမွာျမင္ရတဲ႔အတုိင္းဘဲ $favmovie = TheGyanMoe ျဖစ္သြားတာပါ။ တစ္ခါတည္း browser ရဲ႕ Tab ရဲ႕
title ကိုလည္း ၾကည့္လိုက္ပါဦး My Movie Site - ThaGyanMoe ဆိုၿပီး ျမင္ရမွာပါ။ ဘာျဖစ္လို႔လဲဆုိေတာ႔
title tag မွာ $favmovie ဆိုတဲ႔ variable ကို ေခၚသံုးထားလိုက္လို႔ျဖစ္ပါတယ္။
Special characters in URLs
URL မွာ variable ေတြမွာပါတတ္တဲ႔ special character ေတြျဖစ္တဲ႔ space, amper-
sands(&) စတဲ႔ character မ်ား ကို ဒီအတုိင္း ေဖာ္ျပရာမွာ problem ရွိပါတယ္။ ဒီလို ဟာေတြကို PHP
မွာ ေက်ာ္လႊားႏိုင္ပါတယ္။ သူ႕မွာပါတဲ႔ urlencode() ဆိုတဲ႔ function ကို သံုးၿပီး special character
problem ကို ေျဖရွင္းႏိုင္ပါတယ္။ အခု နည္းနည္းေလာက္ ထပ္ေပါင္း ေလ႔က်င္႔ၾကည့္ရေအာင္။ mov-
ie1.php ကို ေအာက္က ကုဒ္ေတြအတုိင္း ထပ္ ျပင္ေရးၾကည့္မယ္ေလ။
<html>
<head>
<title> Find my Favorite Movie! </title >
</head>
<body>
<?php
//add this line:
$myfavmovie = urlencode('Enemy at the
gate');
//change this line:
echo "<a href="moviesite.
php?favmovie=$myfavmovie">";
echo 'Click here to see information about my
favorite movie!';
echo '</a>';
?>
</body >
</html>
rZÑdr pmay
27. udkausmf 27
save လုပ္ၿပီး ျပန္ ဖြင့္ၾကည့္ရေအာင္။ ဒါဆုိရင္ ေအာက္ပါပံုအတုိင္းျမင္ရမယ္။ URL box ထဲကို
ေသခ်ာၾကည့္ပါ။
ဒီပရိုဂရမ္ေလးမွာဆုိရင္ $myfavmovie = Enemy at the gate ဆိုၿပီး ေပးခဲ႔တာပါ။ word ေတြၾကားက
space ေတြကို မရွိေစခ်င္တဲ႔အတြက္ urlencode() ဆိုတဲ႔ function ကို တစ္ခါတည္း တြဲေပးလိုက္တာပါဘဲ။
မခက္ပါဘူး။ ဟုတ္တယ္မလား။ ကဲ ..ေနာက္တစ္ခန္းကို ဆက္ကူး လိုက္ၾကရေအာင္။
Passing variables with SESSIONS
ကၽြန္ေတာ္ အထက္မွာ ေျပာခဲ႔တဲ႔အတုိင္း variable ကို URL ကေန passing လုပ္တဲ႔အခါမွာ
အေရးမႀကီးတဲ႔ ေဒတာေတြ ၊ saved လုပ္ထားတဲ႔ old information ေတြကို ယူသံုးလိုက္လို႔ ကိုယ္႔
site အတြက္ dangerous အေျခအေနကို မေရာက္ႏိုင္တဲ႔ အေျခအေနေတြမွာ သံုးလို႔ရပါတယ္။
တကယ္လို႔မ်ား user တစ္ေယာက္ရဲ႕ personal data ေတြကိုသာဆုိရင္ အထက္ပါနည္းနဲ႔
မသံုးသင္႔ပါဘူး။ ကိုယ္႔အေၾကာင္းကို ဘာျဖစ္လို႔ လူတုိင္းကို ေပးသိရမွာလဲ ? မဟုတ္ဘူးလား။ Person-
al data ေတြဆုိတာ username, password, address, email, phone number, credit card number
စတာေတြပါပါတယ္။ အဲဒါေတြကို private အေနနဲ႔ သံုးဖုိ႔ Cookies ကို သံုးရပါတယ္။ ေနာက္ပိုင္းမွာေတာ႔
cookies အေၾကာင္းကို ထပ္ၿပီး ျဖည့္စြက္ေဆြးေႏြးသြားပါမယ္။
rZÑdr pmay
29. udkausmf 29
echo 'Click here to see information about my favorite mov-
ie!';
echo ' </a> ';
?>
</body>
</html>
ေနာက္ၿပီးေတာ႔ moviesite.php ကိုလည္း နည္းနည္းေတာ႔ျပင္ေရးရမယ္ေလ။ ဘာလို႔ဆုိေတာ႔
သူ႔ဆီက information ေတြ ယူရမွာကိုး ။ session သံုးၿပီဆုိေတာ႔ သူက ဒီအတုိင္း မေပးေတာ႔ဘူးေလ။
သတ္မွတ္ထားတဲ႔ data ေတြကို တူမတူ တိုက္စစ္မယ္။ တူရင္ေပးမယ္။ မတူရင္ မေပးဘူးေပါ႔။ အဲဒိလို
စစ္ဖုိ႔အတြက္ moviesite.php ကို နည္းနည္းေလး ျပင္ေရးမယ္ေလ။
<?php
session_start();
//check to see if user has logged in with a valid password
if ($_SESSION['authuser'] != 1) {
echo 'Sorry, but you don't have permission to view this page!';
exit();
}
?>
<html>
<head>
<title> My Movie Site - <?php echo $_GET['favmovie']; ?> </title>
</head >
<body>
<?php
echo 'Welcome to our site, ';
echo $_SESSION['username'];
echo '! <br/>';
echo 'My favorite movie is ';
echo $_GET['favmovie'];
echo ' <br/> ';
$movierate = 5;
echo 'My movie rating for this movie is: ';
echo $movierate;
rZÑdr pmay
31. udkausmf 31
<?php
if (1+3 ==4){
echo 'Summation is true.';
}
?>
အဲဒါကို run လုိက္ရင္ browser ကေန Summation is true ဆိုတာကို ျပမွာပါ။ အလုပ္လုပ္ပံုက
if ဆိုတဲ႔အတိုင္း ျဖစ္လွ်င္ေပါ႔ ဗ်ာ... 1+3==4 ျဖစ္လွ်င္ Summation is true ဆိုတာကို echo နဲ႔ output
ထုတ္ထားတာပါ။ 1+3==5 ဆိုရင္ ဘာမွ ျပမွာမဟုတ္ပါဘူး ။ ဟုတ္မွမဟုတ္တာကိုး။ ဘာျဖစ္လို႔ ==
ႏွစ္ခါသံုးရတာလဲ ဆုိရင္ PHP မွာ သံုးရမယ္႔ Comparison operators ကို ရွင္း ျပပါမယ္။
Comparison operators
== :Values are equal
=== : Values are identical
!= :Values are not equal
!== :Values are not identical
< :value 1 is less than value 2
> :value 1 is greater than value 2
<= :value 1 is less than or equal to value 2
>= :value 1 is greater than or equal to value 2
ဒီေနရာမွာ ေသခ်ာ မွတ္ထားရမွာက equal ဆိုတာနဲ႔ identical ဆုိတာ မတူပါဘူး။ identical
မွာဆိုရင္ variable ရဲ႕ value ေရာ datatype ေရာ တူပါတယ္။ equal မွာကေတာ႔ value ဘဲတူတာပါ။
အခု moviesite.php မွာ ျပင္ေရးလိုက္တဲ႔ ဟာကို ျပန္ရွင္းပါမယ္။
rZÑdr pmay
33. udkausmf 33
Passing variables with cookies
Cookies ေတြမွာ ဘာေတြကို သိမ္းသလဲဆုိရင္ website ကို လာေရာက္တဲ႔သူရဲ႕ computer
information အနည္းငယ္ကို သိမ္းပါတယ္။ Theory အရဆုိရင္ေတာ႔ Cookies ေတြဟာ အသံုးျပဳသူရဲ႕
IP , operating system ေတြကို intercept လုပ္ႏိုင္ပါတယ္။ ဒါေပမယ္႔ cookies ေတြက storing infor-
mation ဘဲလုပ္ပါတယ္။ တစ္ခ်ဳိ႕သူေတြက ေတာ႔ ဒီ cookies technology နဲ႔ အသံုးျပဳသူရဲ႕ browsing
habits ေတြ ကို track လုပ္ပါတယ္။ ၿပီးေတာ႔ ဒီ cookies ေတြကို commonly name directory ထဲမွာ
သိမ္းထားတာျဖစ္တဲ႔အတြက္ hacker ေတြက hack လုပ္ၿပီးေတာ႔ ေသာ္လည္းေကာင္း တစ္ျခားသူက
မိမိကြန္ပ်ဴတာထဲက cookies ေတြကို တစ္နည္းနည္းျဖင္႔လာယူသြားလွ်င္ေသာ္ လည္းေကာင္း သင္႔ရဲ႕
အေရးႀကီးေဒတာေတြ ပါသြားႏိုင္ပါတယ္။ ဒါေၾကာင္႔ တစ္ခ်ဳိ႕သူေတြကေတာ႔ Browser က cook-
ies ကို disable ေပးထားေလ႔ရွိပါတယ္။ ဒီလိုမ်ဳိး ျဖစ္ပ်က္ႏိုင္တာေတြေၾကာင္႔ တကယ္႔ အေရးႀကီး
ေဒတာေတြ (ဥပမာ - Credit card information ) စတာေတြကို ကြန္ပ်ဴတာထဲမွာ သိမ္းဆည္း မထားဖို႔
အႀကံေပးလိုပါတယ္။
Cookies နဲ႔ပါတ္သတ္ၿပီး ပိုသိခ်င္ရင္ security risk ေတြကို ပို သိခ်င္ရင္ ေအာက္က website
ကို သြားေရာက္ ေလ႔လာႏိုင္ပါတယ္။
www.w3.org/Security/faq/wwwsf2.html#CLT-Q10
ဒီလိုဆုိရင္ ဘာျဖစ္လို႔ developer သမားေတြက cookies ကို သံုးေနၾကေသးလဲ။ cook-
ies ကို သံုးျခင္းျဖင္႔ သတ္မွတ္ထားတဲ႔ အခ်ိန္ထိ information ကို သိမ္းထားလို႔ရပါတယ္။ Ses-
sion ကို သာသံုးမယ္ဆုိရင္ Browser ကို ပိတ္လိုက္တာနဲ႔ သူ႕ရဲ႕ life ကလည္း ကုန္ၿပီေလ။ cookies
ကေတာ႔ အဲလို မဟုတ္ပါဘူး။ Session ကိုသာ cookies နဲ႔ တြဲသံုးမယ္ဆုိရင္ browser life ထက္ ပို
ၾကာရွည္ခံေအာင္သံုးႏိုင္ပါတယ္။
ဟုတ္ၿပီ။ ခု cookie ကို ဘယ္လို သတ္မွတ္မလဲ။ လြယ္ပါတယ္။ setcookie() ေပါ႔။ ဒါလည္း
PHP function တစ္ခုပါဘဲ။ cookie တစ္ခု သတ္မွတ္မယ္ဆုိရင္ ေအာက္က အခ်က္ေတြကို အရင္ဆံုး
စဥ္းစား ဖုိ႔လိုပါတယ္။
1. Cookie name
2. Value of the cookie name (eg. username)
3. Cookie life time (in seconds) UNIX timestamp ေပၚမွာ အေျခခံထားပါတယ္။
rZÑdr pmay
34. 34 PHP avScg;xpfrsm;
ဒါေပမယ္႔ ခုလို ေရးလို႔ရပါ တယ္။ time()+60*60*24*365 ဒါဆုိရင္ သူ႔ရဲ႕ သက္တမ္းက ၁
ႏွစ္စာျဖစ္ပါတယ္။
4. Path ( cookie ကို သိမ္းမယ္႔ေနရာ)
5. Domain ( ဒီ cookie ကို လက္ခံႏိုင္တဲ႔ domain) (ဒီဟာက optional ျဖစ္ပါတယ္။
မသတ္မွတ္လည္းရတယ္)
6. Cookie မွာ secure connection HTTPS ကို on ေပးထားရမယ္။
အဲဒိေတာ႔ ဒီလိုပံုစံျဖစ္မွာေပါ႔။
setcookie ($name[, $value[, $expire[, $path[, $domain[, $secure]]]]])
ခုလည္း $_COOKIE['cookiename'] ကို သံုးမွာပါဘဲ။ ခု လုပ္မယ္႔ ပရိုဂရမ္မွာဆုိရင္
MgMg12345 ဆုိတဲ႔ user ဟာ ဒီ site ကို လာတုိင္း သူ႔ရဲ႕ username ကို type လုပ္စရာမလိုဘဲ
ေအာ္တို ျဖည့္ေပးမွာျဖစ္ပါတယ္။ movie1.php file ကိုဘဲ နည္းနည္းေလး ထပ္ ျပင္ ေရးၾကည့္တာေပါ႔။
<?php
setcookie('username', 'MgMg', time() + 60);
session_start();
//delete this line: $_SESSION['username'] = 'MgMg12345';
$_SESSION['authuser'] = 1;
?>
<html>
<head>
<title> Find my Favorite Movie! </title>
</head>
<body>
<?php
$myfavmovie = urlencode('Enemy at the gate');
echo " <a href="moviesite.php?favmovie=$myfavmovie"> ";
echo 'Click here to see information about my favorite movie!';
echo ' </a> ';
?>
</body>
</html>
rZÑdr pmay
35. udkausmf 35
ၿပီးေတာ႔ ထံုးစံအတိုင္း moviesite.php file ကို နည္းနည္းေလး ထပ္ျပင္ေရးမယ္
<?php
session_start();
//check to see if user has logged in with a valid password
if ($_SESSION['authuser'] != 1) {
echo 'Sorry, but you don't have permission to view this page!';
exit();
}
?>
<html>
<head>
<title> My Movie Site - <?php echo $_GET['favmovie']; ?> </title>
</head >
<body >
<?php
echo 'Welcome to our site, ';
echo $_COOKIE['username'];
echo '! <br/> ';
echo 'My favorite movie is ';
echo $_GET['favmovie'];
echo ' <br/> ';
$movierate=5;
echo 'My movie rating for this movie is: ';
echo $movierate;
?>
</body >
</html>
ဒီလိုဆိုရင္ ေအာက္ပါပံုေတြအတုိင္းျမင္ရမွာပါ။
rZÑdr pmay
36. 36 PHP avScg;xpfrsm;
အထက္က ပရိုဂရမ္ဟာ cookies life time ကို 60 seconds ဘဲ သတ္မွတ္ထားတာပါ။
ကိုယ္႔ဟာကို စိတ္ၾကိဳက္ ျပင္ၾကည့္ၿပီးေလ႔က်င္႔ၾကည့္ပါ။
rZÑdr pmay
37. udkausmf 37
Passing information with Forms
Form ပံုစံကို နည္းနည္းေလာက္ ေလ႔လာၾကည့္ရေအာင္ ။ သူ႔ကို စတင္ေတာ႔မယ္ဆုိရင္
(၁) <form> နဲ႔ စတင္ၿပီး action and method ဆိုတဲ႔ attribute ပါပါတယ္။ action အေနနဲ႔
URL တစ္ခုကို ေပးႏိုင္ၿပီး method အေနနဲ႔ GET or POST တစ္ခုခုကို သံုး
ႏိုင္ပါတယ္။
(၂) input fields မ်ားပါပါတယ္။ အသံုးမ်ားတာေတြကေတာ႔
TEXT: min 2 characters to 2000 characters အထိ သံုးႏိုင္ပါတယ္။ ဒိထက္
ပိုမ်ားမ်ားသံုးခ်င္ရင္ေတာ႔ textarea ဆိုတဲ႔ ဟာကို သံုးရပါမယ္။
Check box : user ေတြကို Choice လုပ္ဖုိ႔ရန္အတြက္ျဖစ္ပါတယ္။ choice ကို
တစ္ခုထက္မက ေရြးခ်ယ္ႏိုင္မွာျဖစ္ပါတယ္။
Radio: radio button ကလည္း list ထဲကေန ေရြးခ်ယ္ဖို႔ဘဲျဖစ္ပါတယ္။ ဒါေပမယ္႔
သူက တစ္ခုဘဲ ေရြးလို႔ရမွာျဖစ္ပါတယ္။
Select: ဒီေကာင္႔ကိုေတာ႔ ေတာ္ေတာ္မ်ားမ်ားက Drop down box အျဖစ္သိၾကပါတယ္။
Passwords: သူ႔ကိုေတာ႔ user က ဘာရိုက္တယ္ဆုိတာကို Hide
လုပ္ထားရမွာျဖစ္ပါတယ္။
Using forms to get information
movie1.php file ကိုဘဲ နည္းနည္းေလး ထပ္ၿပီး ျပင္ေရးၾကည့္မယ္ေလ။ ျပင္ရင္းျပင္ရင္း
ေတာ္ေတာ္ေတာင္ မ်ားလာၿပီေနာ္။ ကၽြန္ေတာ္ေျပာခ်င္တာက မ်ားလာၿပီဆုိေတာ႔ Comment
ေလးေတြ ေသခ်ာေရးဖုိ႔ ပါ။ ေအာက္မွာ ျပထားတဲ႔ Code ေလးေတြကို ေသခ်ာ ေလ႔လာၾကည့္ပါ။
rZÑdr pmay
38. 38 PHP avScg;xpfrsm;
<?php
//delete this line: setcookie('username', 'MgMg', time() + 60);
session_start();
$_SESSION['username'] = $_POST['user'];
$_SESSION['userpass'] = $_POST['pass'];
$_SESSION['authuser'] = 0;
//Check username and password information
if (($_SESSION['username'] == 'MgMg') and
($_SESSION['userpass'] == '12345')) {
$_SESSION['authuser'] = 1;
} else {
echo 'Sorry, but you don't have permission to view this page!';
exit();
}
?>
<html>
<head >
<title> Find my Favorite Movie! </title >
</head >
<body>
<?php
$myfavmovie = urlencode('Enemy at the gate');
echo " <a href="moviesite.php?favmovie=$myfavmovie"> ";
echo "Click here to see information about my favorite movie!";
echo " </a> ";
?>
</body>
</html>
ျပီးသြားရင္ moviesite.php ကို နည္းနည္း ထပ္ျပင္ေရးပါဦးမယ္။
<?php
session_start();
//check to see if user has logged in with a valid password
if ($_SESSION['authuser'] !=1 ) {
echo 'Sorry, but you don't have permission to view this page!';
exit();
rZÑdr pmay
39. udkausmf 39
}
?>
<html>
<head>
<title> My Movie Site - <?php echo $_GET['favmovie']; ?> </title>
</head>
<body>
<?php
echo 'Welcome to our site, ';
//delete this line: echo $_COOKIE['username'];
echo $_SESSION['username'];
echo '!<br/>';
echo 'My favorite movie is ';
echo $_GET['favmovie'];
echo ' <br/> ';
$movierate = 5;
echo 'My movie rating for this movie is: ';
echo $movierate;
?>
</body>
</html>
ၿပီးသြားရင္ Login form တစ္ခု တည္ေဆာက္ပါမယ္။ text editor မွာ new document လုပ္ပါ။ File
name ကို login.php လုိ႔ နာမည္ေပးပါမယ္။
<?php
session_unset();
?>
<html>
<head>
<title>Please Log In</title>
</head>
<body>
<form method="post" action="movie1.php">
<p> Enter your username:
<input type="text" name="user"/>
</p>
<p> Enter your password:
rZÑdr pmay