วันอังคารที่ 25 พฤศจิกายน พ.ศ. 2557

ตัวอย่างภาษา PHP

ตัวอย่างภาษา PHP
ภาษาพีเอชพี จะเป็นส่วนประกอบภายในเว็บเพจ โดยคำสั่งจะปรากฏระหว่าง                                     
 <?php ...  ?> เช่น

<?php
    echo "Hello, Thai!";
?>

<?php
    echo "Hello Thai.";
?>

<script language="php">
    echo "Hello Thai.";
</script>

โครงสร้าง ควบคุมของ PHP จะมีความคล้ายคลึงกับ C/C++ มาก เช่น if , for , switch และมีบางส่วนที่คล้าย Perl สามารถกำหนดตัวแปรโดยไม่ต้อง กำหนดชนิดของตัวแปรว่าจะเป็น int, float, boolean เป็นต้น
<?php
    for ($i = 0; $i < 10; $i++){
       echo "Test".$i;
    }
?>

ตัวอย่างการเขียน php แบบ oop
<?php
    class MyClass
    {
        private $var = 'Hello Thai!';
        public function getHello()
        {
            return $this->var;
        }
    }
    $obj = new MyClass();
    echo $obj->getHello();
?>


ที่มา : http://th.wikipedia.org

ข้อดีของ PHP

  ข้อดีของ PHP
1. เป็นของฟรี ว่ากันว่าสุดยอดของ Web Server ในฝันของผู้ใช้ที่รู้จักคุณค่าของเงินก็คือ ระบบปฏิบัติการ Linux, โปรแกรมเว็บ Apache, โปรแกรมฐานข้อมูล MySQL, และ Server Site Script อย่าง PHP เพราะทุกอย่างฟรีหมด

2. มีความเร็ว อะไรที่เกิดมาทีหลังย่อมได้เปรียบ คำพูดนี้ดูเหมือนจะเป็นจริงเสมอ เพราะ PHP นำเอาข้อดีของทั้ง C, Perl และ Java มาผนวกเข้าด้วยกัน ทำให้ทำงานได้รวดเร็วกว่า CGI หรือแม้แต่ ASP และมีประสิทธิภาพ โดยเฉพาะเมื่อใช้กับ Apache Server เพราะไม่ต้องใช้โปรแกรมจากภายนอก

 3. Open Source การพัฒนาของโปรแกรมไม่ได้ยึดติดกับบุคคลหรือกลุ่มคนเล็กๆ แต่เปิดโอกาสให้โปรแกรมเมอร์ทั่วไปได้เข้ามาช่วยกันพัฒนา ทำให้มีคนใช้งานจำนวนมาก และพัฒนาได้เร็วขึ้น

4. Crossable Platform ใช้ได้กับหลายๆระบบปฏิบัติการไม่ว่าบน Windows,Unix, Linux หรืออื่นๆ โดยแทบจะไม่ต้องเปลี่ยนแปลงโค้ดคำสั่งเลย

5. เรียนรู้ง่าย เนื่องจาก PHP ฝังเข้าไปใน HTML และใช้โครงสร้างและไวยากรณ์ภาษาง่ายๆ

6. ใช้ร่วมกับ XML ได้ทันที

7. ใช้ร่วมกับ Database ได้เกือบทุกยี่ห้อ ดังกล่าวไปแล้วข้างต้น

8. ใช้กับระบบแฟ้มข้อมูลได้

9. ใช้ร่วมกับข้อมูลตัวอักษรได้อย่างมีประสิทธิภาพ

10. ใช้กับโครงสร้างข้อมูล ได้ทั้งแบบ Scalar, Array, Associative array

11. ใช้กับการประมวลผลภาพได้

