SlideShare une entreprise Scribd logo
1  sur  68
Télécharger pour lire hors ligne
Web-based Applications
         by
  Open Source Tools




                         1
หัวขอการฝกอบรม
• วันที่ 1:
  PHP Fundamentals
• วันที่ 2:
  Linux System Administration
• วันที่ 3:
  PHP & MySQL
• วันที่ 4:
  Workshop

                                2
PHP Fundamental: กําหนดการสอน

9.00 น. – 10.30 น.
• ความรูเบืองตนเกียวกับ PHP (Introduction to PHP)
         ้        ่
• ชนิดของขอมูลและตัวแปร (Data type and variable)
• การปฏิบติการใน PHP (Program operator)
          ั

10.45 น. – 12.15 น.
• การทํางานตามเงือนไข (Conditional statement)
                 ่
• การควบคุมการทํางาน (Flow control)

                                                     3
ความรูเบื้องตนเกี่ยวกับ PHP
•   ทําไมตองเขียนโปรแกรมบนเว็บ?
•   PHP คืออะไร?
•   ทําไมตอง PHP?
•   PHP จากอดีตถึงปจจุบัน
•   การประยุกตใช PHP บนอินเทอรเน็ต
•   การเตรียมตัวกอนเขียนโปรแกรม PHP
•   ขั้นตอนในการเขียนโปรแกรม PHP
•   โครงสรางของโปรแกรมภาษา PHP
•   เริ่มตนเขียน PHP
                                        4
ทําไมตองเขียนโปรแกรมบนเว็บ?

• แนวโนมของการนําเสนอขอมูลบนอินเทอรเน็ตมี
  ลักษณะ Interactive คือ มีกจกรรมทีทําใหผูเขา
                              ิ       ่
  ชมมีสวนรวมกับเว็บไซตมากขึ้น เชน
  Guestbook, Message board, Forms, ฯลฯ
• แนวโนมของการนําเสนอขอมูลบนอินเทอรเน็ตมี
  ลักษณะ Dynamic คือ มีการปรับปรุงขอมูลให
  ทันสมัยอยูเสมอโดยอัตโนมัติ
• รวดเร็วและประหยัด


                                                   5
PHP คืออะไร?
• PHP ยอมาจากคําวา PHP Hypertext Preprocessor
  (Professional Home Page)
• PHP คือ ภาษาที่ใชในการเขียนโปรแกรมหรือใชในการ
  พัฒนา Applications เพื่อใชในระบบอินเทอรเน็ต
• การทํางานของ PHP นั้นจะเปนการทํางานบนเครื่อง
  ใหบริการ (Server side) ที่ใชระบบปฏิบัติการ Windows
  หรือระบบปฏิบัติการ Unix
• สามารถประยุกตใชงาน PHP ในงานประมวลผลที่มี
  ลักษณะที่หลากหลาย เชน งานที่เกี่ยวของกับการ
  คํานวณ งานที่เกี่ยวของกับการประมวลผลขอความ หรือ
  งานที่เกี่ยวของกับการบริหารจัดการและเขาถึงขอมูลใน
  ระบบฐานขอมูล
                                                     6
ทําไมตอง PHP?
• งายตอการเรียนรูเนื่องจาก PHP ไดรับการ
  พัฒนาตอมาจากภาษา C และภาษา Perl
• มีประสิทธิภาพสูง (เพียงพอตอการพัฒนา
  Applications บนอินเทอรเน็ต)
• มีแหลงขอมูลใหศึกษา และพันธมิตรทีจะให
                                        ่
  คําปรึกษาเวลาที่เกิดปญหา รวมทังมีตัวอยาง
                                    ้
  และสคริปตสําเร็จรูปใหใชฟรีจํานวนมาก
• เปนเครื่องมือทีสะดวกและสามารถพัฒนา
                  ่
  Applications บนอินเทอรเน็ตไดอยางรวดเร็ว
                                               7
PHP จากอดีตถึงปจจุบัน (1)




    • ป ค.ศ. 1995 - นาย Rasmus Lerdorf ไดพัฒนา
      เครืองมือจากชุดคําสั่งในภาษา Perl สําหรับการ
          ่
      ตรวจสอบผูชมทีเขาชมหนาประวัติโดยยอบนเว็บ
                     ่
      (online resume) บนเว็บและเผยแพรในชื่อ Personal
      Home Page tools


                                                                                         8
