การใช้งาน Appserve

Download Report

Transcript การใช้งาน Appserve

อัพเดตล่ าสุ ด : 26/07/2551
PHP และ
การใช้งาน Appserve
โดย อ. นัฐพงศ์ ส่ งเนียม
http://www.siam2dev.com
ดาวน์โหลด Appserv
• ได้ที่เว็บไซต์ http://www.appservnetwork.com/
ทดสอบการทางานของ Appserv
1. เปิ ดโปรแกรม Internet Explorer ขึ้นมา
2. ในช่อง Address ให้พิมพ์
http://localhost แล้วกด Enter บนคียบ์ อร์ด
ทดสอบการทางานของ PHP
• ให้พิมพ์คาสัง่ ด้วย Text
<?php
Editor ใด ๆ ก็ได้ ในที่น้ ี ให้ echo “Hello World!”;
ใช้ Notepad
• จากนั้นพิมพ์คาสัง่ ข้างล่าง นี้
?>
• แล้ว Save ตั้งชื่อ
Test1.php
• เก็บไว้ที่
C:\Appserv\www\T
est1.php
ทดสอบการทางานของ PHP (ต่อ)
1. เปิ ดโปรแกรม Internet Explorer ขึ้นมา
2. ในช่อง Address ให้พิมพ์
http://localhost/test1.php แล้วกด
Enter บนคียบ์ อร์ด
เนื้อหา
•
•
•
•
ประวัติของ PHP
PHP คืออะไร
ทาไม PHP จึงเป็ นที่นิยม
โครงสร้างของ PHP
• Language Reference
• ข้อแตกต่างของ PHP กับ ASP
ประวัติ PHP
•
•
•
•
PHP ย่อมาจาก Professional Home Page
เริ่ มสร้างขึ้นในกลางปี 1994
ผูพ้ ฒั นาคือ นาย Rasmus Lerdorf
ปัจจุบนั PHP มีการพัฒนามาเป็ นรุ่ นที่ 4
– Version แรกเป็ นที่รู้จกั ในชื่อว่า Personal Homepage
Tools ในปี 1994 ถึงกลางปี 1995
– Version ที่สองชื่อว่า PHP/FI ในกลางปี 1995
– Version 3 เป็ นที่รู้จกั กันในชื่อว่า PHP3 เริ่ มใช้กลางปี 1997
– ปัจจุบนั Version 4 ถ ้าเป็ น commercial ใช้ชื่อว่า Zend
(Zend ย่อมาจาก Ze(ev) + (A)nd(I Gutmans)
รายชื่อของนักพัฒนาภาษา PHP









Zeev Suraski, Israel
Andi Gutmans, Israel
Shane Caraveo, Florida USA
Stig Bakken, Norway
Andrey Zmievski, Nebraska USA
Sascha Schumann, Dortmund, Germany
Thies C. Arntzen, Hamburg, Germany
Jim Winstead, Los Angeles, USA
Rasmus Lerdorf, North Carolina, USA
PHP คืออะไร
• เป็ นภาษา Script สาหรับแสดงเว็บเพจอย่างหนึ่ ง จัดอยูใ่ นกลุ่ม Server
Side Script เช่นเดียวกับ ASP
• การทางานจะแทรกอยูใ่ นเอกสาร HTML
• สามารถ Compile ได้ท้ งั บนระบบปฏิบตั ิการ UNIX, Windows
NT/2000/XP, Windows 9x
• ความสามารถในการทางานสูง โดยเฉพาะกับการติดต่อกับ Database เช่น
MySQL, msSQL, Sybase และ PostgreSQL เป็ นต้น
สิ่ งที่ PHP สามารถทาได้้
• CGI
• Database-enable web page
• Database
Adabas D
InterBase Solid
DBase
mSQL
Sybase
Empress MySQL
Velocis
FilePro Oracle
Unix dbm
Informix PostgreSQL
ทาไม PHP จึงเป็ นที่นิยม
•
•
•
•
•
•
•
•
•
•
•
•
•
Open source
No cost implementation – PHP เป็ นของฟรี
Server side
Crossable Platform
HTML embedded
Simple language
Efficiency
XML parsing
Server side
Database module
File I/O
Text processing
Image processing
การทางานของ PHP
•
•
•
•
•
ทางานบน Server
ทางานร่ วมกับเอกสาร HTML
สามารถแทรกคาสั่ง PHP ได้ตามที่ตอ้ งการลงในเอกสาร HTML
ทางานในส่ วนที่เป็ นคาสั่งของ PHP ก่อน เมื่อมีการเรี ยกใช้เอกสารนั้น ๆ
แสดงผลออกทาง Web Browsers
โครงสร้างภาษา PHP
• แบบที่ 1 XML style
<?php คาสั่งภาษา PHP ?>
ตัวอย่าง
<?php
echo “Hello World ! <br>”;
echo “I am PHP”;
?>
โครงสร้างภาษา PHP (ต่อ)
• แบบที่ 2 SGML style
<? คาสั่งภาษา PHP ?>
ตัวอย่าง
<?
echo “Hello World ! <br>”;
echo “I am PHP”;
?>
โครงสร้างภาษา PHP (ต่อ)
• แบบที่ 3 Java Language style
<script language=“php”>
คาสัง่ ภาษา PHP
</script>
ตัวอย่าง
<script language=“php”>
echo “Hello World”;
</script>
โครงสร้างภาษา PHP (ต่อ)
• แบบที่ 4 ASP Style
<% คาสัง่ ภาษา PHP %>
ตัวอย่าง
<%
echo “Hello World ! <br>”;
echo “I am PHP”;
%>
โครงสร้างของภาษา PHP (ต่อ)
• แบบที่เป็ นที่นิยม คือ แบบที่ 1
• ผลที่ได้เมื่อผ่านการทางานแล้วจะได้ผลดังนี้
Hello World !
I am PHP
• ข้อสังเกต
- รู ปแบบคล้ายกับภาษา C และ Perl
- ใช้เครื่ องหมาย ( ; ) คัน่ ระหว่างคาสัง่ แต่ละคาสั่ง
• File ที่ได้ตอ้ ง save เป็ นนามสกุล php (หรื อ php3)
Language Reference
• Comments
- เหมือนกับการ Comment ของภาษา C, C++ และ Unix
• ตัวอย่าง
<?php
echo “Hello !”; // การ comment แบบ 1 บรรทัด
/* แบบหลายบรรทัดตั้งแต่ 2 บรรทัดขึ้นไป */
echo “World”; # การ comment แบบ shell-style
?>
http://localhost/Dogspa/Test2.php
ชื่อ Folder
คาสัง่ echo
• เป็ นคาสั่งสาหรับแสดงผลลัพธ์ไปที่โปรแกรม browser
• รู ปแบบ
echo ข้อความ1 หรื อตัวแปร1, ข้อความ2 หรื อตัวแปร2, ข้อความ3 หรื อตัว
แปร3, …
• ข้อความ เขียนภายใต้เครื่ องหมาย double quote (“ “) หรื อ single
quote (‘ ‘)
• ตัวแปรของภาษา PHP จะขึ้นต้นด้วยเครื่ องหมาย $ เสมอ คล้ายกับภาษา Perl
ตัวอย่างที่ 1 Test3.php
<HTML>
<HEAD>
<TITLE>Example –1</TITLE>
</HEAD>
<BODY>
<?php phpinfo() ; ?>
</BODY>
</HTML>
Test3.php
้
การเรียกใชงาน
• เปิ ดโปรแกรม browser
• พิมพ์ url
• http://localhost/demo/intro.php
C:\AppServ\www\DogSpa
ตัวอย่างที่ 2 (Test4.php)
<HTML>
<HEAD>
<TITLE> Example –2</TITLE>
</HEAD>
<BODY>
Today’s Date: <? print(Date("l F d, Y")); ?>
</BODY>
</HTML>
Today's Date: Thursday March 10, 2003
การประกาศใช้ PHP
• การที่ตัวแปลคาสั่ ง PHP จะทราบว่ าส่ วนใดจะเป็ นส่ วนที่จะให้ ทางานใน
ลักษณะของ PHP นั้น ก็จะต้ องมีการระบุวงเล็บคาสั่ งของ PHP ก่อน
• วงเล็บสาหรับ PHP สามารถใช้ งานได้ หลายรูปแบบคือ
– <?php ?>
– <? ?> เป็ นการใช้ วงเล็บแบบสั้ น แต่ อาจจะมีการซ้าซ้ อนกัน ถ้ าหากต้ องการใช้
XML ร่ วมด้ วย เพราะวงเล็บแบบนีเ้ ป็ นการใช้ ของ XML เช่ นกัน
– <% %> เป็ นรู ปแบบวงเล็บของภาษา ASP ของ Microsoft
– <SCRIPT LANGUAGE=”PHP”>
</SCRIPT> ใช้ ใน
ลักษณะของ Script เหมือนกับ Java Script
หลักการเขียนโปรแกรม php
 พืน้ ฐานเหมือนกับภาษา C
 ใช้ พนื้ ทีว่ ่ างได้ โดยการเว้ นบรรทัดในขณะที่ยังเขียนคาสั่ งต่ างๆ ไม่ จบประโยค
สามารถทาได้
 Case-Sensitive บางกรณี คือ ตัวเล็ก-ตัวใหญ่ มีความแตกต่ างกันในการอ้ างอิง
ตัวแปร แต่ ถ้าเป็ นการใช้ คาสั่ ง เช่ น if ก็จะเหมือนกับ IF หรือ function
อย่ างเช่ น empty() อาจจะเขียนเป็ น Empty() ก็ได้
 ปิ ดคาสั่ งทุกประโยคด้ วย ;
การเขียนให้ขอ้ มูลแสดงออกหน้าจอ
ใช้คาสัง่
echo
print
เช่น echo “สุ พตั รา กาญจโนภาส”;
หรื อ
print “สุ พตั รา กาญจโนภาส”;
การเชื่อมต่อข้อความหรื อตัวแปร
. (จุด)
, (ลุกน้ า)
เช่น
echo “สุ พตั รา ”. “กาญจโนภาส”;
หรื อ
echo “สุ พตั รา ”, “กาญจโนภาส”;
คาตอบ สุ พตั รา กาญจโนภาส
การ comment
โน้ตไว้ดูเองจะไม่แสดงผลออกหน้าจอ
- ในกรณี บรรทัดเดียว
// ข้อความ
เช่น
//คาสัง่ echo มีไว้สาหรับการแสดงผลลัพธ์ออกหน้าจอ
-ในกรณี หลายบรรทัด
/*ข้อความบรรทัด1
ข้อความบรรทัด2
ข้อความบรรทัด3 */
/* คาสั่ง echo
มีไว้สาหรับการแสดง
ผลลัพธ์ออกหน้าจอ */
การขึ้นบรรทัดใหม่
“<br>” (Tag br )
เช่น
echo “นัฐพงศ์<br>ส่ งเนียม”;
echo “นัฐพงศ์”,“<br>”.“ส่ งเนียม”;
Echo “นัฐพงศ์<br>”;
Echo “ส่ งเนียม”’
คาตอบ นัฐพงศ์
ส่ งเนียม
<?php
// Test5.php
echo "ชื่อ นัฐพงศ์ <br>" . "ส่ งเนียม";
echo "<br> รหัส 497530";
?>
การกาหนดรู ปแบบตัวอักษร
<font>……..</font> (Tag font)
เช่น
สี
ขนาด
echo “<font color=‘red’ size=20
face=‘JasmineUPC’>สุ พตั รา</font>”;
แบบ
คาตอบ
สุพตั รา
<?php
// Test5.php
echo "<font color='red'
size='30'
face='AngsanaUPC'>
ชื่อ นัฐพงศ์<br>"
. "ส่ งเนียม</font>";
echo "<br> รหัส 497530";
?>
การกาหนดรู ปแบบตัวอักษร
ตัวหนา <b>………….</b>
ตัวเอียง <i>…………..</i>
ตัวขีดเส้นใต้ <u>………….</u>
เช่น
echo “<b><i><u>สุ พตั รา</u></i></b>”;
คาตอบ สุพตั รา
คาสัง่
ให้นกั ศึกษาใช้คาสัง่ php เขียนข้อความออกมาดังต่อไปนี้
ชื่อ
นามสกุล
รหัสนักศึกษา
สาขาวิชา
ภาควิชา
ที่อยู่
เบอร์โทร
หมายเหตุ (กาหนดรูปแบบและสี สันตามต้ องการ)
<?php
// Test6.php
echo "ชื่อ นัฐพงศ์ นามสกุล : ส่ งเนียม<br>";
echo "รหัส 407530<br>";
echo "สาขา Ph.D(IT)<br>";
echo "ที่อยู่ : กรุ งเทพ<br>";
echo "มือถือ : 0896698280<br>";
?>
การตั้งชื่อตัวแปร
จะต้ องมีเครื่องหมาย $ (dollar sign) ขึน้ นาหน้ าชื่อของตัวแปรทุก
ครั้ง ซึ่งถ้ าเห็นเครื่องหมายนี้ แสดงว่ ามีการอ้างอิงถึงตัวแปร โดยทีช่ ื่อของ
ตัวแปรนั้น จะต้ องนาหน้ าด้ วยตัวอักษร และตัวเล็กตัวใหญ่ ถอื ว่ ามีความ
แตกต่ างกัน เช่ น
$name
$num
$address
$productname
การใส่ ค่าให้กบั ตัวแปร
ชื่อตัวแปร=“ค่าที่กาหนด”
เช่ น
$name=“สุ พตั รา กาญจโนภาส”;
$num=1 หรื อ
$num=“1”;
Test8.php
<?php
// Test8.php
$num =20;
echo "$num";
?>
<?php
// Test9.php
$a = 5;
$b = 10;
$sum = $a + $b - $b*$a;
echo "$sum";
?>
การเขียนค่าตัวแปรออกหน้าจอ
echo “ชื่อตัวแปร”;
เช่น
echo “$name”;
echo “$num”;
คาสัง่
ให้นกั ศึกษานา รหัสนักศึกษา ชื่อ นามสกุล ชื่อเล่น ที่อยู่ เบอร์โทร เก็บใส่ ตวั แปร
ดังต่อไปนี้
$code,$name,$surname,$nickname,$address,
$tel
จากนั้นให้นาค่าจากตัวแปรเหล่านี้แสดงออกมาบนหน้าจอ
หมายเหตุ ให้ กาหนดรูปแบตัวอักษรตามต้ องการ
ตัวแปรแบบ array
ตัวแปรแบบ array เป็ นตัวแปรแบบชุดที่มีค่าอยูภ่ ายในหลายค่า
$ชื่อตัวแปร=array(“ค่า1”,“ค่า2”,“ค่า3”,………);
เช่น
$day=array(“อา.”,“จ.”,“อ.”,“พ.”,“พฤ.”,“ศ.”,“ส.”);
$sport=array(“ฟุตบอล”,“บาสเก็ตบอล”,“วอลเลย์บอล”);
Test10.php
<?php
// Test10.php
$day =array("อา.","จ.","อ.","พ.","พฤ.","
ศ.");
echo "$day[2]";
?>
Test11.php
<?php
// Test11.php
$month =array(“ม.ค.",“ก.พ.",“มี.ค.",“เม.ย.","
พ.ค.",“มิ.ย.");
echo "$month[2]";
?>
การเรี ยกใช้ตวั แปร array
$ชื่อตัวแปร=array(“ค่า1”,“ค่า2”,“ค่า3”,………);
Index เป็ น 0
Index เป็ น 1
เรี ยกโดย $ชื่อตัวแปร[index];
โดยค่าตัวแรกจะมีค่า index เป็ น 0
คาตัวที่ 2 จะมีค่า index เป็ น 1
ตัวต่อไปก็นบั ต่อไปเรื่ อยๆ
Index เป็ น 2
ตัวอย่าง
$day=array(“อา.”,“จ.”,“อ.”,“พ.”,“พฤ.”,“ศ.”,“ส.”);
$day[0] จะมีค่าเท่ากับ อา.
$day[1] จะมีค่าเท่ากับ จ.
$day[2] จะมีค่าเท่ากับ อ.
$day[3] จะมีค่าเท่ากับ พ.
$day[4] จะมีค่าเท่ากับ พฤ.
$day[5] จะมีค่าเท่ากับ ศ.
$day[6] จะมีค่าเท่ากับ ส.
คาสัง่
ให้นกั ศึกษานา รหัสนักศึกษา ชื่อ นามสกุล ชื่อเล่น ชั้นปี สาขาวิชา ภาควิชา คณะ)
ใส่ ตวั แปร array ชื่อ $student จากนั้นให้นาค่าจากตัวแปรนี้แสดงออกมา
บนหน้าจอดังนี้
รหัส
ชื่อ
นามสกุล
ชื่อเล่น
ชั้นปี
สาขาวิชา
ภาควิชา
คณะ
หมายเหตุ กาหนดรู ปแบบตามต้องการ
ตัวแปรคงที่
define(ชื่อตัวแปรไม่ตอ้ งมี$นาหน้า,“ค่า”);
เช่น
define(pi, “3.1413”)
แสดงบนหน้าจอ
echo ชื่อตัวแปร; (ไม่ตอ้ งใส่ เครื่ องหมายคาพูด)
เช่น
echo pi;
Test12.php
<?php
// Test12.php
define(pi,"3.1413");
$r=10;
$carea = pi*$r*$r;
echo $carea;
?>
<?php
// Test13.php
define(VAT,"0.07");
$total=10000;
$NET = $total + $total*VAT;
echo "เงินทั้งหมด : $total<br>";
echo " บวกภาษี 7%: " . $total*VAT;
echo "<br>เงินสุ ทธิ : " . $NET;
?>
ตัวแปร Session
• เริ่ มต้น
session_start(); //ตรวจสอบว่ามี session id หรื อยัง
• การใช้งาน session
$_SESSION(‘ชื่อแปร’)=ค่าที่นาไปเก็บเป็ น session
• การใช้งานจะต้องอ้างถึง $_session(‘ตัวแปร’) เสมอ
เช่น echo $_SESSION(‘ตัวแปร’)
การทาให้ตวั แปรตัวหนึ่งเป็ นตัวแปร session
• เริ่ ม
กี่ตวั ก็ได้ comma (,) ไปเรื่ อยๆ
session_start();
• การกาหนดให้ตวั แปรเป็ นตัวแปรแบบ session
session_register(‘ชื่อตัวแปร’);
ตัวเดียวกันหมด เพียงแต่ตอน
• ใส่ ค่าให้ตวั แปรปกติ
register ไม่ตอ้ งมี $
$ชื่อตัวแปร=ค่า;
นาหน้า
• การนาไปใช้  อ้างถึงชื่อตัวแปรเท่านั้น  $ชื่อตัวแปร
• การยกเลิกตัวแปร session บางตัว กี่ตวั ก็ได้ comma (,) ไปเรื่ อยๆ
session_unregister(‘ชื่อตัวแปร’);
• การทาลายทิ้ง
session_destroy();
วันที่
$ชื่อตัวแปรเก็บวันที่=getdate(); //ได้วนั ที่ปัจจุบนั
$ตัวแปรวัน= $ชื่อตัวแปรเก็บวันที่[“mday”];
$ตัวแปรเดือน= $ชื่อตัวแปรเก็บวันที่[“month”];
$ตัวแปรปี = $ชื่อตัวแปรเก็บวันที่[“year”];
$ตัวแปรวันที่= $ตัวแปรวัน.”/”. $ตัวแปรเดือน.”/” $ตัวแปรปี ;
การเขียน PHP ร่ วมกับ Html
• ภาษา php สาารถแทรกในเอกสาร Html โดยจะอยูภ่ ายใต้
เครื่ องหมาย <? .................. ?> โดยสามารถแทรกไว้ในจุดใดก็ได้
เช่น
<html>
<head>
<title>Test My Homepage</title>
</head>
<body>
คาสัง่ Html <? Echo "ส่ วนของ php"; ?> คาสัง่ Html
</body>
</html>
คาสั่ งพืน้ ฐาน
• Echo รู ปแบบคาสัง่ Echo ข้อความที่ 1,ข้อความที่ 2, <? echo"Hello
PHP Programming"; ?>
• Print รู ปแบบของคาสัง่ Print("ข้อความที่ตอ้ งการแสดง");
คาสัง่ Print จะทางานเหมือนกับคาสัง่ Echo แต่คาสัง่ Print นั้นสามารถ
แสดงค่าได้ครั้งหนึ่งค่าเท่านั้น
• Printf รู ปแบบคาสัง่ (Printf(String format,…);
คาสัง่ Printf นั้นสามารถที่จะกาหนดรู ปแบบการแสดงข้อมูลได้ดว้ ย
$salary=3900.45;
printf("เงินเดือน %.2f ",$salary);
%d เลขฐานสิ บ , c รหัส ASCII , %f ทศนิยม , %s ตัวอักษร String
คาอธิบายหรือ Comment ใน php
• # คาอธิบาย หรื อ อื่น ๆ(บันทัดเดียวกัน)
• // คาอธิบายหรื อ อื่น ๆ (บันทัดเดียวกัน)
• /*…… (บัดทัดเดียวหรื อมากกว่า)
……
……*/
เช่น <?
คาสัง่ php # คาอธิบาย หรื อ อื่น ๆ
คาสัง่ php // คาอธิบาย หรื อ อื่น ๆ
คาสัง่ php /* คาอธิบาย หรื อ อื่น ๆ
คาอธิบาย หรื อ อื่น ๆ
คาอธิบาย */
/* คาสัง่ php
คาสัง่ php */
?>
สรุ ป สิ่ งที่อยูห่ ลังหรื อภายในเครื่ องหมายดังกล่าวจะเป็ นอะไรก็ได้ที่เราไม่ตอ้ งการให้โปรแกรมนามา
ประมวลผล
ตัวแปร ใน PHP
• ตัวแปรทัว่ ไป
• ตัวแปรแบบ Global
$a = 10;
$b = 20;
global $a, $b;
• ตัวแปรแบบ array 1 ,2 ,3 มิติ
$a[0]
$a[0][0]
$a[0][0][0]
Operator และ การเปรี ยบเทียบทางคณิ ต
• Arithmetic Operators โอเปอเรเตอร์ทางคณิ ตศาสตร์
+ , - , * , / หาร , % หารเอาเศษ
• String Operators เป็ น โอเปอเรเตอร์ ที่ใช้กบั ข้อความซึ่ งจะใช้ (.) เพียง
โอเปอเรเตอร์เดียว
• Assignment Operators โอเปอเรเตอร์ กาหนดค่า
= , += , -= , *= ,/=
• Logical Operators โอเปอเรเตอร์เชิงตรรกศาสตร์
and และ, or หรื อ, xor หรื อ, ! ไม่, && และ, || หรื อ
• Comparison Operators โอเปอเรเตอร์เชิงเปรี ยบเทียบ
= , != ,> , < , <= , >=
เงื่อนไขสายงานเพื่อการตัดสิ นใจ
• If(…)…else(…)….
if(เงื่อนไข){ การกระทา }else { การกระทา }
• If(…)…..else if(….)……
if(เงื่อนไข){ การกระทา }else if(เงื่อนไข){ การกระทา }
• Switch Case
switch(ตัวแปรตรวจสอบ){
case “ค่าตรวจสอบ” : {การทางานถ้าเป็ นจริ ง} break; หยุด
case “ค่าตรวจสอบ” : {การทางานถ้าเป็ นจริ ง} break; หยุด
default : {การทางานถ้าไม่ตรงตามเงื่อนไขเลย}
}
ลูปและการทาซ้ า
• For จะทางานจนเงื่อนไขนั้นเป็ นเท็จ ถึงจะกระโดดออกจากลูป
For ($a=1;$a<=5;$a++)
{
การทางาน
}
• While จะพิจารณาเงื่อนไขแล้วค่ อยทา ถ้ าเงื่อนไขเป็ นจริงจะทา ถ้ าเท็จ
จะกระโดดออกจากลูปทันที
$a=1;
while ($a<=5)
{
การทางาน
$a++;
}
ลูปและการทาซ้ า
• Do while ทาก่อนแล้วค่ อยพิจารณาเงื่อนไข ถ้ าเงื่อนไขเป็ นเท็จ จะ
กระโดดออกจากลูปทันที
$a=1;
do
{
การทางาน
$a++;
}while($a<=5)
• Break
• Continue
คาสั่ งหยุดกลับไปเริ่มใหม่ ภายในลูป
เป็ นคาสั่ งกระโดการทางานรอบใหม่
การส่ งข้อมูลด้วย Html Form
<form name="form1" method="post" action="sample2.php">
<input type="text" name="name">
<input type="text" name="surname">
<input type="submit" value="Submit">
<input type="reset"value="Reset">
</form>
เมือ่ มีการกดปุ่ ม submit ข้ อมูลทีร่ ับจาก text ก็จะส่ งไปยังเป้าหมายทีก่ าหนด
ไว้ ตรง action ซึ่งการรับค่ าต่ าง ๆ ในลักษณะนีจ้ ะมีการรับค่ าในรู ปแบบต่ าง ๆ ดังนี้
1. Button submit
2. Button reset
3. Text Filed
4. Textarea Filed
5. Check Box
6. Radio Button
7. List Menu
8 .Hidden Filed
ทาความเข้าใจข้อแตกต่างระหว่าง Post กับ Get
• Post การส่ งค่ าจาก form
<form action="Sample2.php" method="post">
<input type="text" name="login">
<input type="text" name="password">
</form>
• GET การรับค่ าเข้ ามาสู่ form โดยจะได้ ค่าตรงตามตัวแปรที่ส่งมาและ
ทีต่ ้ังไว้
<form action="Sample2.php" method="get">
<input type="text" name="login">
<input type="text" name="password">
<form>
การส่ งข้อมูลโดยผ่าน Querystring
• Querystring คือ อะไร ?
Querystring คือข้อมูลที่ Browser ส่ งต่อท้าย URL ของ Page ที่ตอ้ งการใช้ไปยัง Web
Server โดยข้อมูลจะประกอบไปด้วยชื่อของข้อมูลและค่าของข้อมูล
เช่น www.cmru.ac.th/ques.php?a=1&b=2&... (มามากกว่านี้ได้โดยใช้ & คัน่ )
อธิบาย คือ การส่ งค่า a ,b และ ... ไปยังไฟล์ ques.php
<?
$a=1;
$b=2;
?>
<a href=“ques.php?a=<?=$a>&b=<?=b?>”>ส่ งค่า</a>
การสร้างและใช้งานฟังก์ชนั่
• Function คือ การบวนการทางานต่ าง ๆ ที่
เราสร้ างขึน้ โดยสามารถเรียกมาทางานได้
ตามต้ องการ ส่ วนใหญ่ จะเป็ นงานทีซ่ ้า ๆ
• การสร้ าง Function
function aaa()
{
การทางาน
}
หรือ
function bbb($a,$b)
{
การทางาน
return $c;
}
•
การใช้งาน Function
aaa(); # function ธรรมดา
หรื อ
bbb($x,$y);
# function ที่มีการส่ งค่า
ฟังก์ชนั่ Include,Require,Redirect
• Include เป็ นการเรี ยกใช้งานไฟล์อื่น เพื่อทางานร่ วมกับ ไฟล์ที่กาลังทางานอยู่
รู ปแบบ
Include("files-name"); Include_once("files-name");
• Redirect เป็ นการย้ายการทางานจาก ไฟล์หนึ่ง ไปยังอีกไฟล์หนึ่ง นิยมนามาใช้
ในระะรักษาความปลอดภัย และ การกระโดดไปยังไฟล์ต่าง ๆ โดยเรี ยกใช้ฟังก์ชนั่
headder รู ปแบบ
header("location : [files-name/URL]");
• Require เป็ นการเรี ยกใช้งานไฟล์อื่น เหมือนกับ Include แต่ไม่สามารถเรี ยกใช้งาน
ไฟล์ที่ทางานเป็ นแบบ Loop ได้เหมือน Include
รู ปแบบ
require("files-name"); ,
require_once(" files-name ");
ฟังก์ช้ นั ทางคณิ ตศาสตร์
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Max(2,5,9,1,5,3,4);
=9
หาค่าสู งสุ ด
Min(2,5,9,1,5,3,4);
=1
หาค่าต่าสุ ด
Rand();
สร้างตัวเลขสุ่ ม
number_format()กาหนดรู ปแบบการแสดงผลตัวเลขหลักพันโดยมีเครื่ องหมาย (,) ขั้น
OctDec()แปลงเลขฐานแปดเป็ นฐานสิ บ
pi()หาค่าคงที่ของ
pi pow()หาค่าของเลขยกกาลัง
rad2deg()แปลงค่าเรเดียนเป็ นองศา
Decbin()แปลงเลขฐานสิ บเป็ นฐานสอง
DecHex()แปลงเลขฐานสิ บเป็ นฐานสิ บหก
DecOct()แปลงเลขฐานสิ บเป็ นฐานแปด
deg2rad()มุมองศาเป็ นเรเดียน
Exp()หาค่ายกกาลังของ e
getrandmax()ค่าสู งสุ ดที่ได้จากการสุ่ ม
HexDec()แปลงเลขฐานสิ บหกเป้ นฐานสิ บ
Log()หาค่า log ฐานธรรมชาติ
Log10()หาค่า log ฐาน 10
Cos()หาค่าของ Cosine
BinDec()แปลงเลขฐานสองเป็ นฐานสิ บ
Atan()หาค่า tan
Asin()หาค่า sine
Acos()หาค่า arc cosine
Abs() เมื่องต้องการหาค่าสัมบูรณ์ของจานวนจริ ง
ฟังก์ช้ นั ทางด้าน Directory
•
•
•
•
•
•
•
•
Mkdir()สร้าง Directory
Rmdir()ลบ Directory
chdirเมื่อต้องการเปลี่ยน directory
Dir()ใช้สร้าง object เกียวกัน directory
Closedir()ปิ ด directory
opendir()เปิ ด directory
Readdir()อ่านข้อมูลที่อยูใ่ น Directory
Rewinddir() เลือนตัวชี้เพื่อทาการเลือก ไฟล์หรื อข้อมูลแรกของ Directory
ฟังก์ช้ นั ทางด้านไฟล์
•
•
•
•
•
•
•
•
•
•
Fopen() เปิ ดไฟล์Fopen(files-name,mode)
Fread() อ่านข้อมูลจากไฟล์ สามารถระบุจานวนความยาวที่จะอ่านได้ Fread(file_handle,lenth)
Copy() copy ไฟล์Copy(ต้นทาง,ปลายทาง)
Fclose() ปิ ดไฟล์ที่เปิ ดอยูF่ close(file_handle)
Fwrite() เขียนข้อความลงไฟล์Fwrite(file_hand,text)
File_exists() ตรวจสอบไฟล์น้ นั มีอยูจ่ ริ งหรื อไม่File_exists(files-name)
Fgets() อ่านข้อมูลแต่ละบรรทัดหรื อแต่ละอักษรFgets(file_handle,length)
Feof() ตรวจสอบว่า พอยเตอร์เลื่อนไปอยูท่ า้ ยไฟล์หรื อไม่ Feof(file_handle)
Chmod() เปลี่ยนโหมดของไฟล์Chmod(files-name,mode)
Unlink() ลบไฟล์ที่ตอ้ งการUnlink(files-name)
ฟังก์ช้ นั ทางด้านข้อความ
•
•
•
•
•
•
•
strlen($string) หาความยาวของข้อความ
substr($string,start,end) ตัดตัวอักษรที่ตอ้ งการใช้ออกมา
ereg_replace(คาค้น,คาแทน,$string) แทนที่ขอ้ ความที่พบด้วยคาที่ตอ้ งการ
explode(คาค้น, $string) แยกข้อความโดยใช้เครื่ องหมายแยก
Strcspn($string,คาค้น) ค้นหาตัวอักษรที่ตอ้ งการ ผลลัพเป็ นหลักที่พบ
trim($string) ตัดช่องว่างด้านหน้าและด้านหลังข้อความ
Chop($string) ตัดช่องว่างท้ายข้อความออกไป
ฟังก์ชนั่ วัน-เวลา
1182827325 =
timestamp
a แสดงคาว่า am หรื อ pm ในรู ปแบบตัวพิมพ์เล็ก
A แสดงคาว่า AM หรื อ PM ในรู ปแบบตัวพิมพ์ใหญ่
d แสดงวันที่แบบเลข 2 หลัก คือ "01" ถึง "31"
D แสดงชื่อวันภาษาอังกฤษแบบย่อ เช่น "Sun" ,
"Fri" เป็ นต้น
F แสดงชื่อเดือนภาษาอังกฤษเช่น "January"
h แสดงเวลาชัว่ โมงแบบ 2 หลัก "01" ถึง "12"
H แสดงเวลาชัว่ โมงแบบ 2 หลัก "00" ถึง "23"
g แสดงเวลาชัว่ โมงแบบไม่มีเลข 0 นาหน้า "1" ถึง
"12"
G แสดงเวลาชัว่ โมงแบบไม่มีเลข 0 นาหน้า "0" ถึง
"23"
i แสดงเวลานาที "00" ถึง "59"
j แสดงวันที่แบบไม่มีเลข 0 นาหน้า "1" ถึง "31"
l แสดงชื่อวันภาษาอังกฤษแบบเต็ม เช่น "Monday"
L แสดงค่าทางตรรกะ คือ มีค่า 0 หรื อ 1 ในปี ที่เป็ น
อธิกมาส
m แสดงเดือนแบบตัวเลขมีเลข 0 นาหน้า "01" ถึง
"12"
n แสดงชื่อเดือนภาษาอังกฤษแบบย่อ 3 ตัวอักษร เช่น
"Feb"
s แสดงเวลาวินาที "00" ถึง "59"
S แสดงส่วนต่อท้ายของวันที่ เช่น "th", "nd"
t แสดงจานวนวันใน 1 เดือน
w แสดงตัวเลขของวันใน 1 สัปดาห์ เช่น "0" =
Sunday ถึง "6" = Saturday
Y แสดงปี ค.ศ. ตัวเลข 4 หลัก เช่น "1990"
y แสดงปี ค.ศ. ตัวเลข 2 หลัก เช่น "90"
z แสดงลาดับวันใน 1 ปี คือตั้งแต่ "0" ถึง "365"
เริ่ มติดต่อกับ Mysql
<?
$host="localhost";
$username="";
$password="";
$db_name="";
$connect= mysql_connect( $host,$username,$password);
?>
คาสัง่ พื้นฐาน
•
•
•
•
•
•
•
•
mysql_connect ติดต่อกับฐานข้อมูล mysql
mysql_close ปิ ดการเชื่อมตัวกับ mysql
mysql_fetch_array เก็บค่าจาก Reccord ลง Array
mysql_num_rows นับจานวน Reccord
mysql_pconnect เปิ ดการติดต่อกับ mysql ที่มีอยูแ่ ล้ว
mysql_query ส่ งคาสั่งคิวรี ไปยัง mysql
mysql_select_db ใช้เมื่อต้องการเลือกฐานข้อมูลของ mysql
mysql_free_result เป็ นการกาหนดให้หน่อยความจาว่างมากขึ้น
ออกแบบฐานข้อมูล Mysql ผ่าน PhpMyAdmin
•
•
•
•
•
ฐานข้อมูล database
ตาราง
table
ฟิ ลล์
fild
เรคคอร์ด record
ชนิดของข้อมูล varchar , int , bigint , float ,text ,
date ฯลฯ
คาสัง่ SQL
• Insert
เพิม่ ข้อมูล
insert into $tbname (fild1,…) values (‘$a’,…);
• Select
ดึงข้อมูล
select * from $tbname where ……
• Update
แก้ไข
update $tbname set fild1=‘$aaa’,…. Where…
• Delete
ลบข้อมูล
delete from $tbname where ……
การนาข้อมูลจากตารางมาแสดง
<?
Include “connect_db.php”;
$sql="Select * From $tb";
$db_query=mysql_db_query($db,$sql);
$num_rows=mysql_num_rows($db_query);
Echo “จานวนที่พบ $num_rows”;
While($rs=mysql_fetch_array($db_query)){
echo “$rs[fild1]<br>”;
} # while
การเพิ่มข้อมูลลงในตาราง
<?
Include “connect_db.php”;
$a=10;
$b=20;
$c=“aaaaaaaaa”;
$sql=“Insert into $dbname (fild1,fild2,fild3) values (‘$a’,’$b’,’$c’)”;
Mysql_db_query($dbname,$sql);
?>
การค้นหาข้อมูลจากตาราง
<?
Include “connect_db.php”;
$sql=“Select * from $tbname where fild1=‘$a’ and fild2 like
‘$b%’”;
$db_query=Mysql_db_query($dbname,$sql);
While($rs=mysql_fetch_array($db_query)){
Echo “$rs[fild1]”;
}
?>
การแก้ขอ้ มูลในตาราง
<?
Include “connect_db.php”;
$a=10;
$b=20;
$c=“aaaaaaaaa”;
$sql=“update $dbname set fild1=‘$a’,fild2=‘$b’,fild3=‘$c’ where
fild4=‘$x’”;
Mysql_db_query($dbname,$sql);
?>
การลบข้อมูลในตางราง
<?
Include “connect_db.php”;
$sql=“delect from $dbname where fild4=‘$x’”;
Mysql_db_query($dbname,$sql);
?>
สุ ดท้ายแล้วกับ PHP เบื้องต้น
ขอให้มีความสุ ขกับการสร้าง ระบบ เว็บ โปรแกรม จาก php นะครับ
สวัสดีครับ