ประโยชน์ของphp

 ประโยชน์ของphp
     ในปัจจุบัน Web Site ต่างๆ ได้มีการพัฒนาในด้านต่างๆ อย่างรวดเร็ว เช่น เรื่องของความสวยงามและแปลกใหม่ การบริการข่าวสารข้อมูลที่ทันสมัย เป็นสื่อกลางในการติดต่อ และสิ่งหนึ่งที่กำลังได้รับความนิยม เป็นอย่างมากซึ่ง ถือได้ว่าเป็นการปฏิวัติรูปแบบการขายของก็คือ E-commerce ซึ่งเจ้าของสินค้าต่างๆ ไม่จำเป็นต้องมีร้านค้าจริงและไม่จำเป็นต้องจ้างคนขายของอีกต่อไป ร้านค้าและตัวสินค้านั้น จะไปปรากฏอยู่บน Web Site แทน และการซื้อขายก็เกิดขึ้นบนโลกของ Internet แล้ว PHP ช่วยเราให้เป็นเจ้าของร้านบน Internet ได้อย่างไร PHP เป็นภาษาสคริปต์ที่มีความสามารถสูง สำหรับการพัฒนา Web Site และความสามารถที่โดดเด่นอีกประการหนึ่งของ PHP คือ database enabled web page ทำให้เอกสารของ HTML สามารถที่จะเชื่อมต่อกับระบบฐานข้อมูล (database) ได้อย่างมีประสิทธิภาพและรวดเร็ว จึงทำให้ความต้องการในเรื่องการจัดรายการสินค้าและรับรายการสั่งของตลอดจนการจัดเก็บ ข้อมูลต่างๆ ที่สำคัญผ่านทาง Internet เป็นไปได้อย่างง่ายดาย

ความเป็นมาของphp

      ความเป็นมาของphp
       PHP ถือกำเนิดในปี 1994 เดิมทีเป็นเพียงโปรแกรมเล็กๆ ที่นาย Rasmus Lerdorf นำมาใช้งานสำหรับทำ เว็บเพจ resume ของเขา โดยตอนแรกใช้ภาษา Perl แต่กลับพบว่ามันทำงานค่อนข้างช้า จึงได้ลงมือเขียนขึ้นใหม่เองด้วยไวยากรณ์ภาษา C และให้ชื่อว่า "Personal Home Page Tools" ขณะเดียวกันก็ได้พัฒนาส่วนติดต่อกับฐานข้อมูลที่เรียกว่า Form Intepreter (FI) เมื่อเขามีของดีอยู่กับตัวใครๆที่มาเยี่ยมเว็บไซต์ของเขาต่างก็ขอสำเนาโปรแกรมดังกล่าว เพื่อเอากลับไปใช้งานเองบ้าง จนมีคนรู้จักกันดี นี่อาจจะนับเป็น PHP รุ่นที่ 1 ก็น่าจะได้ หลังจากใช้งานไประยะหนึ่งผู้ใช้ก็ร้องขอ นาย Rasmus Lerdorf ให้ขยายความสามารถของโปรแกรมให้มากขึ้น จนใกล้เคียงกับการใช้ CGI (Commom Gateway Interface)ใน Web Server กลายเป็น PHP/FI รุ่นที่ 2

       เมื่อ PHP เป็นที่นิยมของชนหมู่มาก นาย Rasmus Lerdorf คนเดียวก็ดูเหมือนจะพัฒนาคนเดียวไม่ไหว โชคดีที่ได้ผู้ร่วมงานที่ก้าวเข้ามา ช่วยปรับปรุง เปลี่ยนแปลงกันแบบขนานใหญ่ คือ นาย Zeev Suraski กับ Andi Gutmans ชาวอิสราเอลที่ Lerdorf ถึงกับเอ่ยปากชมว่าเป็นสุดยอดจริงๆ ทั้งสองคนเอา PHP ของ Lerdorf มาเขียนใหม่หมดเลยด้วย C++ และได้อีกสามหนุ่มคือ Stig Bakken,Shane Caraveo และJim Winstrad มาเป็นทีมงานที่สร้าง PHP3 โดยนาย Stig Bakken รับผิดชอบเกี่ยวกับความสามารถในการสนับสนุน Oracle, Shane Caraveo ดูแล PHP บน Windows 9x/NT และ Jim Winstrad คอยตรวจสอบข้อบกพร่องต่างๆอีกครั้ง

       ตอนนี้ Zeev Suraski กับ Andi Gutmans ปัจจุบันร่วมกันพัฒนาต่อเป็น PHP4 โดยตั้งชื่อว่า Zend ซึ่งเป้าหมายคือชิงความเป็นเลิศเหนือ ASP โดยที่ Zend จะเป็น complie script เลย ไม่ใช่ embed script interprete ซึ่งจะทำให้ run ได้เร็วกว่า จะเหมือนกับ concept ของ advance ASP ที่ใช้ VB6 สร้างคือทำเป็น dll ให้หมด ตอนนี้ Zend ได้แจก beta ให้ tester ของเขาแล้ว แต่บอกว่า it would obviously be free for use and open source และดูเหมือนจะ support activex

       Zend ก็คือ Ze(ev)+(A)nd(i Gutmans) ชาวอิสราเอลสองคนที่มาฉุดให้ PHP4 วิ่งฉิว 