Data from Appendix A. History of PHP and related projects (http://th2.php.net/history)
PHP จากอดีตถึงปจจุบัน (2)




    • ตอมามีการพัฒนา PHP ใหมโดยใชภาษา C และเพิ่ม
      ความสามารถในเรื่องของการติดตอกับระบบฐานขอมูล
      การใชตวแปรที่มลกษณะคลายกับในภาษา Perl (Perl-
              ั       ี ั
      like variables) และความสามารถเกี่ยวกับเรือง
                                               ่
      แบบฟอรม และเผยแพรในชื่อ PHP/FI (Personal
      Home Page / Forms Interpreter)


                                                                                         9
Data from Appendix A. History of PHP and related projects (http://th2.php.net/history)
PHP จากอดีตถึงปจจุบัน (3)




    • พฤศจิกายน ค.ศ. 1997 - PHP/FI ไดรับการพัฒนา
      ตอและเผยแพรเปน PHP/FI 2.0 ซึ่งมีการประมาณการ
      วามีผูนําภาษานี้ไปใชหลายพันคนทั่วโลก และมีเว็บไซต
      ที่ใชภาษานี้ประมาณ 50,000 เว็บไซต




                                                                                         10
Data from Appendix A. History of PHP and related projects (http://th2.php.net/history)
PHP จากอดีตถึงปจจุบัน (4)




 • มิถุนายน ค.ศ. 1998 - นาย Andi Gutmans และนาย
   Zeev Suraski ไดทําการพัฒนาตอโดยเพิ่มฟงกชนใหมาก
                                               ั่
   ขึ้นเพื่อรองรับการพัฒนาระบบงาน e-Commerce รวมทั้ง
   รองรับการติดตอกับระบบฐานขอมูล และคุณสมบัติในเรื่อง
   ของการโปรแกรมเชิงวัตถุ (Object Oriented
   Programming, OOP) และเผยแพรเปน PHP 3.0
Data from Appendix A. History of PHP and related projects (http://th2.php.net/history)


                                                                                         11
PHP จากอดีตถึงปจจุบัน (5)




 • พฤษภาคม ค.ศ. 2000 - PHP ไดรับการพัฒนาตอ
   เพื่อใหสามารถรองรับการพัฒนาโปรแกรมทีซับซอน
                                        ่
   โดยรวมเอาเทคโนโลยีทเรียกวา “Zend Engine” ไว
                         ี่
   และพัฒนาความสามารถในการทํางานบนโปรแกรม
   Web server ที่หลากหลายชนิดมากขึ้น และเผยแพร
   เปน PHP version 4.0
Data from Appendix A. History of PHP and related projects (http://th2.php.net/history)
                                                                                         12
PHP จากอดีตถึงปจจุบัน (6)




 • กรกฎาคม ค.ศ. 2004 ไดมีการรวมเอา Zend Engine
   version 2.0 เขาไวใน PHP และเผยแพรเปน PHP
   version 5.0 ในปจจุบนั
Data from Appendix A. History of PHP and related projects (http://th2.php.net/history)




                                                                                         13
PHP จากอดีตถึงปจจุบัน (7)
PHP: 21,466,638 Domains, 1,293,874 IP Addresses




Data from Netcraft (http://news.netcraft.com/)

                                                  14
PHP จากอดีตถึงปจจุบัน (8)
Apache Module Report (July 1st, 2005)

        Module                           Count                              %

            PHP                       5,082,557                            46.46

            Perl                      1,335,652                            12.21

         Tomcat                           5,578                            0.05
Data from Security Space
(http://www.securityspace.com/s_survey/data/man.200506/apachemods.html/)


                                                                                   15
การประยุกตใช PHP บนอินเทอรเน็ต (1)




http://www.missingpersons.or.th/      16
การประยุกตใช PHP บนอินเทอรเน็ต (2)




http://www.nectec.or.th/e-Card/
                                      17
การประยุกตใช PHP บนอินเทอรเน็ต (3)




http://www.truehits.net/              18
การประยุกตใช PHP บนอินเทอรเน็ต (4)




http://www.nesac.or.th/
                                      19
Web-based Application Architecture




                                20
การเตรียมตัวกอนเขียนโปรแกรม PHP

• ในการเขียนโปรแกรมดวย PHP จะตองเตรียม
  สวนประกอบดังตอไปนี้ คือ
     เครืองคอมพิวเตอรสาหรับการเขียนโปรแกรมที่มการ
         ่             ํ                           ี
     ติดตั้งโปรแกรมประมวลผลขอความ (Text editor)
     โปรแกรมสําหรับโอนยายขอมูลเขาสูเครื่องใหบริการ
     (FTP program) และโปรแกรมเว็บบราวเซอร (Web
     browser)
     เครืองคอมพิวเตอรใหบริการเว็บ (Web server) ที่
           ่
     สนับสนุนการเขียนโปรแกรมดวยภาษา php


                                                     21
ขั้นตอนในการเขียนโปรแกรม PHP




                               22
โครงสรางของโปรแกรมภาษา PHP (1)
• การเขียนโปรแกรมภาษา PHP จะตองมี
  สวนประกอบดังตอไปนี้




                                     23
โครงสรางของโปรแกรมภาษา PHP (2)
• จุดเริ่มตนและสิ้นสุดของการเขียนโปรแกรมภาษา
  PHP สามารถใชสัญลักษณได 4 รูปแบบ คือ
  1. SGML style***
     <? ... ?>

  2. XML style
     <?php ... ?>

  3. JavaScript style
     <script language="php"> ... </script>

  4. ASP style
     <% ... %>
                                             24
โครงสรางของโปรแกรมภาษา PHP (3)
• ชุดคําสั่งในภาษา PHP ประกอบดวยคําสั่งยอยๆ
  ซึ่งแตละคําสั่งจะตองสิ้นสุดดวยเครื่องหมาย
  เซมิโคลอน (;)




                                                 25
โครงสรางของโปรแกรมภาษา PHP (4)
• การกําหนดสวนทีเปนคอมเมนต หรือสวนคําอธิบายที่ไม
                  ่
  ตองการใหเกิดการประมวลผลสามารถทําได 2 วิธี คือ

 1. การกําหนดสวนคอมเมนตหลายๆ บรรทัดติดตอกัน

    /* คอมเมนตบรรทัดที่ 1
    คอมเมนตบรรทัดที่ 2
      .
      .
     คอมเมนตบรรทัดที่ N */

 2. การกําหนดสวนคอมเมนตบรรทัดเดียว ใชรูปแบบ

    // คอมเมนต หรือ #คอมเมนต
                                                    26
เริ่มตนเขียน PHP (1)
• เปดโปรแกรม Notepad โดยคลิกเมาสท่ปุม Start
                                ๊      ี
  เลือก All Programs เลือก Accessories แลวเลือก
  รายการ Notepad
• พิมพขอความตอไปนี้และบันทึกเปนไฟลชื่อ
  hello1.php
           <?
           echo “Hello World”;
           ?>

• ใชโปรแกรม FTP ในการโอนยายไฟลเขาสู Server
• ทดสอบการแสดงผลโดยใชโปรแกรม Web
  browser                                    27
เริ่มตนเขียน PHP (2)
• ใชโปรแกรม Notepad เพื่อแกไขไฟล hello1.php
• พิมพขอความตอไปนี้และบันทึกในไฟล
  hello2.php
<?
echo “Hello World”; // This is my first PHP program
?>




                                                  28
เริ่มตนเขียน PHP (3)
• ใชโปรแกรม Notepad เพื่อแกไขไฟล hello2.php
• พิมพขอความตอไปนี้และบันทึกในไฟล hello3.php
                <HTML>
                <HEAD>
                <title>Hello World</title>
                </HEAD>
                <BODY>
                <center><b>
                <?
                echo “Hello World”;
                ?>
                </b></center>
                </BODY>
                </HTML>                        29
เริ่มตนเขียน PHP (4)
• ใชโปรแกรม Notepad เพื่อแกไขไฟล hello3.php
• พิมพขอความตอไปนี้และบันทึกในไฟล hello4.php
    <HTML>
    <HEAD>
    <title>Hello World</title>
    </HEAD>
    <BODY>
    <center><b>
    <?
    echo “<font color=red>Hello World</font>”;
    ?>
    </b></center>
    </BODY>
    </HTML>
                                                 30
เริ่มตนเขียน PHP (5)
• ใชโปรแกรม Notepad เพื่อแกไขไฟล hello4.php
• พิมพขอความตอไปนี้และบันทึกในไฟล hello5.php
<HTML>
<HEAD>
<title>Hello World</title>
</HEAD>
<BODY>
<center><b>
<?
echo “<font color=“#00FF00”>Hello World</font>”;
?>
</b></center>
</BODY>
</HTML>
                                                     31
ชนิดของขอมูลและตัวแปร

•   คาคงที่
•   ตัวอยางการใชงานคาคงที่
•   ตัวแปรใน PHP
•   ตัวอยางการใชงานตัวแปรใน PHP
•   ตัวแปรระบบ
•   ชนิดของขอมูลใน PHP




                                    32
คาคงที่
• คาคงที่ (Constant) คือ การกําหนดคาแทนตัวเลขหรือ
  ชุดของตัวอักษร ซึ่งการกําหนดคาคงที่จะใชรูปแบบ

          define(“ชื่อคาคงที่”, คาที่กําหนดให)

• ตัวอยางเชน
   – define(“organization”, “NECTEC”);
   – define(“RED”, “#FF0000”);
   – define(“PI”, 3.14);
   – define(“NL”, “<br>n”);


                                                      33
ตัวอยางการใชงานคาคงที่
<HTML>                     constant.php
<HEAD>
<title>Hello World</title>
</HEAD>
<BODY>
<center><b>
<?
define(“organization”, “NECTEC”);
echo “Organization:” . organization;
?>
</b></center>
</BODY>
</HTML>
                                          34
ตัวแปรใน PHP

• ตัวแปรใน PHP จะมีรูปแบบเปน
      $ชื่อตัวแปร
• ตัวอักษรพิมพใหญหรือเล็กมีผลกับชื่อตัวแปร
  (Case-sensitive) เชน $Data ไมเทากับ $data
• การตั้งชื่อตัวแปรจะตองขึ้นตนดวยตัวอักษร
  ภาษาอังกฤษหรือเครื่องหมาย Underscore (_)
  ตามดวยตัวเลข ตัวอักษร หรือ Underscore



                                                 35
ตัวอยางการใชงานตัวแปรใน PHP
  <HTML>                     variable1.php
  <HEAD>
  <title>Hello World</title>
  </HEAD>
  <BODY>
  <center><b>
  <?
  $person = “Jon”;
  $Person = “Dang”;
  echo “Hello $person and $Person”;
  ?>
  </b></center>
  </BODY>
  </HTML>
                                             36
ตัวแปรระบบ
• ในการเขียนโปรแกรม PHP นั้น เราสามารถ
  เรียกใชงานตัวแปรของระบบที่มอยูได ดังตัวอยาง
                              ี
   <HTML>                     variable2.php
   <HEAD>
   <title>Hello World</title>
   </HEAD>
   <BODY>
   <center><b>
   <?
   echo “You are using $HTTP_USER_AGENT”;
   ?>
   </b></center>
   </BODY>
   </HTML>
                                                37
การรับคาจากแบบฟอรม

• โดยทั่วไปแลว การเขียน
  โปรแกรมภาษา PHP ใช
  ใ น ก า ร รั บ ข อ มู ล จ า ก
  แบบฟอร ม ที่ ส ร า งขึ้ น มา
  ด ว ย ภ า ษ า HTML เ พื่ อ
  นํ า ม า ป ร ะ ม ว ล ผ ล แ ล ะ
  สงผลลัพธกลับไปสูผใช  ู




                                     38
ขั้นตอนการรับคาจากแบบฟอรม




                              39
สวนประกอบของการรับคาจากแบบฟอรม

 1. แบบฟอรมสําหรับกรอกขอมูล (form.html)
    ทําหนาที่ในการรับขอมูลจากผูใชผานทาง
    โปรแกรมเว็บบราวเซอร
 2. สคริปตรับคาและประมวลผล (getform.php)
    ทําหนาที่ในการรับขอมูลที่สงจากแบบฟอรม
    และนําขอมูลนั้นไปประมวลผลตามคําสั่งที่
    กําหนดไว และสงผลลัพธกลับมาที่บราวเซอร
    ของผูใช


                                                40
ตัวอยางรับคาจากแบบฟอรม
<HTML>                            form.html
<HEAD>
<title>FORM</title>
</HEAD>
<BODY>
<form method="post" action="getform.php">
Name: <input type="text" name="myname">
<input type="submit" value="Send data">
</form>
</BODY>
<HTML>
                                              41
ตัวอยางรับคาจากแบบฟอรม
  <?             getform.php

  $name = $_POST["myname"];
  echo "Hello $name";

  ?>




                               42
ชนิดของขอมูลใน PHP

• ชนิดของขอมูลในภาษา PHP แบงออกเปน 7
  ประเภท ดังตอไปนี้
  –   ขอมูลชนิดตรรกะ
  –   ขอมูลชนิดตัวเลข
  –   ขอมูลชนิดตัวอักษร
  –   ขอมูลชนิดอาเรย
  –   ขอมูลชนิดออปเจกต
  –   ขอมูลชนิด Null
  –   ขอมูลชนิด Resource


                                          43
ชนิดของขอมูลใน PHP
• ขอมูลชนิดตรรกะ (Boolean) คือ ชนิดของขอมูล
  ที่มีเปนคาเปนไปไดแค 2 คาเทานั้น คือ true
  (จริง) หรือ false (เท็จ) ซึ่งขอมูลชนิดนี้นยมใช
                                                ิ
  ในลักษณะของการกําหนดเงื่อนไขของการทํางาน
  ในโปรแกรม
• ขอมูลชนิดตัวเลข (Numeric) คือ ชนิดของขอมูล
  ที่เปนตัวเลข สามารถนําไปคํานวณทาง
  คณิตศาสตรได ขอมูลชนิดนี้สามารถแบงไดเปน
   – ตัวเลขจํานวนเต็ม (Integer) เชน 5, 0, -20
   – ตัวเลขจํานวนจริง (Floating Point & Real
      Number) เชน 2.5, -0.025, 1.0                44
ชนิดของขอมูลใน PHP

• ขอมูลชนิดตัวอักษร (String) คือ ชนิดของขอมูลที่
  ประกอบดวยตัวเลข ตัวอักษร และอักขระพิเศษตางๆ
  ที่ไมสามารถนําไปคํานวณได ซึ่งการอางถึงขอมูล
  ชนิดตัวอักษรนี้จะตองอางถึงขอมูลภายใต
  เครื่องหมาย “…”
• ขอมูลชนิดอาเรย (Array) เปนชนิดของขอมูลที่
  สามารถเก็บคาไดหลายคา ซึ่งขอมูลชนิดนี้เปนที่
  นิยมใชงานกันอยางแพรหลาย และมีใชในทุกภาษา
  เขียนโปรแกรม

                                                45
ชนิดของขอมูลใน PHP

• ขอมูลชนิดออบเจ็ค (Object) ขอมูลชนิดนี้ใชในการ
  เขียนโปรแกรมเชิงวัตถุ (Object-oriented
  Programming, OOP)
• ขอมูลชนิด NULL คือ ชนิดของขอมูลที่แทน
  ความหมายวาไมมคา
                   ี
• ขอมูลชนิด Resource คือ ชนิดของขอมูลที่ใชเก็บ
  คาอางอิงของทรัพยากรตางๆ ในระบบ ซึ่งจะมีการ
  เก็บคาโดยอัตโนมัติ


                                               46
การปฏิบัติการใน PHP
Arithmetic Operators




                                 47
การปฏิบัติการใน PHP
Assignment Operators




                                48
การปฏิบัติการใน PHP
Comparison Operators




                                49
การปฏิบัติการใน PHP
Logical Operators




                                 50
การทํางานตามเงื่อนไข

• การใชงานประโยค if
• ตัวอยางการใชงานประโยค if
• การใชงานประโยค switch




                               51
การใชงานประโยค if

if (เงื่อนไข 1)
{
        ชุดคําสั่ง 1
} elseif (เงื่อนไข 2)
{
        ชุดคําสั่ง 2
} else
{
        ชุดคําสั่ง 3
}
                        52
ตัวอยางการใชงานประโยค if

    if ($i == 1)     if.php
    {
       echo “i = 1”;
    } elseif ($i == 2)
    {
     echo “i = 2”;
    } else
    {
     echo “no match”;
    }
                              53
การใชงานประโยค switch
   switch (ตัวแปร)
   {
    case คาตัวแปร 1:
         ชุดคําสั่ง 1
     case คาตัวแปร 2:
         ชุดคําสั่ง 2
     case คาตัวแปร 3:
         ชุดคําสั่ง 3
     default:
         ชุดคําสั่ง 4
   }
                         54
ตัวอยางการใชงานประโยค switch
    switch ($i)    switch.php
    {
     case 1:
         echo “i = 1”;
         break;
     case 2:
         echo “i = 2”;
         break;
    default:
         echo “no match”;
         break;
    }
                                 55
การควบคุมการทํางาน

•   การควบคุมการทํางานดวย while
•   การควบคุมการทํางานดวย do…while
•   การควบคุมการทํางานดวย for
•   การควบคุมการทํางานดวย foreach




                                      56
การควบคุมการทํางานดวย while


      While (เงือนไข)
                ่
      {
          ชุดคําสั่ง
      }




                               57
ตัวอยางการใชงานคําสั่ง while


    $i = 0;             while.php
    while ($i < 10)
    {
       echo “i = “.$i.”<br>”;
       $i++;
    }


                                    58
การควบคุมการทํางานดวย do…while


       do
       {
            ชุดคําสั่ง
       } While (เงือนไข)
                   ่




                                  59
ตัวอยางการใชงานคําสั่ง do…while

     $i = 0;              dowhile.php
     do
     {
          echo “i = “.$i.”<br>”;
          $i++;
        } while ($i < 10)


                                        60
การควบคุมการทํางานดวย for

for (คาเริ่มตน, เงือนไข, การเพิมหรือลดขอมูล)
                     ่           ่
{
     ชุดคําสั่ง
}




                                            61
ตัวอยางการใชงานคําสั่ง for

                         for.php
for ($i=0; $i<10; $i++)
{
     echo “i = “.$i.”<br>”;
}




                                   62
การควบคุมการทํางานดวย foreach


foreach (ตัวแปรชนิดอาเรย as ชื่อตัวแปร)
{
    ชุดคําสั่ง
}




                                           63
ตัวอยางการใชงานคําสั่ง foreach
                                  foreach.php
$arr = array(“orange", “mango", “banana");
foreach ($arr as $fruit)
{
     echo “Fruit name: " . $fruit . "<br>";
}




                                         64
สรุป (1)
• PHP (PHP Hypertext Preprocessor หรือProfessional
  Home Page) คือ ภาษาที่ใชในการเขียนโปรแกรมหรือ
  พัฒนาระบบงานบนระบบอินเทอรเน็ต โดยมีการทํางาน
  ในลักษณะ Server side สามารถใชงานไดบนเครื่อง
  ใหบริการที่มระบบปฏิบติการ Windows หรือ Unix
                ี        ั
• เครืองมือที่ใชในการพัฒนาโปรแกรมภาษา PHP คือ
      ่
  โปรแกรมแกไขขอความ, เว็บบราวเซอร, FTP/SFTP
  program, เครื่องใหบริการเว็บ
• ขั้นตอนในการเขียนโปรแกรมภาษา PHP คือ เขียน
  โปรแกรมโดยใชโปรแกรมแกไขขอความ        อัปโหลด
  เขาสูเครืองใหบริการ
             ่             ทดสอบและแกไข
                                                65
สรุป (2)
• โครงสรางของการเขียนภาษา PHP
  <?
      ชุดคําสั่งในภาษา PHP;
  ?>
• การเขียนคอมเมนตในภาษา PHP สามารถทําไดโดยใช
  <*…*>, //, #
• ชนิดของขอมูลในภาษา PHP แบงออกเปน 7 ประเภท
  คือ ขอมูลชนิดตรรกะ, ขอมูลชนิดตัวเลข, ขอมูลชนิด
  ตัวอักษร, ขอมูลชนิดอาเรย, ขอมูลชนิดออปเจกต,
  ขอมูลชนิด Null, ขอมูลชนิด Resource
                                                  66
สรุป (3)
• ประโยคเงื่อนไขใน PHP
  – IF…ELSE…
  – CASE
• ประโยคควบคุมการทํางาน
  –   WHILE
  –   DO…WHILE
  –   FOR
  –   FOREACH




                               67
68

Contenu connexe

En vedette

01 ความรู้เกี่ยวกับการ web programming
01 ความรู้เกี่ยวกับการ web programming01 ความรู้เกี่ยวกับการ web programming
01 ความรู้เกี่ยวกับการ web programmingsupatra178
 
คู่มือ อบรม Joomla! 3.x
คู่มือ อบรม Joomla! 3.xคู่มือ อบรม Joomla! 3.x
คู่มือ อบรม Joomla! 3.xPisan Chueachatchai
 
Data Science สำหรับผู้เริ่มต้น - WordCamp Bangkok 2017
Data Science สำหรับผู้เริ่มต้น - WordCamp Bangkok 2017Data Science สำหรับผู้เริ่มต้น - WordCamp Bangkok 2017
Data Science สำหรับผู้เริ่มต้น - WordCamp Bangkok 2017woratana
 
18 De Diciembre Bocetos
18 De Diciembre Bocetos18 De Diciembre Bocetos
18 De Diciembre BocetosBloom
 
The Roles of Ambassador and Community in ORCID
The Roles of Ambassador and Community in ORCIDThe Roles of Ambassador and Community in ORCID
The Roles of Ambassador and Community in ORCIDKeita Bando
 
Benchmark
BenchmarkBenchmark
BenchmarkBloom
 
Donne Al Volante
Donne Al VolanteDonne Al Volante
Donne Al Volantemarkokr007
 
Introduction to Virtual Reality Technology for Cultural Preservation seminar
Introduction to Virtual Reality Technology for Cultural Preservation seminarIntroduction to Virtual Reality Technology for Cultural Preservation seminar
Introduction to Virtual Reality Technology for Cultural Preservation seminarRachabodin Suwannakanthi
 
7. Social 2.0 Pixelmedia Kevin Huang
7. Social 2.0   Pixelmedia   Kevin Huang7. Social 2.0   Pixelmedia   Kevin Huang
7. Social 2.0 Pixelmedia Kevin HuangHKAIM
 
Pixer.us
Pixer.usPixer.us
Pixer.usdboling
 
Invitation Autumn
Invitation AutumnInvitation Autumn
Invitation Autumnguestbf0dbb
 

En vedette (20)

Multimedia 1
Multimedia 1Multimedia 1
Multimedia 1
 
Web Programming
Web ProgrammingWeb Programming
Web Programming
 
01 ความรู้เกี่ยวกับการ web programming
01 ความรู้เกี่ยวกับการ web programming01 ความรู้เกี่ยวกับการ web programming
01 ความรู้เกี่ยวกับการ web programming
 
คู่มือ อบรม Joomla! 3.x
คู่มือ อบรม Joomla! 3.xคู่มือ อบรม Joomla! 3.x
คู่มือ อบรม Joomla! 3.x
 
Data Science สำหรับผู้เริ่มต้น - WordCamp Bangkok 2017
Data Science สำหรับผู้เริ่มต้น - WordCamp Bangkok 2017Data Science สำหรับผู้เริ่มต้น - WordCamp Bangkok 2017
Data Science สำหรับผู้เริ่มต้น - WordCamp Bangkok 2017
 
Online questionbank in php
Online questionbank in phpOnline questionbank in php
Online questionbank in php
 
Online Video Format Experiment
Online Video Format ExperimentOnline Video Format Experiment
Online Video Format Experiment
 
18 De Diciembre Bocetos
18 De Diciembre Bocetos18 De Diciembre Bocetos
18 De Diciembre Bocetos
 
Proyectosolidario.pptx
Proyectosolidario.pptxProyectosolidario.pptx
Proyectosolidario.pptx
 
The Roles of Ambassador and Community in ORCID
The Roles of Ambassador and Community in ORCIDThe Roles of Ambassador and Community in ORCID
The Roles of Ambassador and Community in ORCID
 
e-Museum of Wat Makutkasattriyaram
e-Museum of Wat Makutkasattriyarame-Museum of Wat Makutkasattriyaram
e-Museum of Wat Makutkasattriyaram
 
Benchmark
BenchmarkBenchmark
Benchmark
 
Introduction to Virtual Tour
Introduction to Virtual TourIntroduction to Virtual Tour
Introduction to Virtual Tour
 
Energia Nuclear
Energia NuclearEnergia Nuclear
Energia Nuclear
 
Donne Al Volante
Donne Al VolanteDonne Al Volante
Donne Al Volante
 
Introduction to Virtual Reality Technology for Cultural Preservation seminar
Introduction to Virtual Reality Technology for Cultural Preservation seminarIntroduction to Virtual Reality Technology for Cultural Preservation seminar
Introduction to Virtual Reality Technology for Cultural Preservation seminar
 
Personal Digital Archive Development
Personal Digital Archive DevelopmentPersonal Digital Archive Development
Personal Digital Archive Development
 
7. Social 2.0 Pixelmedia Kevin Huang
7. Social 2.0   Pixelmedia   Kevin Huang7. Social 2.0   Pixelmedia   Kevin Huang
7. Social 2.0 Pixelmedia Kevin Huang
 
Pixer.us
Pixer.usPixer.us
Pixer.us
 
Invitation Autumn
Invitation AutumnInvitation Autumn
Invitation Autumn
 

Similaire à Introduction to PHP programming

เริ่มต้นกับ PHP
เริ่มต้นกับ PHPเริ่มต้นกับ PHP
เริ่มต้นกับ PHPEKNARIN
 
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 05
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 05การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 05
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 05Jenchoke Tachagomain
 
OAI-PMH with Drupal + XAMPP Portable + PKP OHS
OAI-PMH with Drupal + XAMPP Portable + PKP OHSOAI-PMH with Drupal + XAMPP Portable + PKP OHS
OAI-PMH with Drupal + XAMPP Portable + PKP OHSBoonlert Aroonpiboon
 
งานครูปลาม์
งานครูปลาม์งานครูปลาม์
งานครูปลาม์0908067327
 
ใบงานที่5555
ใบงานที่5555ใบงานที่5555
ใบงานที่5555M'Mod Ta Noy
 
ใบงานที่5
ใบงานที่5ใบงานที่5
ใบงานที่5nichaphat22
 
ใบงานที่5555
ใบงานที่5555ใบงานที่5555
ใบงานที่5555M'Mod Ta Noy
 
การเขียนโปรแกรมบนเว็บ
การเขียนโปรแกรมบนเว็บการเขียนโปรแกรมบนเว็บ
การเขียนโปรแกรมบนเว็บKhon Kaen University
 
Red5 streaming
Red5 streamingRed5 streaming
Red5 streamingvorravan
 
(Php basic 1 [โหมดความเข้ากันได้])
(Php basic 1 [โหมดความเข้ากันได้])(Php basic 1 [โหมดความเข้ากันได้])
(Php basic 1 [โหมดความเข้ากันได้])krunoommr
 
นุ๊ก
นุ๊กนุ๊ก
นุ๊กsirinet
 
หมวย
หมวยหมวย
หมวยsirinet
 
ดรีม
ดรีมดรีม
ดรีมsirinet
 

Similaire à Introduction to PHP programming (20)

Php
PhpPhp
Php
 
Php basic
Php basicPhp basic
Php basic
 
เริ่มต้นกับ PHP
เริ่มต้นกับ PHPเริ่มต้นกับ PHP
เริ่มต้นกับ PHP
 
Ch19
Ch19Ch19
Ch19
 
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 05
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 05การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 05
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 05
 
Joomla CMS
Joomla CMSJoomla CMS
Joomla CMS
 
OAI-PMH with Drupal + XAMPP Portable + PKP OHS
OAI-PMH with Drupal + XAMPP Portable + PKP OHSOAI-PMH with Drupal + XAMPP Portable + PKP OHS
OAI-PMH with Drupal + XAMPP Portable + PKP OHS
 
งานครูปลาม์
งานครูปลาม์งานครูปลาม์
งานครูปลาม์
 
ใบงานที่5555
ใบงานที่5555ใบงานที่5555
ใบงานที่5555
 
ใบงานที่5
ใบงานที่5ใบงานที่5
ใบงานที่5
 
ใบงานที่5555
ใบงานที่5555ใบงานที่5555
ใบงานที่5555
 
PHP & Dreamweaver 1-3
PHP & Dreamweaver 1-3PHP & Dreamweaver 1-3
PHP & Dreamweaver 1-3
 
การเขียนโปรแกรมบนเว็บ
การเขียนโปรแกรมบนเว็บการเขียนโปรแกรมบนเว็บ
การเขียนโปรแกรมบนเว็บ
 
Red5 streaming
Red5 streamingRed5 streaming
Red5 streaming
 
(Php basic 1 [โหมดความเข้ากันได้])
(Php basic 1 [โหมดความเข้ากันได้])(Php basic 1 [โหมดความเข้ากันได้])
(Php basic 1 [โหมดความเข้ากันได้])
 
นุ๊ก
นุ๊กนุ๊ก
นุ๊ก
 
โบ
โบโบ
โบ
 
Best
BestBest
Best
 
หมวย
หมวยหมวย
หมวย
 
ดรีม
ดรีมดรีม
ดรีม
 

Plus de Rachabodin Suwannakanthi

ระบบการถ่ายทอด รับชม และระบบคลังวิดีโอภายในภายในองค์กร
ระบบการถ่ายทอด รับชม และระบบคลังวิดีโอภายในภายในองค์กรระบบการถ่ายทอด รับชม และระบบคลังวิดีโอภายในภายในองค์กร
ระบบการถ่ายทอด รับชม และระบบคลังวิดีโอภายในภายในองค์กรRachabodin Suwannakanthi
 
การผลิตสื่อวิดีโอระบบดิจิทัลเบื้องต้น (Basic Digital Video Production)
การผลิตสื่อวิดีโอระบบดิจิทัลเบื้องต้น (Basic Digital Video Production)การผลิตสื่อวิดีโอระบบดิจิทัลเบื้องต้น (Basic Digital Video Production)
การผลิตสื่อวิดีโอระบบดิจิทัลเบื้องต้น (Basic Digital Video Production)Rachabodin Suwannakanthi
 
Using copy.com website for uploading and sharing files
Using copy.com website for uploading and sharing filesUsing copy.com website for uploading and sharing files
Using copy.com website for uploading and sharing filesRachabodin Suwannakanthi
 
Using copy.com app for uploading and sharing files
Using copy.com app for uploading and sharing filesUsing copy.com app for uploading and sharing files
Using copy.com app for uploading and sharing filesRachabodin Suwannakanthi
 
การวางแผน การดำเนินงาน และเทคโนโลยีที่ใช้ในงานสารสนเทศดิจิทัล
การวางแผน การดำเนินงาน และเทคโนโลยีที่ใช้ในงานสารสนเทศดิจิทัลการวางแผน การดำเนินงาน และเทคโนโลยีที่ใช้ในงานสารสนเทศดิจิทัล
การวางแผน การดำเนินงาน และเทคโนโลยีที่ใช้ในงานสารสนเทศดิจิทัลRachabodin Suwannakanthi
 
พิพิธภัณฑ์เสมือน (Virtual Museum)
พิพิธภัณฑ์เสมือน (Virtual Museum)พิพิธภัณฑ์เสมือน (Virtual Museum)
พิพิธภัณฑ์เสมือน (Virtual Museum)Rachabodin Suwannakanthi
 
Images Digitization with Digital Photography
Images Digitization with Digital PhotographyImages Digitization with Digital Photography
Images Digitization with Digital PhotographyRachabodin Suwannakanthi
 
Creating Panoramic Images with Adobe Photoshop Lightroom and Adobe Photoshop
Creating Panoramic Images with Adobe Photoshop Lightroom and Adobe PhotoshopCreating Panoramic Images with Adobe Photoshop Lightroom and Adobe Photoshop
Creating Panoramic Images with Adobe Photoshop Lightroom and Adobe PhotoshopRachabodin Suwannakanthi
 
Creating HDR images with Photomatix and Lightroom
Creating HDR images with Photomatix and LightroomCreating HDR images with Photomatix and Lightroom
Creating HDR images with Photomatix and LightroomRachabodin Suwannakanthi
 
HDR Processing with Adobe Photoshop CS4 and Adobe photoshop Lightroom
HDR Processing with Adobe Photoshop CS4 and Adobe photoshop LightroomHDR Processing with Adobe Photoshop CS4 and Adobe photoshop Lightroom
HDR Processing with Adobe Photoshop CS4 and Adobe photoshop LightroomRachabodin Suwannakanthi
 
Introduction to Educational Media Production
Introduction to Educational Media ProductionIntroduction to Educational Media Production
Introduction to Educational Media ProductionRachabodin Suwannakanthi
 
Image Digitization with Digital Photography
Image Digitization with Digital PhotographyImage Digitization with Digital Photography
Image Digitization with Digital PhotographyRachabodin Suwannakanthi
 
Image Digitization with Scanning Technology
Image Digitization with Scanning TechnologyImage Digitization with Scanning Technology
Image Digitization with Scanning TechnologyRachabodin Suwannakanthi
 

Plus de Rachabodin Suwannakanthi (20)

ระบบการถ่ายทอด รับชม และระบบคลังวิดีโอภายในภายในองค์กร
ระบบการถ่ายทอด รับชม และระบบคลังวิดีโอภายในภายในองค์กรระบบการถ่ายทอด รับชม และระบบคลังวิดีโอภายในภายในองค์กร
ระบบการถ่ายทอด รับชม และระบบคลังวิดีโอภายในภายในองค์กร
 
การผลิตสื่อวิดีโอระบบดิจิทัลเบื้องต้น (Basic Digital Video Production)
การผลิตสื่อวิดีโอระบบดิจิทัลเบื้องต้น (Basic Digital Video Production)การผลิตสื่อวิดีโอระบบดิจิทัลเบื้องต้น (Basic Digital Video Production)
การผลิตสื่อวิดีโอระบบดิจิทัลเบื้องต้น (Basic Digital Video Production)
 
Using copy.com website for uploading and sharing files
Using copy.com website for uploading and sharing filesUsing copy.com website for uploading and sharing files
Using copy.com website for uploading and sharing files
 
Using copy.com app for uploading and sharing files
Using copy.com app for uploading and sharing filesUsing copy.com app for uploading and sharing files
Using copy.com app for uploading and sharing files
 
Introduction to Digital Imaging
Introduction to Digital ImagingIntroduction to Digital Imaging
Introduction to Digital Imaging
 
การวางแผน การดำเนินงาน และเทคโนโลยีที่ใช้ในงานสารสนเทศดิจิทัล
การวางแผน การดำเนินงาน และเทคโนโลยีที่ใช้ในงานสารสนเทศดิจิทัลการวางแผน การดำเนินงาน และเทคโนโลยีที่ใช้ในงานสารสนเทศดิจิทัล
การวางแผน การดำเนินงาน และเทคโนโลยีที่ใช้ในงานสารสนเทศดิจิทัล
 
พิพิธภัณฑ์เสมือน (Virtual Museum)
พิพิธภัณฑ์เสมือน (Virtual Museum)พิพิธภัณฑ์เสมือน (Virtual Museum)
พิพิธภัณฑ์เสมือน (Virtual Museum)
 
Archives and Museum in Digital Age
Archives and Museum in Digital AgeArchives and Museum in Digital Age
Archives and Museum in Digital Age
 
Camera RAW Workflow
Camera RAW WorkflowCamera RAW Workflow
Camera RAW Workflow
 
Images Digitization with Digital Photography
Images Digitization with Digital PhotographyImages Digitization with Digital Photography
Images Digitization with Digital Photography
 
Archives and Digital Archives
Archives and Digital ArchivesArchives and Digital Archives
Archives and Digital Archives
 
Creating Panoramic Images with Adobe Photoshop Lightroom and Adobe Photoshop
Creating Panoramic Images with Adobe Photoshop Lightroom and Adobe PhotoshopCreating Panoramic Images with Adobe Photoshop Lightroom and Adobe Photoshop
Creating Panoramic Images with Adobe Photoshop Lightroom and Adobe Photoshop
 
Creating HDR images with Photomatix and Lightroom
Creating HDR images with Photomatix and LightroomCreating HDR images with Photomatix and Lightroom
Creating HDR images with Photomatix and Lightroom
 
HDR Processing with Adobe Photoshop CS4 and Adobe photoshop Lightroom
HDR Processing with Adobe Photoshop CS4 and Adobe photoshop LightroomHDR Processing with Adobe Photoshop CS4 and Adobe photoshop Lightroom
HDR Processing with Adobe Photoshop CS4 and Adobe photoshop Lightroom
 
How to Create an Educational Media
How to Create an Educational MediaHow to Create an Educational Media
How to Create an Educational Media
 
Introduction to Educational Media Production
Introduction to Educational Media ProductionIntroduction to Educational Media Production
Introduction to Educational Media Production
 
Image Digitization with Digital Photography
Image Digitization with Digital PhotographyImage Digitization with Digital Photography
Image Digitization with Digital Photography
 
Image Digitization with Scanning Technology
Image Digitization with Scanning TechnologyImage Digitization with Scanning Technology
Image Digitization with Scanning Technology
 
Introduction to Images Digitization
Introduction to Images DigitizationIntroduction to Images Digitization
Introduction to Images Digitization
 
Digital Imaging Course Outline
Digital Imaging Course OutlineDigital Imaging Course Outline
Digital Imaging Course Outline
 

Introduction to PHP programming

  • 1. Web-based Applications by Open Source Tools 1
  • 2. หัวขอการฝกอบรม • วันที่ 1: PHP Fundamentals • วันที่ 2: Linux System Administration • วันที่ 3: PHP & MySQL • วันที่ 4: Workshop 2
  • 3. PHP Fundamental: กําหนดการสอน 9.00 น. – 10.30 น. • ความรูเบืองตนเกียวกับ PHP (Introduction to PHP)  ้ ่ • ชนิดของขอมูลและตัวแปร (Data type and variable) • การปฏิบติการใน PHP (Program operator) ั 10.45 น. – 12.15 น. • การทํางานตามเงือนไข (Conditional statement) ่ • การควบคุมการทํางาน (Flow control) 3
  • 4. ความรูเบื้องตนเกี่ยวกับ PHP • ทําไมตองเขียนโปรแกรมบนเว็บ? • PHP คืออะไร? • ทําไมตอง PHP? • PHP จากอดีตถึงปจจุบัน • การประยุกตใช PHP บนอินเทอรเน็ต • การเตรียมตัวกอนเขียนโปรแกรม PHP • ขั้นตอนในการเขียนโปรแกรม PHP • โครงสรางของโปรแกรมภาษา PHP • เริ่มตนเขียน PHP 4
  • 5. ทําไมตองเขียนโปรแกรมบนเว็บ? • แนวโนมของการนําเสนอขอมูลบนอินเทอรเน็ตมี ลักษณะ Interactive คือ มีกจกรรมทีทําใหผูเขา ิ ่ ชมมีสวนรวมกับเว็บไซตมากขึ้น เชน Guestbook, Message board, Forms, ฯลฯ • แนวโนมของการนําเสนอขอมูลบนอินเทอรเน็ตมี ลักษณะ Dynamic คือ มีการปรับปรุงขอมูลให ทันสมัยอยูเสมอโดยอัตโนมัติ • รวดเร็วและประหยัด 5
  • 6. PHP คืออะไร? • PHP ยอมาจากคําวา PHP Hypertext Preprocessor (Professional Home Page) • PHP คือ ภาษาที่ใชในการเขียนโปรแกรมหรือใชในการ พัฒนา Applications เพื่อใชในระบบอินเทอรเน็ต • การทํางานของ PHP นั้นจะเปนการทํางานบนเครื่อง ใหบริการ (Server side) ที่ใชระบบปฏิบัติการ Windows หรือระบบปฏิบัติการ Unix • สามารถประยุกตใชงาน PHP ในงานประมวลผลที่มี ลักษณะที่หลากหลาย เชน งานที่เกี่ยวของกับการ คํานวณ งานที่เกี่ยวของกับการประมวลผลขอความ หรือ งานที่เกี่ยวของกับการบริหารจัดการและเขาถึงขอมูลใน ระบบฐานขอมูล 6
  • 7. ทําไมตอง PHP? • งายตอการเรียนรูเนื่องจาก PHP ไดรับการ พัฒนาตอมาจากภาษา C และภาษา Perl • มีประสิทธิภาพสูง (เพียงพอตอการพัฒนา Applications บนอินเทอรเน็ต) • มีแหลงขอมูลใหศึกษา และพันธมิตรทีจะให ่ คําปรึกษาเวลาที่เกิดปญหา รวมทังมีตัวอยาง ้ และสคริปตสําเร็จรูปใหใชฟรีจํานวนมาก • เปนเครื่องมือทีสะดวกและสามารถพัฒนา ่ Applications บนอินเทอรเน็ตไดอยางรวดเร็ว 7
  • 8. PHP จากอดีตถึงปจจุบัน (1) • ป ค.ศ. 1995 - นาย Rasmus Lerdorf ไดพัฒนา เครืองมือจากชุดคําสั่งในภาษา Perl สําหรับการ ่ ตรวจสอบผูชมทีเขาชมหนาประวัติโดยยอบนเว็บ ่ (online resume) บนเว็บและเผยแพรในชื่อ Personal Home Page tools 8 Data from Appendix A. History of PHP and related projects (http://th2.php.net/history)
  • 9. PHP จากอดีตถึงปจจุบัน (2) • ตอมามีการพัฒนา PHP ใหมโดยใชภาษา C และเพิ่ม ความสามารถในเรื่องของการติดตอกับระบบฐานขอมูล การใชตวแปรที่มลกษณะคลายกับในภาษา Perl (Perl- ั ี ั like variables) และความสามารถเกี่ยวกับเรือง ่ แบบฟอรม และเผยแพรในชื่อ PHP/FI (Personal Home Page / Forms Interpreter) 9 Data from Appendix A. History of PHP and related projects (http://th2.php.net/history)
  • 10. PHP จากอดีตถึงปจจุบัน (3) • พฤศจิกายน ค.ศ. 1997 - PHP/FI ไดรับการพัฒนา ตอและเผยแพรเปน PHP/FI 2.0 ซึ่งมีการประมาณการ วามีผูนําภาษานี้ไปใชหลายพันคนทั่วโลก และมีเว็บไซต ที่ใชภาษานี้ประมาณ 50,000 เว็บไซต 10 Data from Appendix A. History of PHP and related projects (http://th2.php.net/history)
  • 11. PHP จากอดีตถึงปจจุบัน (4) • มิถุนายน ค.ศ. 1998 - นาย Andi Gutmans และนาย Zeev Suraski ไดทําการพัฒนาตอโดยเพิ่มฟงกชนใหมาก ั่ ขึ้นเพื่อรองรับการพัฒนาระบบงาน e-Commerce รวมทั้ง รองรับการติดตอกับระบบฐานขอมูล และคุณสมบัติในเรื่อง ของการโปรแกรมเชิงวัตถุ (Object Oriented Programming, OOP) และเผยแพรเปน PHP 3.0 Data from Appendix A. History of PHP and related projects (http://th2.php.net/history) 11
  • 12. PHP จากอดีตถึงปจจุบัน (5) • พฤษภาคม ค.ศ. 2000 - PHP ไดรับการพัฒนาตอ เพื่อใหสามารถรองรับการพัฒนาโปรแกรมทีซับซอน ่ โดยรวมเอาเทคโนโลยีทเรียกวา “Zend Engine” ไว ี่ และพัฒนาความสามารถในการทํางานบนโปรแกรม Web server ที่หลากหลายชนิดมากขึ้น และเผยแพร เปน PHP version 4.0 Data from Appendix A. History of PHP and related projects (http://th2.php.net/history) 12
  • 13. PHP จากอดีตถึงปจจุบัน (6) • กรกฎาคม ค.ศ. 2004 ไดมีการรวมเอา Zend Engine version 2.0 เขาไวใน PHP และเผยแพรเปน PHP version 5.0 ในปจจุบนั Data from Appendix A. History of PHP and related projects (http://th2.php.net/history) 13
  • 14. PHP จากอดีตถึงปจจุบัน (7) PHP: 21,466,638 Domains, 1,293,874 IP Addresses Data from Netcraft (http://news.netcraft.com/) 14
  • 15. PHP จากอดีตถึงปจจุบัน (8) Apache Module Report (July 1st, 2005) Module Count % PHP 5,082,557 46.46 Perl 1,335,652 12.21 Tomcat 5,578 0.05 Data from Security Space (http://www.securityspace.com/s_survey/data/man.200506/apachemods.html/) 15
  • 21. การเตรียมตัวกอนเขียนโปรแกรม PHP • ในการเขียนโปรแกรมดวย PHP จะตองเตรียม สวนประกอบดังตอไปนี้ คือ เครืองคอมพิวเตอรสาหรับการเขียนโปรแกรมที่มการ ่ ํ ี ติดตั้งโปรแกรมประมวลผลขอความ (Text editor) โปรแกรมสําหรับโอนยายขอมูลเขาสูเครื่องใหบริการ (FTP program) และโปรแกรมเว็บบราวเซอร (Web browser) เครืองคอมพิวเตอรใหบริการเว็บ (Web server) ที่ ่ สนับสนุนการเขียนโปรแกรมดวยภาษา php 21
  • 23. โครงสรางของโปรแกรมภาษา PHP (1) • การเขียนโปรแกรมภาษา PHP จะตองมี สวนประกอบดังตอไปนี้ 23
  • 24. โครงสรางของโปรแกรมภาษา PHP (2) • จุดเริ่มตนและสิ้นสุดของการเขียนโปรแกรมภาษา PHP สามารถใชสัญลักษณได 4 รูปแบบ คือ 1. SGML style*** <? ... ?> 2. XML style <?php ... ?> 3. JavaScript style <script language="php"> ... </script> 4. ASP style <% ... %> 24
  • 25. โครงสรางของโปรแกรมภาษา PHP (3) • ชุดคําสั่งในภาษา PHP ประกอบดวยคําสั่งยอยๆ ซึ่งแตละคําสั่งจะตองสิ้นสุดดวยเครื่องหมาย เซมิโคลอน (;) 25
  • 26. โครงสรางของโปรแกรมภาษา PHP (4) • การกําหนดสวนทีเปนคอมเมนต หรือสวนคําอธิบายที่ไม ่ ตองการใหเกิดการประมวลผลสามารถทําได 2 วิธี คือ 1. การกําหนดสวนคอมเมนตหลายๆ บรรทัดติดตอกัน /* คอมเมนตบรรทัดที่ 1 คอมเมนตบรรทัดที่ 2 . . คอมเมนตบรรทัดที่ N */ 2. การกําหนดสวนคอมเมนตบรรทัดเดียว ใชรูปแบบ // คอมเมนต หรือ #คอมเมนต 26
  • 27. เริ่มตนเขียน PHP (1) • เปดโปรแกรม Notepad โดยคลิกเมาสท่ปุม Start ๊ ี เลือก All Programs เลือก Accessories แลวเลือก รายการ Notepad • พิมพขอความตอไปนี้และบันทึกเปนไฟลชื่อ hello1.php <? echo “Hello World”; ?> • ใชโปรแกรม FTP ในการโอนยายไฟลเขาสู Server • ทดสอบการแสดงผลโดยใชโปรแกรม Web browser 27
  • 28. เริ่มตนเขียน PHP (2) • ใชโปรแกรม Notepad เพื่อแกไขไฟล hello1.php • พิมพขอความตอไปนี้และบันทึกในไฟล hello2.php <? echo “Hello World”; // This is my first PHP program ?> 28
  • 29. เริ่มตนเขียน PHP (3) • ใชโปรแกรม Notepad เพื่อแกไขไฟล hello2.php • พิมพขอความตอไปนี้และบันทึกในไฟล hello3.php <HTML> <HEAD> <title>Hello World</title> </HEAD> <BODY> <center><b> <? echo “Hello World”; ?> </b></center> </BODY> </HTML> 29
  • 30. เริ่มตนเขียน PHP (4) • ใชโปรแกรม Notepad เพื่อแกไขไฟล hello3.php • พิมพขอความตอไปนี้และบันทึกในไฟล hello4.php <HTML> <HEAD> <title>Hello World</title> </HEAD> <BODY> <center><b> <? echo “<font color=red>Hello World</font>”; ?> </b></center> </BODY> </HTML> 30
  • 31. เริ่มตนเขียน PHP (5) • ใชโปรแกรม Notepad เพื่อแกไขไฟล hello4.php • พิมพขอความตอไปนี้และบันทึกในไฟล hello5.php <HTML> <HEAD> <title>Hello World</title> </HEAD> <BODY> <center><b> <? echo “<font color=“#00FF00”>Hello World</font>”; ?> </b></center> </BODY> </HTML> 31
  • 32. ชนิดของขอมูลและตัวแปร • คาคงที่ • ตัวอยางการใชงานคาคงที่ • ตัวแปรใน PHP • ตัวอยางการใชงานตัวแปรใน PHP • ตัวแปรระบบ • ชนิดของขอมูลใน PHP 32
  • 33. คาคงที่ • คาคงที่ (Constant) คือ การกําหนดคาแทนตัวเลขหรือ ชุดของตัวอักษร ซึ่งการกําหนดคาคงที่จะใชรูปแบบ define(“ชื่อคาคงที่”, คาที่กําหนดให) • ตัวอยางเชน – define(“organization”, “NECTEC”); – define(“RED”, “#FF0000”); – define(“PI”, 3.14); – define(“NL”, “<br>n”); 33
  • 34. ตัวอยางการใชงานคาคงที่ <HTML> constant.php <HEAD> <title>Hello World</title> </HEAD> <BODY> <center><b> <? define(“organization”, “NECTEC”); echo “Organization:” . organization; ?> </b></center> </BODY> </HTML> 34
  • 35. ตัวแปรใน PHP • ตัวแปรใน PHP จะมีรูปแบบเปน $ชื่อตัวแปร • ตัวอักษรพิมพใหญหรือเล็กมีผลกับชื่อตัวแปร (Case-sensitive) เชน $Data ไมเทากับ $data • การตั้งชื่อตัวแปรจะตองขึ้นตนดวยตัวอักษร ภาษาอังกฤษหรือเครื่องหมาย Underscore (_) ตามดวยตัวเลข ตัวอักษร หรือ Underscore 35
  • 36. ตัวอยางการใชงานตัวแปรใน PHP <HTML> variable1.php <HEAD> <title>Hello World</title> </HEAD> <BODY> <center><b> <? $person = “Jon”; $Person = “Dang”; echo “Hello $person and $Person”; ?> </b></center> </BODY> </HTML> 36
  • 37. ตัวแปรระบบ • ในการเขียนโปรแกรม PHP นั้น เราสามารถ เรียกใชงานตัวแปรของระบบที่มอยูได ดังตัวอยาง ี <HTML> variable2.php <HEAD> <title>Hello World</title> </HEAD> <BODY> <center><b> <? echo “You are using $HTTP_USER_AGENT”; ?> </b></center> </BODY> </HTML> 37
  • 38. การรับคาจากแบบฟอรม • โดยทั่วไปแลว การเขียน โปรแกรมภาษา PHP ใช ใ น ก า ร รั บ ข อ มู ล จ า ก แบบฟอร ม ที่ ส ร า งขึ้ น มา ด ว ย ภ า ษ า HTML เ พื่ อ นํ า ม า ป ร ะ ม ว ล ผ ล แ ล ะ สงผลลัพธกลับไปสูผใช ู 38
  • 40. สวนประกอบของการรับคาจากแบบฟอรม 1. แบบฟอรมสําหรับกรอกขอมูล (form.html) ทําหนาที่ในการรับขอมูลจากผูใชผานทาง โปรแกรมเว็บบราวเซอร 2. สคริปตรับคาและประมวลผล (getform.php) ทําหนาที่ในการรับขอมูลที่สงจากแบบฟอรม และนําขอมูลนั้นไปประมวลผลตามคําสั่งที่ กําหนดไว และสงผลลัพธกลับมาที่บราวเซอร ของผูใช 40
  • 41. ตัวอยางรับคาจากแบบฟอรม <HTML> form.html <HEAD> <title>FORM</title> </HEAD> <BODY> <form method="post" action="getform.php"> Name: <input type="text" name="myname"> <input type="submit" value="Send data"> </form> </BODY> <HTML> 41
  • 42. ตัวอยางรับคาจากแบบฟอรม <? getform.php $name = $_POST["myname"]; echo "Hello $name"; ?> 42
  • 43. ชนิดของขอมูลใน PHP • ชนิดของขอมูลในภาษา PHP แบงออกเปน 7 ประเภท ดังตอไปนี้ – ขอมูลชนิดตรรกะ – ขอมูลชนิดตัวเลข – ขอมูลชนิดตัวอักษร – ขอมูลชนิดอาเรย – ขอมูลชนิดออปเจกต – ขอมูลชนิด Null – ขอมูลชนิด Resource 43
  • 44. ชนิดของขอมูลใน PHP • ขอมูลชนิดตรรกะ (Boolean) คือ ชนิดของขอมูล ที่มีเปนคาเปนไปไดแค 2 คาเทานั้น คือ true (จริง) หรือ false (เท็จ) ซึ่งขอมูลชนิดนี้นยมใช ิ ในลักษณะของการกําหนดเงื่อนไขของการทํางาน ในโปรแกรม • ขอมูลชนิดตัวเลข (Numeric) คือ ชนิดของขอมูล ที่เปนตัวเลข สามารถนําไปคํานวณทาง คณิตศาสตรได ขอมูลชนิดนี้สามารถแบงไดเปน – ตัวเลขจํานวนเต็ม (Integer) เชน 5, 0, -20 – ตัวเลขจํานวนจริง (Floating Point & Real Number) เชน 2.5, -0.025, 1.0 44
  • 45. ชนิดของขอมูลใน PHP • ขอมูลชนิดตัวอักษร (String) คือ ชนิดของขอมูลที่ ประกอบดวยตัวเลข ตัวอักษร และอักขระพิเศษตางๆ ที่ไมสามารถนําไปคํานวณได ซึ่งการอางถึงขอมูล ชนิดตัวอักษรนี้จะตองอางถึงขอมูลภายใต เครื่องหมาย “…” • ขอมูลชนิดอาเรย (Array) เปนชนิดของขอมูลที่ สามารถเก็บคาไดหลายคา ซึ่งขอมูลชนิดนี้เปนที่ นิยมใชงานกันอยางแพรหลาย และมีใชในทุกภาษา เขียนโปรแกรม 45
  • 46. ชนิดของขอมูลใน PHP • ขอมูลชนิดออบเจ็ค (Object) ขอมูลชนิดนี้ใชในการ เขียนโปรแกรมเชิงวัตถุ (Object-oriented Programming, OOP) • ขอมูลชนิด NULL คือ ชนิดของขอมูลที่แทน ความหมายวาไมมคา ี • ขอมูลชนิด Resource คือ ชนิดของขอมูลที่ใชเก็บ คาอางอิงของทรัพยากรตางๆ ในระบบ ซึ่งจะมีการ เก็บคาโดยอัตโนมัติ 46
  • 51. การทํางานตามเงื่อนไข • การใชงานประโยค if • ตัวอยางการใชงานประโยค if • การใชงานประโยค switch 51
  • 52. การใชงานประโยค if if (เงื่อนไข 1) { ชุดคําสั่ง 1 } elseif (เงื่อนไข 2) { ชุดคําสั่ง 2 } else { ชุดคําสั่ง 3 } 52
  • 53. ตัวอยางการใชงานประโยค if if ($i == 1) if.php { echo “i = 1”; } elseif ($i == 2) { echo “i = 2”; } else { echo “no match”; } 53
  • 54. การใชงานประโยค switch switch (ตัวแปร) { case คาตัวแปร 1: ชุดคําสั่ง 1 case คาตัวแปร 2: ชุดคําสั่ง 2 case คาตัวแปร 3: ชุดคําสั่ง 3 default: ชุดคําสั่ง 4 } 54
  • 55. ตัวอยางการใชงานประโยค switch switch ($i) switch.php { case 1: echo “i = 1”; break; case 2: echo “i = 2”; break; default: echo “no match”; break; } 55
  • 56. การควบคุมการทํางาน • การควบคุมการทํางานดวย while • การควบคุมการทํางานดวย do…while • การควบคุมการทํางานดวย for • การควบคุมการทํางานดวย foreach 56
  • 57. การควบคุมการทํางานดวย while While (เงือนไข) ่ { ชุดคําสั่ง } 57
  • 58. ตัวอยางการใชงานคําสั่ง while $i = 0; while.php while ($i < 10) { echo “i = “.$i.”<br>”; $i++; } 58
  • 59. การควบคุมการทํางานดวย do…while do { ชุดคําสั่ง } While (เงือนไข) ่ 59
  • 60. ตัวอยางการใชงานคําสั่ง do…while $i = 0; dowhile.php do { echo “i = “.$i.”<br>”; $i++; } while ($i < 10) 60
  • 61. การควบคุมการทํางานดวย for for (คาเริ่มตน, เงือนไข, การเพิมหรือลดขอมูล) ่ ่ { ชุดคําสั่ง } 61
  • 62. ตัวอยางการใชงานคําสั่ง for for.php for ($i=0; $i<10; $i++) { echo “i = “.$i.”<br>”; } 62
  • 64. ตัวอยางการใชงานคําสั่ง foreach foreach.php $arr = array(“orange", “mango", “banana"); foreach ($arr as $fruit) { echo “Fruit name: " . $fruit . "<br>"; } 64
  • 65. สรุป (1) • PHP (PHP Hypertext Preprocessor หรือProfessional Home Page) คือ ภาษาที่ใชในการเขียนโปรแกรมหรือ พัฒนาระบบงานบนระบบอินเทอรเน็ต โดยมีการทํางาน ในลักษณะ Server side สามารถใชงานไดบนเครื่อง ใหบริการที่มระบบปฏิบติการ Windows หรือ Unix ี ั • เครืองมือที่ใชในการพัฒนาโปรแกรมภาษา PHP คือ ่ โปรแกรมแกไขขอความ, เว็บบราวเซอร, FTP/SFTP program, เครื่องใหบริการเว็บ • ขั้นตอนในการเขียนโปรแกรมภาษา PHP คือ เขียน โปรแกรมโดยใชโปรแกรมแกไขขอความ อัปโหลด เขาสูเครืองใหบริการ ่ ทดสอบและแกไข 65
  • 66. สรุป (2) • โครงสรางของการเขียนภาษา PHP <? ชุดคําสั่งในภาษา PHP; ?> • การเขียนคอมเมนตในภาษา PHP สามารถทําไดโดยใช <*…*>, //, # • ชนิดของขอมูลในภาษา PHP แบงออกเปน 7 ประเภท คือ ขอมูลชนิดตรรกะ, ขอมูลชนิดตัวเลข, ขอมูลชนิด ตัวอักษร, ขอมูลชนิดอาเรย, ขอมูลชนิดออปเจกต, ขอมูลชนิด Null, ขอมูลชนิด Resource 66
  • 67. สรุป (3) • ประโยคเงื่อนไขใน PHP – IF…ELSE… – CASE • ประโยคควบคุมการทํางาน – WHILE – DO…WHILE – FOR – FOREACH 67
  • 68. 68