ภาษา php
-
Upload
cc-nakhon-pathom-rajabhat-university -
Category
Education
-
view
4 -
download
0
Transcript of ภาษา php
อาจารยสธารตน ชาวนาฟาง
สาขาวศวกรรมซอฟตแวร มหาวทยาลยราชภฏนครปฐม
เอกสารนเปนสวนหนงของรายวชา Webpage Design and Programming Workshop
Webpage Design and Programming Workshop
ภาษา PHP
• ยอมาจาก Hypertext Preprocessor
• สามารถเขยนแทรกอยภายในภาษา HTML
• ความสามารถของ PHP คอ database-enabled web page ท าใหเอกสารของ
ภาษา HTML สามารถทจะเชอมตอกบระบบฐานขอมล (database)
• ดงนนภาษา PHP เปนภาษาทเรยกวา server-side หรอ HTML-embedded s
cripting language เปนเครองมอทส าคญชนดหนงทชวยใหสามารถสราง
เอกสารแบบ Dynamic HTML ไดอยางมประสทธภาพและมลกเลนมากข น
Webpage Design and Programming Workshop
การท างานของภาษา PHP
• PHP เปนภาษาทมการประมวลผลทางเครองผใหบรการ (Server)
• โดยเปนเครองมอทท าใหสามารถสรางไฟลเอกสารประเภท HTML ทมการ
เคลอนไหวเปลยนแปลงไดหรอทเรยกวาพลวต (Dynamic HTML)
• การทเครองบรการมการประมวลผลกอนสงขอมลมายงเครองผใช เรยกวา
Server Side Include (SSI) ซงจะท างานในฝง server แลวสงการแสดงผล
มายง browser ของตว Client และนอกจากนยงเปน script ท embed บน
HTML อกดวย และการท างานในลกษณะนท าใหความเรวในการท างานสงขน
อกดวย
Webpage Design and Programming Workshop
การท างานของภาษา PHP
Webpage Design and Programming Workshop
ความสามารถของ PHP
• เปนภาษาทมลกษณะเปนแบบ Open source
• เปนสครปตแบบ Server Side Script ท างานบนเวบเซรฟเวอร และสงผลลพธ
ทไดจากการประมวลผลมาทเครองของผใชในรปแบบของ HTML
• สามารถท างานไดใน OS ทตางชนดกน
• สามารถท างานไดใน Web Server หลายชนด เชน Personal Web Server
(PWS), Apache, OmniHttpd และ IIS เปนตน
Webpage Design and Programming Workshop
ความสามารถของ PHP
• สนบสนนการเขยนโปรแกรมเชงวตถ (Object Oriented Programming)
• สามารถในการท างานรวมกบระบบจดการฐานขอมลทหลากหลาย เชน
Oracle, MySQL, FilePro, Solid, FrontBase, mySQL และ MS SQL เปนตน
• อนญาตใหผใชสรางเวบไซตซงท างานผานโปรโตคอลชนดตางๆ ได เชน
LDAP, IMAP, SNMP, POP3 และ HTTP เปนตน
• สามารถเขยน และอานในรปแบบของ XML ได
แบบ PHP tags เรยกวา
1 <? …. ค าสงภาษา PHP …..?> short style
2 <?php .….…. ค าสงภาษา PHP ….... ?> XML style
3 <script language="php">..…. ค าสง…...</script> JavaScript
style
4 <% ..…. ค าสงภาษา PHP …... %> ASP style
Webpage Design and Programming Workshop
รปแบบของค าสง
Webpage Design and Programming Workshop
รปแบบของค าสง
<html>
<head>
<title> My Homepage </title></head>
<body>
<h1> <?php echo "Hello World!"; ?> </h1>
</body>
</html>
Webpage Design and Programming Workshop
รปแบบของค าสง
<HTML>
<HEAD><TITLE> ฝกการเขยนภาษา PHP </TITLE></HEAD>
<BODY>
<H1>
<? echo "นคอการแสดงผลขอความในภาษา PHP <br></n>";
echo ("อกรปแบบหนงของการแสดงผลขอความในภาษา PHP ");
//echo เปนค าสงใหแสดงโปรแกรมแสดงผลทาง Browser
// เครองหมาย "//" เรยกวา comment
/* หรออกรปแบบหนงของ comment เครองหมาย </n> ท าใหภาษา PHP เปนการข นบรรทด
ใหม เครองหมาย <br> จะเปนค าสงใหการแปลผลของ Browser ขนบรรทดใหม */
?>
</H1>
</BODY> </HTML>
Webpage Design and Programming Workshop
ค าสงแสดงผล
ค าสงการแสดงผลออกทาง Browser ม 3 ตวคอ echo, print และ printf ดงน
1. ค าสง echo
• สามารถแยกขอความเปนหลายชวงในเครองหมาย “……...” โดยแตละชวง
สามารถใชเครองหมายจลภาค (,) คน
แบบท 1
echo "ขอความทตองการแสดง" ;
แบบท 2
echo ("ขอความทตองการแสดง") ;
<?
echo "Hello<br>";
echo ("sunday");
?>
Webpage Design and Programming Workshop
ค าสงแสดงผล
2. ค าสง print
• ใชในการสรางขอความใหกบ Text File หากตองการสราง Text File ดวย
Code ภาษา PHP ตองใช print() สวนการแสดงผลออกทางหนาเวบจะใช
echo() หรอ print() กไดไมแตกตางอะไร
แบบท 1
print"ขอความทตองการแสดง";
แบบท 2
print("ขอความทตองการแสดง");
<?php
print"Hello<br>" ;
print("sunday") ;
?>
Webpage Design and Programming Workshop
ค าสงแสดงผล
3. ค าสง printf
• เปนค าสงทใชในการแสดงผลออกทางหนาเวบ
• สรางขอความใหกบ Text file ไมวาจะเปนจ านวนเตม (int) , ทศนยม (flo
at) , ขอความ (string) หรออกขระ
• นอกจากนค าสงยงมความยดหยนสง โดยสามารถก าหนดหรอจดรปแบบ
การแสดงผลใหมระเบยบหรอเหมาะสมตามความตองการไดอกดวย
Webpage Design and Programming Workshop
ค าสงแสดงผล
3. ค าสง printf
printf($format,$value);
$format คอรปแบบหรอรหสแทนขอมล ดงน
%d = เลขฐานสบ
%o = เลขฐานแปด
%b = เลขฐานสอง
%c = รหส ASCII
%s = ขอความ
%x,%X = เลขฐานสบหก
%f = ทศนยม
$value คอตวแปร/นพจนทตองการแสดงขอมล
<?php
printf("100*2=%d",100*2);
echo "<br>";
printf("100*2=%.2f",100*2);
echo "<br>";
printf("100*2=%c",100*2);
echo "<br>";
printf("%s","Sutarat Chaonafang");
?>
Webpage Design and Programming Workshop
ฟงกชนทใชในการตรวจสอบเงอนไข
1. ค าสงตรวจสอบเงอนไขแบบทางเลอกเดยว (ค าสง if )
• ค าสงตรวจสอบเงอนไขแบบทางเลอกเดยว จะท าค าสงกตอเมอเงอนไขเปนจรง
if (เงอนไข) {
กจกรรมหรอค าสง เมอเงอนไขขางตนเปนจรง
}
$A = 2;
if ( $A == 2 ) {
echo "ตวแปรชอ A มคาเทากบ 2";
}
Webpage Design and Programming Workshop
ฟงกชนทใชในการตรวจสอบเงอนไข
2. ค าสงตรวจสอบเงอนไขแบบสองทางเลอก (ค าสง if...else)
• ค าสงตรวจสอบเงอนไขแบบทางเลอกเดยว จะท าค าสงกตอเมอ เงอนไขเปนจรง
และจะท าค าสงหลง else กตอเมอเงอนไขเปนเทจ
if (เงอนไข)
{
ค าสงเมอเงอนไขขางตนเปนจรง
}
else
{
ค าสงเมอเงอนไขขางตนเปนเทจ
}
$A = 2;
if ($A == 2)
{
echo "ตวแปรชอ A มคาเทากบ 2";
}
else
{
echo "ตวแปรชอ A มคาไมเทากบ 2";
}
Webpage Design and Programming Workshop
ฟงกชนทใชในการตรวจสอบเงอนไข
3. ค าสงตรวจสอบเงอนไขแบบสองทางเลอก (ค าสง if...else if ... )
• ค าสงตรวจสอบเงอนไขแบบทางเลอกเดยว จะท าค าสงกตอเมอ เงอนไขเปนจรง
และจะท าค าสงหลง else กตอเมอเงอนไขเปนเทจ
Webpage Design and Programming Workshop
ฟงกชนทใชในการตรวจสอบเงอนไข
if (เงอนไขท 1)
{
ค าสง เมอเงอนไขท 1 เปนจรง
}
elseif (เงอนไขท 2)
{
ค าสง เมอเงอนไขท 2 เปนจรง
}
else
{
ค าสง เมอเงอนไขท 1 และ 2 เปนเทจ
}
$A = 2;
if ( $A == 2 )
{
echo "ตวแปรชอ A มคาเทากบ 2";
}
elseif ($A==1)
{
echo "ตวแปรชอ A มคาเทากบ 1";
}
else
{
echo"ตวแปรชอ A มคาไมเทากบ 1 และ 2";
}
Webpage Design and Programming Workshop
ฟงกชนทใชในการตรวจสอบเงอนไข
4. การตรวจสอบเงอนไขโดยใช switch
• เปนค าสงทใชส าหรบตรวจสอบเงอนไขเหมอนกบ if
swicth ( คาตวแปรทใชตรวจสอบ )
{
case (คาท 1 ):
ค าสงทจะท าเมอเงอนไขตรงกบคาท 1
break;
case (คาท 2 ):
ค าสงทจะท าเมอเงอนไขตรงกบคาท 1
break;
default:
ค าสงทจะท าเมอเงอนไขไมตรงกบคาใด ๆ เลย
}
Webpage Design and Programming Workshop
ฟงกชนทใชในการตรวจสอบเงอนไข
$A = "ณ เชยงใหม";
swicth ( $A )
{
case ( "วชรพงษ" ):
echo "ชอ";
break;
case ( "ณ เชยงใหม" ):
echo "นามสกล";
break;
default:
echo "อะไรกไมร";
}
4. การตรวจสอบเงอนไขโดยใช switch
Webpage Design and Programming Workshop
การสงขอมลเพอการประมวลผล
• สงทส าคญส าหรบการเขยนโปรแกรมในเครอขายอนเทอรเนต คอการสง
ขอมลจากเครองผใชโดยทวไป เพอเหตผลตาง ๆ ซงท าใหขอมลตางๆของ
เวบไซต มปฏสมพนธกบผใช ดงนนการ submit ฟอรมเพอสงขอมลไปยง
ไฟลโปรแกรม PHP การเกบขอมลของผใชของเครองใหบรการ หรอการ
กลนกรองขอมลเพอสงออกแสดงผลยงเครองผใช การสงคาผานทางเวบ
เพจ ใน HTML จะมการการสงคาได 2 รปแบบ นนคอ
Webpage Design and Programming Workshop
การสงขอมลเพอการประมวลผล
1. Post
• เมอ submit ฟอรมดวย method=post ขอมลทอยภายใน Form จะถกสงไป
เกบไวในตวแปรตวหนงใน Web Server ตวแปรนคอ CONTENT_LENGTH ซง
ในการ post น จะใชในกรณทขอมลมปรมาณมาก
2. Get
• แตถาใช method = Get คาทไดจากการ submit จะสงไปใหกบ PHP โดย
ผาน URL ไปเกบไวในตวแปร QUERY_STRING ของ Web Server ถาเปลยน
จาก method = Post เปน Get เมอ submit ใหสงเกตทชอง Address จะพบ
ขอมลทสงโดยมรหสตาง ๆ แทรกไปดวย ดงน
Webpage Design and Programming Workshop
การสงขอมลเพอการประมวลผล
• ? เครองหมาย ? จะกนระหวาง URL กบขอมล
• key = value ขอมลทถกสงมา
• & คนระหวาง key = value แตละอปกรณ (ถาม
key มากกวา 1)
• + แทนทชองวาง
Webpage Design and Programming Workshop
การสงขอมลเพอการประมวลผล
ขอแตกตางระหวาง Post และ Get
GET
• การสงขอมลแบบ GET = http://localhost/BSC442/welcome2.php?na
me=sunisa++phonphan&age=22&submit=Submit (โดยจะแสดงตวแปร
และคาตวแปรทสง)
• ขอดของ get คอ ไมตองสรางฟอรม กสามารถ
• ขอเสย คนอนสามารถเขาถงขอมลไดงาย
POST
• การสงขอมลแบบ POST = http://localhost/BSC442/welcome1.php
• ขอด มความปลอดภยมากกวา
Webpage Design and Programming Workshop
การตดตอกบฐานขอมล MySQL
mysql_connect(host,user,pass); ฟงกชนใชในการตดตอฐานขอมล
mysql_db_query(Db,SQL); ฟงกชนสงค าสงใหภาษา SQL
ประมวลผล
mysql_fetch_array($result); ฟงกชนอานขอมลหนงแถวใน
ตารางเขาเกบในตวแปร
mysql_close(); ฟงกชนยกเลกการตดตอฐานขอมล