phpคืออะไร

phpคืออะไร
ภาษาพีเอชพี ในชื่อภาษาอังกฤษว่า PHP ซึ่งใช้เป็นคำย่อแบบกล่าวซ้ำ จากคำว่า PHP Hypertext Preprocessor หรือชื่อเดิม Personal Home Page

      พีเอชพี (PHP) คือ ภาษาคอมพิวเตอร์ในลักษณะเซิร์ฟเวอร์-ไซด์ สคริปต์ โดยลิขสิทธิ์อยู่ในลักษณะโอเพนซอร์ส ภาษาพีเอชพีใช้สำหรับจัดทำเว็บไซต์ และแสดงผลออกมาในรูปแบบ HTML โดยมีรากฐานโครงสร้างคำสั่งมาจากภาษา ภาษาซี ภาษาจาวา และ ภาษาเพิร์ล ซึ่ง ภาษาพีเอชพี นั้นง่ายต่อการเรียนรู้ ซึ่งเป้าหมายหลักของภาษานี้ คือให้นักพัฒนาเว็บไซต์สามารถเขียน เว็บเพจ ที่มีความตอบโต้ได้อย่างรวดเร็ว

      พีเอชพีรุ่นล่าสุด คือ PHP 5.4.0 ส่วนรุ่นพัฒนาคือ PHP 6.0.0-dev

      PHP เป็น Server Side Script ที่มีการทำงานที่ฝั่งของเครื่องคอมพิวเตอร์ Server ซึ่งรูปแบบในการเขียนคำสั่งการทำงานนั้นจะมีลักษณะคล้ายกับภาษา Perl หรือภาษา C และสามารถที่จะใช้ร่วมกับภาษา HTML ได้อย่างมีประสิทธิภาพ ซึ่งจะทำให้รูปแบบเว็บเพจมีความสามารถเพิ่มขึ้นในด้านของการเขียนโปรแกรม ในการสร้างเว็บจะใช้ Script อยู่ 2 แบบด้วยกันคือ
       - Server-Side Script เป็นลักษณะของภาษาที่ทำงานบนเครื่อง Server เช่น CGI, ASP
       - Client-Side Script เป็นลักษณะของภาษาที่ทำงานบนเครื่องผู้ใช้เช่น JavaScript, VBScript

     ความสามารถของ PHP นั้น สามารถที่จะทำงานเกี่ยวกับ Dynamic Web ได้ทุกรูปแบบ เหมือนกับ CGI หรือ ASP ไม่ว่าจะเป็นการดูแลจัดการระบบฐานข้อมูล ระบบรักษาความปลอดภัยของเว็บเพจ การรับ - ส่ง Cookies เป็นต้น
      แต่ที่เป็นคุณสมบัติเด่นของ PHP ก็น่าจะเป็นการติดต่อกับโปรแกรมจัดการระบบฐานข้อมูล ที่มีอยู่มากมาย ซึ่งฐานข้อมูลที่ PHP สนับสนุนมีดังนี้

Adabas D        InterBase Solid         Microsoft Access
dBase             mSQL                     Sybase
Empress          MySQL                   Velocis
FilePro            Oracle                    Unix dbm
Informix          PostgreSQL              SQL Server

วันพุธที่ 5 พฤศจิกายน พ.ศ. 2557

รูปแบบของระบบฐานข้อมูล

รูปแบบของระบบฐานข้อมูล
รูปแบบของระบบฐานข้อมูล มีอยู่ด้วยกัน 3 ประเภท คือ
1. ฐานข้อมูลเชิงสัมพันธ์ (Relational Database)
เป็นการเก็บข้อมูลในรูปแบบที่เป็นตาราง (Table) หรือเรียกว่า รีเลชั่น (Relation) มีลักษณะเป็น 2 มิติ คือเป็นแถว (row) และเป็นคอลัมน์ (column) การเชื่อมโยงข้อมูลระหว่างตาราง จะเชื่อมโยงโดยใช้แอททริบิวต์ (attribute) หรือคอลัมน์ที่เหมือนกันทั้งสองตารางเป็นตัวเชื่อมโยงข้อมูล ฐานข้อมูลเชิงสัมพันธ์นี้จะเป็นรูปแบบของฐานข้อมูลที่นิยมใช้ในปัจจุบัน ดังตัวอย่าง
พนักงาน
รหัสพนักงาน
ชื่อพนักงาน
ที่อยู่
เงินเดือน
รหัสแผนก
12501535
12534568
12503452
12356892
15689730
นายสมพงศ์
นายมนตรี
นายเอก
นายบรรทัด
นายราชัน
กรุงเทพ
นครปฐม
กรุงเทพ
นนทบุรี
สมุทรปราการ
12000
12500
13500
11500
12000
VO
VN
VO
VD
VA
รูปแสดงตารางพนักงาน
2. ฐานข้อมูลแบบเครือข่าย (Network Database)
ฐานข้อมูลแบบเครือข่ายจะเป็นการรวมระเบียนต่าง ๆ และความสัมพันธ์ระหว่างระเบียนแต่จะต่างกับฐานข้อมูลเชิงสัมพันธ์ คือ ในฐานข้อมูลเชิงสัมพันธ์จะแฝงความสัมพันธ์เอาไว้ โดยระเบียนที่มีความสัมพันธ์กันจะต้องมีค่าของข้อมูลในแอททริบิวต์ใดแอททริบิวต์หนึ่งเหมือนกัน แต่ฐานข้อมูลแบบเครือข่าย จะแสดงความสัมพันธ์อย่างชัดเจน ตัวอย่างเช่น
3. ฐานข้อมูลแบบลำดับชั้น (Hierarchical Database)
ฐานข้อมูลแบบลำดับชั้น เป็นโครงสร้างที่จัดเก็บข้อมูลในลักษณะความสัมพันธ์แบบพ่อ-ลูก (Parent-Child Relationship Type : PCR Type) หรือเป็นโครงสร้างรูปแบบต้นไม้ (Tree) ข้อมูลที่จัดเก็บในที่นี้ คือ ระเบียน (Record) ซึ่งประกอบด้วยค่าของเขตข้อมูล (Field) ของเอนทิตี้หนึ่ง ๆ

ฐานข้อมูลแบบลำดับชั้นนี้คล้ายคลึงกับฐานข้อมูลแบบเครือข่าย แต่ต่างกันที่ฐานข้อมูลแบบลำดับชั้น มีกฎเพิ่มขึ้นมาอีกหนึ่งประการ คือ ในแต่ละกรอบจะมีลูกศรวิ่งเข้าหาได้ไม่เกิน 1 หัวลูกศร

ความสำคัญของการประมวลผลแบบระบบฐานข้อมูล

ความสำคัญของการประมวลผลแบบระบบฐานข้อมูล
จากการจัดเก็บข้อมูลรวมเป็นฐานข้อมูลจะก่อให้เกิดประโยชน์ดังนี้
1. สามารถลดความซ้ำซ้อนของข้อมูลได้
การเก็บข้อมูลชนิดเดียวกันไว้หลาย ๆ ที่ ทำให้เกิดความซ้ำซ้อน (Redundancy) ดังนั้นการนำข้อมูลมารวมเก็บไว้ในฐานข้อมูล จะชาวยลดปัญหาการเกิดความซ้ำซ้อนของข้อมูลได้ โดยระบบจัดการฐานข้อมูล (Database Management System : DBMS) จะช่วยควบคุมความซ้ำซ้อนได้ เนื่องจากระบบจัดการฐานข้อมูลจะทราบได้ตลอดเวลาว่ามีข้อมูลซ้ำซ้อนกันอยู่ที่ใดบ้าง
2. หลีกเลี่ยงความขัดแย้งของข้อมูลได้
หากมีการเก็บข้อมูลชนิดเดียวกันไว้หลาย ๆ ที่และมีการปรับปรุงข้อมูลเดียวกันนี้ แต่ปรับปรุงไม่ครบทุกที่ที่มีข้อมูลเก็บอยู่ก็จะทำให้เกิดปัญหาข้อมูลชนิดเดียวกัน อาจมีค่าไม่เหมือนกันในแต่ละที่ที่เก็บข้อมูลอยู่ จึงก่อใให้เกิดความขัดแย้งของข้อมูลขึ้น (Inconsistency)
3. สามารถใช้ข้อมูลร่วมกันได้
ฐานข้อมูลจะเป็นการจัดเก็บข้อมูลรวมไว้ด้วยกัน ดังนั้นหากผู้ใช้ต้องการใช้ข้อมูลในฐานข้อมูลที่มาจากแฟ้มข้อมูลต่างๆ ก็จะทำได้โดยง่าย
4. สามารถรักษาความถูกต้องเชื่อถือได้ของข้อมูล
บางครั้งพบว่าการจัดเก็บข้อมูลในฐานข้อมูลอาจมีข้อผิดพลาดเกิดขึ้น เช่น จากการที่ผู้ป้อนข้อมูลป้อนข้อมูลผิดพลาดคือป้อนจากตัวเลขหนึ่งไปเป็นอีกตัวเลขหนึ่ง โดยเฉพาะกรณีมีผู้ใช้หลายคนต้องใช้ข้อมูลจากฐานข้อมูลร่วมกัน หากผู้ใช้คนใดคนหนึ่งแก้ไขข้อมูลผิดพลาดก็ทำให้ผู้อื่นได้รับผลกระทบตามไปด้วย ในระบบจัดการฐานข้อมูล (DBMS) จะสามารถใส่กฎเกณฑ์เพื่อควบคุมความผิดพลาดที่เกดขึ้น
5. สามารถกำหนดความป็นมาตรฐานเดียวกันของข้อมูลได้
การเก็บข้อมูลร่วมกันไว้ในฐานข้อมูลจะทำให้สามารถกำหนดมาตรฐานของข้อมูลได้รวมทั้งมาตรฐานต่าง ๆ ในการจัดเก็บข้อมูลให้เป็นไปในลักษณะเดียวกันได้ เช่นการกำหนดรูปแบบการเขียนวันที่ ในลักษณะ วัน/เดือน/ปี หรือ ปี/เดือน/วัน ทั้งนี้จะมีผู้ที่คอยบริหารฐานข้อมูลที่เราเรียกว่า ผู้บริหารฐานข้อมูล (Database Administrator : DBA) เป็นผู้กำหนดมาตรฐานต่างๆ
6. สามารถกำหนดระบบความปลอดภัยของข้อมูลได้
ระบบความปลอดภัยในที่นี้ เป็นการป้องกันไม่ให้ผู้ใช้ที่ไม่มีสิทธิมาใช้ หรือมาเห็นข้อมูลบางอย่างในระบบ ผู้บริหารฐานข้อมูลจะสามารถกำหนดระดับการเรียกใช้ข้อมูลของผู้ใช้แต่ละคนได้ตามความเหมาะสม
7. เกิดความเป็นอิสระของข้อมูล

ในระบบฐานข้อมูลจะมีตัวจัดการฐานข้อมูลที่ทำหน้าที่เป็นตัวเชื่อมโยงกับฐานข้อมูล โปรแกรมต่าง ๆ อาจไม่จำเป็นต้องมีโครงสร้างข้อมูลทุกครั้ง ดังนั้นการแก้ไขข้อมูลบางครั้ง จึงอาจกระทำเฉพาะกับโปรแกรมที่เรียกใช้ข้อมูลที่เปลี่ยนแปลงเท่านั้น ส่วนโปรแกรมที่ไม่ได้เรียกใช้ข้อมูลดังกล่าว ก็จะเป็นอิสระจากการเปลี่ยนแปลง

นิยามและคำศัพท์พื้นฐานเกี่ยวกับระบบฐานข้อมูล

นิยามและคำศัพท์พื้นฐานเกี่ยวกับระบบฐานข้อมูล
บิท (Bit) หมายถึง หน่วยของข้อมูลที่มีขนาดเล็กที่สุด
ไบท์(Byte) หมายถึง หน่วยของข้อมูลที่กิดจากการนำบิทมารวมกันเป็นตัวอักขระ (Character)
เขตข้อมูล(Field) หมายถึง หน่วยของข้อมูลที่ประกอบขึ้นจากตัวอักขระตั้งแต่หนึ่งตัวขึ้นไปมารวมกันแล้วได้ความหมายของสิ่งใดสิ่งหนึ่ง เช่น ชื่อ ที่อยู่ เป็นต้น
ระเบียน(Record) หมายถึง หน่วยของข้อมูลที่เกิดจากการนเอาเขตข้อมูลหลาย ๆ เขตข้อมูลมารวมกัน เพื่อเกิดเป็นข้อมูลเรื่องใดเรื่องหนึ่ง เช่น ข้อมูลของนักศึกษา 1 ระเบียน (1 คน) จะประกอบด้วย
รหัสประจำตัวนักศึกษา 1 เขตข้อมูล
ชื่อนักศึกษา 1 เขตข้อมูล
ที่อยู่ 1 เขตข้อมูล

แฟ้มข้อมูล(File) หมายถึงหน่วยของข้อมูลที่เกิดจากการนำข้อมูลหลาย ๆ ระเบียนที่เป็นเรื่องเดียวกันมารวมกัน เช่น แฟ้มข้อมูลนักศึกษา แฟ้มข้อมูลลูกค้า แฟ้มข้อมูลพนักงาน

ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล

ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
ระบบฐานข้อมูล (Database System) หมายถึง โครงสร้างสารสนเทศที่ประกอบด้วยรายละเอียดของข้อมูลที่เกี่ยวข้องกันที่จะนำมาใช้ในระบบต่าง ๆ ร่วมกัน

ระบบฐานข้อมูล จึงนับว่าเป็นการจัดเก็บข้อมูลอย่างเป็นระบบ ซึ่งผู้ใช้สามารถจัดการกับข้อมูลได้ในลักษณะต่าง ๆ ทั้งการเพิ่ม การแก้ไข การลบ ตลอดจนการเรียกดูข้อมูล ซึ่งส่วนใหญ่จะเป็นการประยุกต์นำเอาระบบคอมพิวเตอร์เข้ามาช่วยในการจัดการฐานข้อมูล