วันจันทร์ที่ 30 กันยายน พ.ศ. 2556

Array Function

เป็น Function เกี่ยวกับการควบคุมตัวแปร Array ดังนี้
array_count_values(ตัวแปร array) เป็นการนับจำนวนข้อความใน array ว่ามี่กี่ key ที่เหมือนกัน
array_key_exists(ชื่อ key, ตัวแปร array) เป็นการค้นหา key ใน array (ค่าที่ส่งกลับ จริงหรือเท็จ)
array_keys(ชื่อ array[, ค่าที่ค้นหา]) เป็นการแสดง Index และชื่อ key ของ array
array_search(คำค้น, ตัวแปร array) เป็นการค้นหาค่าใน array
array_sum(ตัวแปร array) เป็นการรวมค่าที่มีอยู่ใน array
array_unique(ตัวแปร array) เป็นการแสดงค่าใน array ที่ซ้ำกันให้เหลืออันเดียว
array_values(ตัวแปร array) เป็นการแสดงค่า key และค่าของ key ใน array
count(ตัวแปร array [, mode]) เป็นการนับจำนวน key ใน array ว่ามีจำนวนเท่าไรถ้าไม่มี key จะให้ค่าเป็น 0 ถ้าเป็น array หลายมิติและระบุ mode (COUNT_RECURSIVE หรือ 1) จะนับรวมจำนวนมิติกับจำนวน key ทั้งหมด
current(ตัวแปร array) เป็นการแสดงค่า Index ของ array ว่าขณะนี้อยู่ที่ใด
next(ตัวแปร array) เป็นการย้าย Index ของ array ไปข้างหน้า
prev(ตัวแปร array) เป็นการย้าย Index ของ array ถอยกลับ
end(ตัวแปร array) เป็นการย้าย Index ของ array สุดท้าย
list(ตัวแปรที่1, ตัวแปรที่2[,…])=ตัวแปร array เป็นการรับค่าจาก array

วันอาทิตย์ที่ 29 กันยายน พ.ศ. 2556

Files and Directories Function

ฟังก์ชั่นเกี่ยวกับไฟล์และไดเร็กทอรี่นั้น ถือว่ามีประโยชน์ในการเขียนโปรแกรม เหมาะสำหรับผู้ที่ชอบเก็บข้อมูลแบบเท็กไฟล์ ไม่อาศัยฐานข้อมูล
Files Function
fopen(ชื่อไฟล์ , โหมดของการเปิดไฟล์)
เมื่อเปิดไฟล์ และทำงานต่างๆที่ต้องการเรียบร้อยแล้ว หลังจากนั้นต้องปิดไฟล์ทุกครั้งด้วยโหมดของการเปิดไฟล์ด้วยฟังก์ชั่น fopen มีอยู่ด้วยกัน 6 ชนิดคือ
r เปิดเพื่ออ่านอย่างเดียว โดยเริ่มจากตำแหน่งเริ่มต้นของไฟล์
r+ เปิดไฟล์เพือ่อ่านและเขียนข้อมูล โดยเริ่มจากตำแหต้นของไฟล์
w เปิดไฟล์เพื่อเขียนข้อมูลอย่างเดียว โดยเริ่มจากตำแหน่งเริ่มต้นของไฟล์
ข้อมูลเก่าจะสูญหาย หากไม่พบไฟล์ที่ระบุจะสร้างไฟล์ขึ้นใหม่
w+ เปิดเพื่ออ่านและเขียนข้อมูล โดยเริ่มจากตำแหน่งเริ่มต้นของไฟล์
ข้อมูลเก่าจะสูญหาย หากไม่พบไฟล์ที่ระบุจะสร้างไฟล์ขึ้นใหม่
a เปิดไฟล์เพื่อเขียนข้อมูลเพิ่ม ซึ่งจะเขียนต่อจากข้อมูลตัวสุดท้ายของไฟล์
หากไม่พบไฟล์ที่ระบุจะสร้างไฟล์ขึ้นใหม่
a+ เปิดไฟล์เพื่ออ่านและเขียนข้อมูลเพิ่ม ซึ่งจะเขียนข้อมูล
fclose() ค่าที่ได้จาก fopen() คือหมายเลขอ้างอิงไฟล์ ซึ่งหมายเลขอ้างอิงที่ได้นี้ เราจะต้อง
นำไประบุ เมื่อต้องการใช้ฟังก์ชั่นอื่นๆจัดการเกี่ยวกับไฟล์นั้นๆ ซึ่ง
ตัวอย่าง fopen() และ fclose()
$open = fopen("book.txt","r") ; // ในที่นี้ระบุเป็นโหมด r เพื่ออ่านอย่างเดียว
fclose($open) ;
fpassthru() เป็นฟังก์ชั่นที่ใช้สำหรับอ่านข้อมูลทั้งหมดจากไฟล์ แล้วส่งไปยังเว็บเบราเซอร์
หลังจากนั้นไฟล์จะถูกปิด เราจึงไม่ต้องปิดไฟล์เอง
fread() เป็นฟังก์ชั่นที่ใช้อ่านข้อมูลจากไฟล์ โดยสามารถกำหนดจำนวนไบต์ของข้อมูล
ที่จะให้อ่านเข้ามาได้ รูปแบบการใช้งานคือ
fread(หมายเลขไฟล์,จำนวนไบต์ที่ต้องการอ่าน)
ตัวอย่าง
$file = fopen("d:/myweb/php/test.php","r") ;
$read = fread($file,11) ;
echo $read ;
fclose($file) ;
file() เป็นฟังก์ชั่นที่ใช้อ่านไฟล์ โดยที่ไม่ต้องใช้คำสั่งในการเปิดไฟล์ก่อน
ซึ่งค่าที่ได้จะเป็นข้อมูลชนิด Array ซึ่งก็คือข้อมูลแต่ละบรรทัดนั่นเอง
รูปแบบคือ file(ตำแหน่งและชื่อไฟล์)
ตัวอย่าง
$file_array = file("c:/test.php") ;
echo $file_array[0] . "<br>" ;
echo $file_array[1] . "<br>" ;
fputs(หมายเลขของไฟล์, ข้อความที่จะเขียน) เขียนข้อมูลลงไฟล์
fwrite(หมายเลขของไฟล์,ข้อความที่จะเขียน) เขียนข้อมูลลงไฟล์
filesize(ชื่อแฟ้ม) เป็นฟังก์ชั่นที่ใช้สำหรับหาขนาดของไฟล์ในหน่วยไบต์
filetype(ชื่อแฟ้ม) เป็นฟังก์ชั่นที่ใช้ตรวจสอบประเภทของไฟล์
fgets(หมายเลขของไฟล์[,ขนาดที่จะอ่าน (byte)]) เป็นฟังก์ชั่นที่ใช้อ่านข้อมูลจากไฟล์
ตามขนาดที่ต้องการ(ปกติอ่านครั้งละ 1 บรรทัด)
unlink(ชื่อแฟ้ม) เป็นคำสั่งสำหรับลบไฟล์ที่ระบุไว้
delete(ชื่อแฟ้ม) เป็นคำสั่งสำหรับลบไฟล์ที่ระบุไว้
ฟังก์ชั่นสำหรับ directory
opendir() เป็นฟังก์ชั่นที่ใช้เปิดไดเร็กเทอรี ค่าที่ได้คือหมายเลขอ้างอิงของไดเร็กเทอรี่
ซึ่งเราต้องนำไประบุให้ฟังก์ชั่นอื่นๆ ที่ใช้จัดการกับไดเร็กเทอรี่
readdir() มีหน้าที่อ่านไดเร็กทอรี่ ว่ามีไฟล์ใดอยู่บ้าง
closedir() เป็นฟังก์ชั่นที่ใช้ปิดไดเร็กเทอรี่
dirname(path/file) แสดงชื่อ direct ที่เก็บแฟ้ม
diskfreespace(directory) แสดงขนาดพื้นที่ว่าง
disk_free_space(directory) แสดงขนาดพื้นที่ว่าง
disk_total_space(directory) แสดงขนาดพื้นที่ทั้งหมด

วันเสาร์ที่ 28 กันยายน พ.ศ. 2556

Date and Time Functions

ฟังก์ชั่น date()
ฟังก์ชั่น date() จะส่งค่าของวันเวลากับมาในรูปแบบของข้อมูลชนิด string ตามรูปแบบที่กำหนด รูปแบบเป็นดังนี้ date(สตริง[,timestamp])

ตัวอักษร                          ผลลัพท์ที่แสดงออกมา
a                                      หน่วยของเวลาแบบตัวพิมพ์เล็ก นั่นคือ "am" หรือ "pm"
A                                     หน่วยของเวลาแบบตัวพิมพ์ใหญ่ นั่นคือ "AM" หรือ "PM"
d                                     วันที่ โดยมีศูนย์นำหน้า นั่นคือ "01" ถึง "03"
D                                    ชื่อวันในสัปดาห์ เฉพาะตัวอักษร 3 ตัวแรก เช่น "Sun","Mon" ฯลฯ
F                                    ชื่อเต็มของเดือน เช่น "January" , "Febuary" เป็นต้น
g                                     เลขชั่วโมงแบบ 12 ชั่วโมง โดยไม่มีศูนย์นำหน้า นั่นคือ "1" ถึง "12"
G                                    เลขชั่วโมงแบบ 24 ชั่วโมง โดยไม่มีศูนย์นำหน้า นั่นคือ "0" ถึง "23"
h                                     เลขชั่วโมงแบบ 12 ชั่วโมง โดยมีศูนย์นำหน้า นั่นคือ "01" ถึง "23"
H                                    เลขชั่วโมงแบบ 24 ชั่วโมง โดยมีศูนย์นำหน้า นั่นคือ "00" ถึง "23"
i                                      เลขนาที นั่นคือ "00" ถึง "59"
j                                      วันที่ โดยไม่มีศูนย์นำหน้า นั่นคือ "1" ถึง "31"
l                                     ชื่อเต็มของวันในสัปดาห์ เช่น "Sunday" , "Monday" เป็นต้น
L                                    ค่าตรรกะที่แสดงว่าเดือนกุมภาพันธ์ของปีที่ระบุมี 29 วันหรือไม่
                                      โดย "1" หมายถึง มี 29 วัน ,"0" หมายถึงมี 28 วัน
m                                   หมายเลขของเดือน โดยมี 0 นำหน้า นั่นคือ "01" ถึง "12"
M                                  ชื่อเดือน เฉพาะตัวอักษร 3 ตัวแรก เช่น "Jan" , "Feb" เป็นต้น
n                                    หมายเลขของเดือน โดยไม่มีศูนย์นำหน้า นั่นคือ "1" ถึง "12"
r                                    วัน/เวลาในรูปของ RFC 822 เช่น "Thu, 21 Dec 2000 21:23:05 +0200" เป็นต้น
s                                    เลขวินาที นั่นคือ "00" ถึง "59"
S                                   ตัวหนังสือย่อของเลขวันที่ลงท้ายในภาษาอังกฤษ เช่น ลงท้ายด้วยเลข 1st 2rd                                        เป็นต้น
t                                    จำนวนวันของเดือนคือ 28 และ 31
T                                   เขตเวลา (timezone) เช่น "MDT" , "EST" เป็นต้น
U                                  จำนวนวินาทีทั้งหมดนับตั้งแต่เวลา 00.00 น. ของวันที่ 1 มกราคม พ.ศ.2513
w                                  หมายเลขของวันในสัปดาห์ นั่นคือ "0" (วันอาทิตย์) ถึง "6" (วันเสาร์)
y                                   เลขปีแบบ 2 หลัก เช่น "02" เป็นต้น
Y                                  เลขปีแบ 4 หลัก เช่น "2002" เป็นต้น
z                                   หมายเลขของวันภายในปี นั่นคือ "0" ถึง "365"

วันอังคารที่ 17 กันยายน พ.ศ. 2556

Functions

User-define Function
เป็นการสร้างฟังก์ชันขึ้นมาใช้งานเอง ในกรณีที่เราใช้ชุดคำสั่งเหล่านั้นบ่อยครั้ง เราก็จัดเก็บเป็นฟังก์ชัน เพื่อให้เรียกใช้ได้สะดวกและยังช่วยให้การเขียนโปรแกรมง่ายขึ้นด้วย ซึ่งในการเขียนฟั่งก์ชั่นขึ้นมาเองนี้สามารถสร้างได้ 2 แบบด้วยกันคือ
1. ฟังก์ชั่นที่ไม่มีการรับ-ส่งค่า มีรูปแบบคือ
Function ชื่อฟังก์ชั่น () {
ชุดคำสั่ง PHP;
}
ตัวอย่าง
Function test_function() {
echo “TEST ”;
}
2. ฟังก์ชั่นที่มีการรับ-ส่งค่า มีรูปแบบคือ
Function ชื่อฟังก์ชั่น ([ตัวแปร[,…]]) {
ชุดคำสั่ง PHP;
[return ค่าที่ต้องการส่งกลับ;]
}
เป็นการกำหนดฟังก์ชั่นขึ้นมาเพื่อการรับ-ส่งค่าที่ต้องการ ดังตัวอย่าง
ตัวอย่างที่ 1 รับค่าจาก function อย่างเดียว
Function test_function() {
return “TEST”;
}
$nui= test_function(); // ตัวแปร nui จะมีค่าเท่ากับ “TEST”
ตัวอย่างที่ 2 ส่งค่าให้ function อย่างเดียว
Function test_function($nui) {
echo $nui;
}
test_function(“TEST”); // browser จะแสดงค่า “TEST”
ตัวอย่างที่ 3 รับและส่งค่าให้ function อย่างเดียว
Function test_function($nui) {
return “ผมชื่อ”.$nui;
}
echo test_function(“TEST”); // จะแสดงค่า “TEST”

วันจันทร์ที่ 16 กันยายน พ.ศ. 2556

Firewall

Firewall
Firewall เป็น เครื่องมือรักษาความปลอดภัยให้กับเครือข่ายภายใน (Intranet) โดยป้องกันผู้บุกรุก
(Intrusion) ที่มาจากเครอื ข่ายภายนอก (Internet) ถ้าผู้บุกรุกมาจากจากเครอื ข่ายภายในระบบนี้จะป้องกันไม่ได้
สิ่งที่ป้องกัน เช่น ไวรัสคอมพิวเตอร์ (Virus), หนอนคอมพิวเตอร์ (Worm), การโจมตีแบบ DoS (Denial of
Service), ม้าโทรจัน (Trojan House), ip spoofing ฯลฯ โดยมีลักษณะการบุกรุก ดังนี้
– Virus จะแย่งใช้หรอื ทำาลายทรัพยากรของคอมพิวเตอร์ เช่น ไฟล์ข้อมูล, แรม ฯ
– Worm จะแย่งใช้ทรัพยากรของคอมพิวเตอร์ เช่น เขียนไฟล์ขยะลงบนฮาร์ดดีสก์ จนทำาให้
ฮาร์ดดีสก์เต็ม ฯ
– DoS จะส่ง Request หรอื เรียกใช้ Service ต่างๆ ไปที่เซิร์ฟเวอร์ จนทำาให้เซิร์ฟเวอร์ล่ม
– Trojan House จะแอบอยู่ในเคร่อื งไคลเอนด์หรอื เซิร์ฟเวอร์ เม่อื ถึงเวลามันจะทำาการเปิดพอร์ตของ
เคร่อื งนั้นให้กับผู้บุกรุก เช่น แฮกเกอร์สามารถรีโหมดเข้ามาควบคุมการทำางานของเคร่อื งนั้น
– ip spoofing การปลอมหมายเลขไอพีต้นฉบับเพ่อื ลักลอบเข้ามาในเครอื ข่าย
Firewall มีทั้งฮาร์ดแวร์และซอฟท์แวร์ ที่เปน็ ฮาร์ดแวร์ เช่น Router ที่ฟังก์ชั่น Screening Device,
Layer 3 Switch ฯ ที่เปน็ ซอฟท์แวร์ เช่น ipchains, iptables
ในการอบรมครั้งนี้จะใช้เคร่อื งคอมพิวเตอร์มีการ์ดเน็ตเวิร์ด 2 แผ่น ที่ติดตั้งลินุกซ์ทะเล 7.0 และใช้
โปรแกรม iptables การ์ดหนึ่งติดต่อกับเครอื ข่ายภายนอกใช้ Public IP ทำาหน้าที่เปน็ Firewall อีกการ์ดหนึ่งติด
ต่อกับเครอื ข่ายภายในใช้ Private IP
Firewall แบ่งออกได้ 3 ประเภท
1. Packet Filtering เปน็ Firewall ระดับพ้นื ฐานมีหน้าที่ตรวจสอบ IP Address และ Port ที่อยู่ต้นทาง
และปลายทาง รวมทั้งกรองแพ็กเกตข้อมูล สามารถแยกแยะประเภทของแพ็กเกตที่เปน็ TCP, UDP ได้
2. Circuit-Level Firewall เปน็ Firewall ประเภท Proxy Server ที่เปน็ ตัวคั่นกลางระหว่างเครอื ข่าย
ภายในกับเครอื ข่ายภายนอก การทำางานจะใช้เทคนิคที่เรียกว่า SPI (Stateful Packet Inspection) หลัก
การทำางานเปน็ แบบเดียวกันกับ Packet Filtering และได้เพิ่มการกำาหนดกฎในการเข้าถึง (Access
Rules) เพ่อื ใช้ในการควบคุมทราฟิก
3. Application Level Firewall เปน็ Firewall ประเภท Proxy Server ที่ทำางานระดับแอพพลิเคชั่น มี
หน้าที่ป้องกันเครอื ข่ายภายในกับเครอื ข่ายภายนอกไม่ให้ติดต่อกันโดยตรง การส่งการร้องขอ
(Request) และการตอบกับ (Response) ต้องผ่าน Proxy Server

Proxy Server จะทำาหน้าที่คั่นกลางระหว่างเครือข่ายภายในกับเครือ ข่ายภายนอก โดยมีหลัการทำางานดัง
นี้ เครืองไคลเอ็นด์ต้องการติดต่อกับอินเตอร์เน็ต ก็จะส่งการร้องขอไปที่ Proxy Server จากนั้นตัว Proxy Server
จะแปลง IP Address ของเครื่องไคลเอนด์เป็น IP Address ของ Proxy Server แล้วส่งการรร้องขอนี้ออกไปสู่
อินเตอร์เน็ต และเม่อื มีการตอบกลับจากอินเตอร์เน็ต จะกลับมาที่ Proxy Server จะมีการตรวจสอบว่าข้อมูลที่
ตอบกลับมีสิ่งผิดปกติหรือไม่ ถ้าไม่มีก็จะส่งข้อมูลตอบกลับไปยังเคร่อื งไคลเอนด์ที่ร้องขอมา
รูปแบบการติดตั้ง Firewall
การติดตั้ง Firewall จะต้องติดตั้งให้เหมาะสมถึงจะเป็นประโยชน์ เพราะฉะนั้นจำานวนจุดที่ติดตั้งจะขึ้นอยู่
กับการออกแบบเน็ตเวิร์ค (Network Design) ถ้าการออกแบบเน็ตเวิร์คไม่มี DMZ (Demilitarize Zone) ให้
ติดตั้ง Firewall 1 จุด เคร่อื ง Proxy Server จะมีการ์ดเน็ตเวิร์ด 2 แผ่น แต่ถ้าการออกแบบเน็ตเวิร์คมี DMZ ให้
ติดตั้ง Firewall 2 จุด เคร่อื ง Proxy Server จะมีการ์ดเน็ตเวิร์ด 3 แผ่น
โปรแกรมท่หี น้าท่เีป็น Firewall ท่มี าพร้อมกับลินุกซ์ทะเล 7.0 คือ
1. lokkit เหมาะสำาหรับมอื ใหม่
2. iptables เหมาะสำาหรับมอื อาชีพ

วันพุธที่ 4 กันยายน พ.ศ. 2556

ตัวควบคุมการทำงาน (Control Structures)

ตัวควบคุมการทำงาน (Control Structures)
ในการเขียนโปรแกรมคอมพิวเตอร์นั้น คอมพิวเตอร์จะทำงานโดยเรียงลำดับลงมาจากบน – ลงล่าง
(Top – Down) แต่ถ้าเราต้องการสั่งให้คอมพิวเตอร์ทำงานย้อยกลับ หรือมีการทำงานซ้ำ เราจะต้องมีตัวค;บคุมการทำงานดังนี้
If . . .Else . . .ElseIf
คำสั่ง If เป็นคำสั่งสำหรับกำหนดให้โปรแกรมทำงานอย่างมีเงื่อนไข โดยเริ่มต้นในการตรวจสอบนิพจน์ ว่าค่าที่ได้เป็นจริงหรือเท็จ และนำค่าที่ได้เป็นตัวเลือกว่าจะกระทำตามคำสั่งใด ดังนี้
การใช้งาน If ตรวจสอบเงื่อนไขเดียว
รูปแบบ
If (เงื่อนไข) {
ตัวกำหนดในการทำงานเมื่อเป็นจริงตามเงื่อนไข;
}
การใช้งาน If ตรวจสอบสองเงื่อนไข
รูปแบบ
If (เงื่อนไข) {
ตัวกำหนดในการทำงานเมื่อเป็นจริงตามเงื่อนไข;
} else {
ตัวกำหนดในการทำงานเมื่อไม่เป็นจริงตามเงื่อนไข;
}
การใช้งาน If ตรวจสอบมากกว่าสองเงื่อนไข
รูปแบบ
If (เงื่อนไขที่ 1) {
ตัวกำหนดในการทำงานเมื่อเป็นจริงตามเงื่อนไขที่ 1;
} elseif (เงื่อนไขที่ 2) {
ตัวกำหนดในการทำงานเมื่อไม่เป็นจริงตามเงื่อนไขที่ 2;
} [else if (เงื่อนไขที่ …) {
ตัวกำหนดในการทำงานเมื่อไม่เป็นจริงตามเงื่อนไขที่ …;
[} else {
ตัวกำหนดในการทำงานเมื่อไม่เป็นจริงตามเงื่อนไขข้างต้น; ]]
}

While
คำสั่ง while เป็นคำสั่งในการวนรอบ โดยจะมีการตรวจสอบเงื่อนไขก่อนแล้วค่อยมีการทำงานตามลำดับ แต่ถ้าเงื่อนไขไม่เป็นตามที่กำหนดก็จะออกจากการวนรอบของ while ทันทีดังนี้
รูปแบบ
While (เงื่อนไข) {
คำสั่งในการทำงาน;
}
ตัวอย่าง
<?
$i = 1;
while ($i <= 10) {
echo $i++."<br>";
}
?>
จากตัวอย่างข้างต้นเป็นการตรวจสอบเงื่อนไขเดียวคือ ตัวแปร i น้อยกว่า 10 ซึ่งถ้าเป็นจริงตามเงื่อนไขก็จะพิมพ์ค่า i ออกมาแล้วเพิ่มค่า i ไปที่ละ 1 จน i มีค่าถึง 11 จะออกจาก Loop
do … While
เป็นคำสั่งวน loop คล้ายกับ While แต่จะทำงานตามคำสั่งก่อนแล้วค่อยตรวจสอบเงื่อนไข
for
คำสั่ง for เป็นคำสั่งในการวนรอบอีกคำสั่งหนึ่งแต่จะไม่มีการตรวจสอบเงื่อนไข เพียงแต่ทำตามคำสั่งที่กำหนดไว้แล้วเท่านั้น
ตัวอย่างการใช้งานคำสั่ง for
for ($i = 1; $i <= 10; $i++ ) {
echo "$i <br>";
}
อธิบาย : ภายใน for ( . . . )
$i = 1; คือการกำหนดค่าเริ่มต้น
$i <= 10; คือการกำหนดค่าจุดสิ้นสุด
$i++ คือการกำหนดให้เพิ่มไปทีละ 1
ผลลัพธ์ที่ได้คือ จะมีการวนรอบเพื่อพิมพ์ค่า 1 ถึง 10

break
คำสั่ง break คือคำสั่งที่ใช้ในการหลุดออกจากเงื่อนไข หรือจบเงื่อนไขทันที
ตัวอย่าง
$i = 0;
while ($I <= 50) {
if ($i ==20) { break; }
echo "$i <br>";
$i++;
}
ที่จริงแล้วคำสั่งนี้จะต้องพิมพ์ค่า 0 ถึง 50 ออกมา แต่เนื่องจากมีการใช้คำสั่ง if มาตรวจเช็คเมื่อถึง 20 ถ้าเป็นจริงก็จะทำคำสั่ง break และหยุดการวนรอบทันทีทำให้ผลลัพธ์ที่ได้ออกมาคือ 1 ถึง 19
continue
คำสั่ง continue เป็นคำสั่งที่ใช้ควบคู่กับคำสั่งในการวนรอบ โดยเมื่อโปรแกรมทำการรันคำสั่งนี้ จะทำการกระโดดไปเริ่มต้นใหม่ทันที ( ใช้กับคำสั่ง for, while)
ตัวอย่าง
for ($a = 0; $a <= 50; $a++) {
if ($a % 2) { continue } //เป็นเลขคี่กระโดดไปเริ่มต้นใหม่
echo "$a <br>"; //ให้พิมพ์เลขคู่ออกมา
}
}
เป็นการพิมพ์เลขคู่จาก 0 ถึง 50
switch
คำสั่ง switch เป็นคำสั่งในการเลือกเงื่อนไขจำนวนมากๆ ซึ่งจะสะดวกกว่าการใช้คำสั่ง if
ตัวอย่าง
$a = 1;
switch ($a) {
case 0;
echo "a มีค่าเท่ากับ 0";
break;
case 1;
echo "a มีค่าเท่ากับ 1";
break;
default;
echo "a ไม่มีค่าเท่ากับ 0 หรือ 1";
}

return
เป็นการส่งค่ากลับจากฟังก์ชั่น
include ();
คำสั่ง include() เป็นคำสั่งในการเรียก PHP Script ที่อยู่ในไฟล์อื่นเข้ามาทำงาน โดยสามารถเรียกใช้งานภายใต้คำสั่งของการวนรอบ ( Loop ) และสามารถที่จะนำมาเปรียบเทียบเงื่อนไขการทำงานได้
ตัวอย่างที่ 1 เรียกใช้คำสั่ง include() ภายใต้การวนรอบของคำสั่ง for
$fa = array (‘a.inc’, ’b.inc’, ‘c.inc’, ‘d.inc’);
for ($i = 0; $i < count($fa); $++) {
include $fa[$I];
}
จากตัวอย่างแรก จะใช้อาเรย์ fa เป็นตัวเก็บข้อมูลของไฟล์ทั้งหมด 4ไฟล์ จากนั้นจะทำการวนรอบเพื่อเรียกใช้ (include) ทีละไฟล์
ตัวอย่างที่ 2 เรียกใช้คำสั่ง include() ภายในเงื่อนไขของการเปรียบเทียบ
$a = 12;
if ( $a == 12 ) {
include("asp.inc")
}else{
include("diaw.inc")
}
require ();
คำสั่งนี้จะเป็นคำสั่งในการเรียก PHP Script ที่อยู่ในไฟล์อื่นเข้ามาทำงานซึ่งคล้ายกับ include เพียงแต่สามารถเรียกใช้ภายใต้คำสั่งการวนรอบได้ (Loop)
require (‘header.inc’);
include_once ();
คำสั่งเหมือนกับ include() เป็นคำสั่งในการเรียก PHP Script ที่อยู่ในไฟล์อื่นเข้ามาทำงาน โดยตรวจสอบว่าเคยเรียกมาแล้วหรือยังถ้าเคยจะไม่เรียกซ้ำอีก
require_once ();
คำสั่งนี้จะเป็นคำสั่งในการเรียก PHP Script ที่อยู่ในไฟล์อื่นเข้ามาทำงานซึ่งคล้ายกับ include_once เพียงแต่สามารถเรียกใช้ภายใต้คำสั่งการวนรอบได้ (Loop)

วันจันทร์ที่ 2 กันยายน พ.ศ. 2556

โครงสร้างพื้นฐานของ PHP (Basic SynTag)

โครงสร้างพื้นฐานของ PHP (Basic SynTag)
PHP นั้นสามารถใช้งานร่วมกันกับภาษา HTML ดังนั้นในการเขียนโค้ดจะต้องแยกส่วนกันให้ชัดเจนว่าส่วนใดคือภาษา PHP ส่วนใดคือภาษา HTML ซึ่งสัญลักษณ์ที่นำมาใช้แยกโค้ด PHP ดังนี้
แบบที่ 1. SGML Tag <? // เปิด Tag PHP คำสั่งภาษา php; ?> // ปิด Tag PHP แบบที่ 2. XML Tag <?php // เปิด Tag PHP คำสั่งภาษา php; ?> // ปิด Tag PHP แบบที่ 3. Javascript Tag <script language=”php”> // เปิด Tag PHP คำสั่งภาษา php;
</script> // ปิด Tag PHP แบบที่ 4. ASP Tag <% // เปิด Tag PHP คำสั่งภาษา php; %> // ปิด Tag PHP
จากรูปแบบทั้ง 4 นั้น SynTax ของ PHP ที่นิยมใช้มากที่สุดคือแบบที่ 1 และในการจบคำสั่งของ PHP ต้องจบด้วยเครื่องหมาย ;
การเขียน Comment
Comment ในภาษา PHP จะใช้ Comment เหมือนกับภาษา C และ Unix ดังนี้
- Comment 1 บรรทัดใช้ // หรือ #
- Comment มากกว่า 1 บรรทัด เริ่มต้นด้วย /* จบด้วย */
ชนิดของข้อมูล (Types)
ชนิดข้อมูลของ PHP จะประกอบด้วย 3 ชนิดด้วยกันคือ
1. ข้อมูลแบบค่าเดียว (Scalar)ประกอบด้วย
1.1 boolean เป็นข้อมูลที่มีค่าเป็นจริง หรือเท็จ (True/False)
1.2 integer เป็นข้อมูลประเภทที่เป็นตัวเลขสามารถกำหนดได้ว่าจะ
เป็นเลขฐานอะไรดังนี้
1.2.1 เลขฐาน 10 ([0-9][0-9])
1.2.2 เลขฐาน 8 (0[0-7]+)
1.2.3 เลขฐาน 16 (0[xX][0-9a-fA-F]+)

PHP นั้นสามารถใช้งานร่วมกันกับภาษา HTML ดังนั้นในการเขียนโค้ดจะต้องแยกส่วนกันให้ชัดเจนว่าส่วนใดคือภาษา PHP ส่วนใดคือภาษา HTML ซึ่งสัญลักษณ์ที่นำมาใช้แยกโค้ด PHP ดังนี้
แบบที่ 1. SGML Tag <? // เปิด Tag PHP คำสั่งภาษา php; ?> // ปิด Tag PHP แบบที่ 2. XML Tag <?php // เปิด Tag PHP คำสั่งภาษา php; ?> // ปิด Tag PHP แบบที่ 3. Javascript Tag <script language=”php”> // เปิด Tag PHP คำสั่งภาษา php;
</script> // ปิด Tag PHP แบบที่ 4. ASP Tag <% // เปิด Tag PHP คำสั่งภาษา php; %> // ปิด Tag PHP
จากรูปแบบทั้ง 4 นั้น SynTax ของ PHP ที่นิยมใช้มากที่สุดคือแบบที่ 1 และในการจบคำสั่งของ PHP ต้องจบด้วยเครื่องหมาย ;
การเขียน Comment
Comment ในภาษา PHP จะใช้ Comment เหมือนกับภาษา C และ Unix ดังนี้
- Comment 1 บรรทัดใช้ // หรือ #
- Comment มากกว่า 1 บรรทัด เริ่มต้นด้วย /* จบด้วย */

ชนิดข้อมูลของ PHP จะประกอบด้วย 3 ชนิดด้วยกันคือ
1. ข้อมูลแบบค่าเดียว (Scalar)ประกอบด้วย
1.1 boolean เป็นข้อมูลที่มีค่าเป็นจริง หรือเท็จ (True/False)
1.2 integer เป็นข้อมูลประเภทที่เป็นตัวเลขสามารถกำหนดได้ว่าจะ
เป็นเลขฐานอะไรดังนี้
1.2.1 เลขฐาน 10 ([0-9][0-9])
1.2.2 เลขฐาน 8 (0[0-7]+)
1.2.3 เลขฐาน 16 (0[xX][0-9a-fA-F]+)
1.3 float เป็นข้อมูลชนิดที่เป็นทศนิยม
1.4 string เป็นข้อมูลที่เป็นชนิดข้อความ

2. ข้อมูลแบบหลายค่า (Compound)ประกอบด้วย
2.1 array เก็บข้อมูลที่เป็นชุด หรือกลุ่มข้อความ
2.2 object เก็บข้อมูลในลักษณะของการเรียกใช้เป็น Class Object หรือ Function
2.3 Type juggling เก็บข้อมูลในลักษณะที่ขึ้นอยู่กับตัว Operator
3. ข้อมูลแบบพิเศษ (Special) ประกอบด้วย
3.1 resource เป็นข้อมูลที่ได้มาจาก Function ของ PHP Extensions
3.2 Null เป็นข้อมูลที่ไม่มีค่า

ตัวแปร (Variables)
ตัวแปร (variables) หมายถึงตัวแทนของข้อมูลซึ่งอยู่ในหน่วยความจำของเครื่อง การเขียนโปรแกรมจำเป็นต้องมีการใช้ตัวแปรประเภทต่างๆ เพื่อพักเก็บข้อมูลในระหว่างการทำงานของโปรแกรม การประกาศตัวแปรใน PHP นั้นจะต้องขึ้นต้นด้วยเครื่องหมาย $ (dollar sign) แล้วตามด้วยชื่อตัวแปร โดยที่ PHP นั้นจะให้ความสำคัญกับตัวอักษรพิมพ์เล็ก พิมพ์ใหญ่ของชื่อตัวแปร และชื่อตัวแปรจะต้องขึ้นต้นด้วย ตัวอักษร หรือ เครื่องหมาย underscore (_)
Integers
$a = 567; เป็นจำนวนเต็มบวก
$b = -956; เป็นจำนวนเต็มลบ
$c = 01236; เป็นเลขฐาน 8
$d = 0x12F; เป็นเลขฐาน 16
ในการกำหนดตัวแปรในลักษณะของ Integers เราสามารถกำหนดเป็นเลขฐานได้ได้ 3
เลขฐานคือ ฐาน 10, ฐาน 8, ฐาน 16 ดังนี้
- ฐาน 10 คือตัวเลขที่ใช้ทั่วไป - ฐาน 8 คือตัวเลขที่มีตั้งแต่ 0-7 ในการกำหนดให้เป็นเลขฐาน 8 นั้นจะให้ขึ้นต้นด้วยเลข 0 –
- ฐาน 16 คือตัวเลขตั้งแต่ 0-9 และอักษร A-F แทนตัวเลข 10-15 การกำหนดให้เป็นเลขฐาน 16
คือให้ขึ้นต้นด้วย 0x
Floating point numbers
$a = 1.356
$b = 1.3e6
ใช้กำหนดตัวเลขในรูปแบบทศนิยม และเลขยกกำลัง ดังเช่น 1.3e6 จะหมายความว่า
1.3 คูณ 10 ยกกำลัง 6

วันศุกร์ที่ 30 สิงหาคม พ.ศ. 2556

PHP:Hypertext Preprocessor

PHP เป็นภาษาที่พัฒนาด้วยหลักการบนพื้นฐานของ “Hypertext Preprocessor” ที่มีการใช้งานอย่างแพร่หลายในลักษณะ Open Source ซึ่ง PHP เป็น Server Side Scripting มีรูปแบบที่ง่ายต่อการเขียน โดยยืนอยู่บนพื้นฐานภาษา C, Java และ Perl ซึ่งจะง่ายต่อการเรียนรู้ การพัฒนาและการดูแลแก้ไข
PHP ได้รับการพัฒนาความสามารถขึ้นมาเรื่อยๆอย่างต่อเนื่อง ทั้งนี้เป็นเพราะมีการเปิดเผยซอร์สโค๊ดของ PHP สู่สาธารณะ ในลักษณะของ open source ทำให้มีหน่วยงาน และองค์กรต่างๆ เข้ามาช่วยกันพัฒนาทำให้ PHP มีความสามารถหลากหลาย เช่น
- สามารถในการจัดการกับตัวแปรหลายๆ ประเภท เช่น เลขจำนวนเต็ม (interger) , เลขทศนิยม
(float) , สตริง (string) และ Array (array) เป็นต้น
- สามารถในการรับข้อมูลจากฟอร์มของ HTML
- สามารถในการรับ-ส่ง Cookies
- สามารถเกี่ยวกับ Session
- สามารถทางด้าน OOP (Object Oriented Programming) ซึ่งรองรับการเขียนโปรแกรมเชิงวัตถุ
- สามารถในการเรียกใช้ COM component
- สามารถในการสร้างภาพกราฟิก
- สามารถทำงานเกี่ยวกับ Dynamic Web ได้ทุกรูปแบบ เหมือนกับ CGI หรือ ASP

- สามารถที่จะติดต่อกับโปรแกรมจัดการฐานข้อมูลที่มีอยู่มากมาย ดังนี้ Adabas D InterBase Solid Microsoft Access DBase mSQL Sybase Empress MySQL Velocis FilePro Oracle Unix dbm Informin PostgreSQL MS SQL Server - สามารถที่จะติดต่อกับบริการต่างๆผ่านทางโพรโตคอล (Protocol) เช่น IMAP, SNMP, NNTP, POP3,
HTTP และยังสามารถติดต่อกับ Socket ได้อีกด้วย
PHP เป็นภาษาสคริปต์ที่ทำงานทางฝั่งเซิร์ฟเวอร์ (server-side scripting language) ซึ่งมีลักษณะเป็น embedded script หมายความว่าเราสามารถฝังคำสั่ง PHP ไว้ในเว็บเพจ ร่วมกับคำสั่ง (แท็ก) ของ HTML ได้

วันอังคารที่ 20 สิงหาคม พ.ศ. 2556

การใช้ PHP Tag

การใช้ PHP Tag
PHP Tag ตามตัวอย่าง เริ่มต้นด้วย <?  และปิดด้วย  ?>  คล้ายกับ  HTML tag  เพราะเริ่มต้นด้วยเครื่องหมายน้อยกว่า (<)  และปิดด้วยเครื่องหมายมากกว่า  (>)  สัญลักษณ์เหล่านี้ เรียกว่า  PHP tag  ที่บอกแม่ข่ายเว็บการเริ่มต้นและสิ้นสุดคำสั่ง  PHP  ข้อความระหว่าง tag จะได้รับการแปลในฐานะ  PHP ข้อความภายนอก tag เหล่านี้ได้รับการปฏิบัติเหมือน HTML ปกติ  PHP tag  ยอมให้หลีกจาก  HTML

รูปแบบ PHP tag
รูปแบบ  PHP tag มี 4 แบบ แต่ละแบบของคำสั่งอย่างเหมือนกัน

รูปแบบย่อ (Short style)
<?  echo "<h1>TEST</h1>";?>

รูปแบบนี้เป็นรูปแบบง่ายที่สุดและเป็นไปตามมาตรฐานการประมวลผล SGML (Standard Generalized Markup Language) การใช้ tag ประเภทนี้ต้องให้ใช้ short tag ในไฟล์คอนฟิก php.ini ที่คำสั่ง short_open_tag ให้เป็น enable แต่ไม่แนะนำเนื่องจากไม่เป็นไปตามมาตรฐาน XHTML และมาตรฐานส่วนขยายเช่น PEAR

รูปแบบ  XML
<?php echo "<h1>TEST</h1>";?>

 tag รูปแบบนี้สามารถใช้กับเอกสาร  XML  (Extensible  Markup  Language)  ถ้าวางแผนให้ทำงานกับ  XML  ต้องใช้รูปแบบนี้

รูปแบบ  SCRIPT
< SCRIPT LANGUAGE='php'> echo "<h1>TEST</h1>"; </SCRIPT>

tag รูปแบบนี้  ยาวที่สุดและอาจจะคุ้นเคย ถ้าเคยใช้  JavaScript  หรือ  VBScript

รูปแบบ  ASP
<% echo "<h1>TEST</h1>"; %>

tag รูปแบบนี้เหมือนกับ Active Server  Pages  (ASP)  สามารถใช้ได้  ถ้าตั้งค่าคอนฟิกคำสั่ง  asp_tags ให้เป็น enable

ประโยคคำสั่ง  PHP
ประโยคคำสั่ง  PHP ใช้บอกตัวแปล PHP ให้ทำงาน โดยให้อยู่ระหว่าง tag เปิดและปิด
ตัวอย่างนี้ใช้ประโยคคำสั่งแบบหนึ่ง
echo "<p>TEST</p>";

คำสั่ง  echo  ตามตัวอย่างเป็นการพิมพ์ข้อมูลเมื่อส่งไปที่  browser  สามารถมองเห็นผลลัพธ์ของข้อความ  "TEST"  ปรากฎใน  browser

ที่ท้ายประโยคคำสั่ง echo มี semicolon(;) เครื่องหมายนี้ใช้แยกประโยคคำสั่งใน PHP  เหมือนกับจุด (.) ที่ใช้แยกประโยคในภาษาอังกฤษ  ถ้าเคยเขียนโปรแกรมด้วย  C หรือ  Java  จะมีความคุ้นเคยกับการใช้  semicolon

Whitespace
ตัวอักษรช่องว่าง  เช่น บรรทัดใหม่ (carriage returns),  space และ tab  รู้จักในชื่อ  whitespace  ตัวอักษรนี้ไม่ได้รับความสนใจจาก  PHP  และ  HTML ให้พิจารณา 2 คำสั่ง  HTML
<h1> WELLCOME PAGE ยินดีต้อนรับ </h1> <p> วันนี้ ท่านต้องการซื้อสินค้าอะไร? </p>

                และ
<h1> TEST ยินดีต้อนรับ </h1>
<p>วันนี้ ท่านต้องการซื้อสินค้าอะไร? </p>

คำสั่ง  HTML  2  ชุด  สร้างผลลัพธ์เหมือนกัน เพราะคำสั่งนี้ปรากฎใน  browser  อย่างไรก็ตามสามารถใช้  whitespace  ใน  HTML  เพื่อทำให้คำสั่ง  HTML  อ่านได้ง่าย  ถึงแม้ว่าไม่ต้องมี  whitespace  ระหว่างประโยคคำสั่ง  PHP  แต่ทำให้อ่านได้ ถ้าแยกแต่ละประโยคให้เป็นคนละบรรทัด  ตัวอย่างเช่น
echo "hello";
echo "world":

และ
echo "hello";  echo  "world";

คำสั่ง  2 ชุดให้ผลลัพธ์เหมือนกัน แต่ชุดแรกอ่านได้ง่ายกว่า

Comment
Comment ในคำสั่ง ทำหน้าที่เป็นหมายเหตุให้กับผู้อ่านคำสั่ง Comment สามารถใช้อธิบายวัตถุประสงค์ของสคริปต์ ทำไมถึงทำแบบนั้น การปรับปรุงครั้งสุดท้ายและอื่น ๆ

ตัวแปล  PHP จะไม่สนใจข้อความใน Comment โดยเฉพาะอย่างยิ่ง PHP parser ข้าม Comment ที่เทียบเท่ากับ whitespace

PHP สนับสนุนรูปแบบ Comment แบบ C, C++ และ Shell script

รูปแบบ  C เป็น Comment หลายบรรทัด
/*     Author: script-codephp.blogspot
Last Modified: 20/08/2013
This script processes the customer order.
*/

Comment หลายบรรทัด เริ่มต้นด้วย /* และปิดด้วย */ เหมือนภาษา C
Comment 1 บรรทัด สามารถใช้รูปแบบ C++
echo "<h1>TEST</h1>"; // Start printing order

หรือ รูปแบบ  Shell script
echo "<h1>TEST</h1>"; # Start printing order

วันจันทร์ที่ 19 สิงหาคม พ.ศ. 2556

Object Oriented Programming

Object oriented programming (OOP) มีจุดสำคัญคือ ความสามารถสร้างประเภทข้อมูลใหม่ที่มีข้อมูลและการทำงานร่วมกัน การพัฒนาแบบนี้ใช้การจัดความสัมพันธ์และคุณสมบัติของอ๊อบเจคในระบบในปฏิบัติงาน
Class
ในบริบทซอฟต์แวร์ OOP อ๊อบเจคสามารถเป็นสิ่งของหรือแนวคิดได้แก่ วัตถุทางกายภาค เช่น โต๊ะ ลูกค้า หรือวัตถุทางแนวคิดที่มีอยู่ในซอฟต์แวร์ เช่น พื้นที่ป้อนข้อความ ไฟล์ โดยทั่วไปความสนใจส่วนมากในวัตถุทางแนวคิด รวมถึงวัตถุในโลกจริงที่ต้องการนำเสนอในซอฟต์แวร์

ซอฟต์แวร์ OOP เป็นชุดของอ๊อบเจคเก็บคุณลักษณะและปฏิบัติการ โดย คุณลักษณะคือ คุณสมบัติหรือตัวแปรที่สัมพันธ์กับอ๊อบเจค ปฏิบัติการคือ เมธอดการกระทำหรือฟังก์ชันที่อ๊อบเจคสามารถทำการปรับปรุงตัวเองหรือผลกระทบภายนอก

ซอฟต์แวร์แบบนี้ สนับสนุนและช่วยการห่อหุ้ม (encapsulation) ที่เรียกว่าการซ่อนข้อมูล ส่วนสำคัญคือ การเข้าถึงข้อมูลภายในอ๊อบเจคมีให้เฉพาะการผ่านปฏิบัติการของอ๊อบเจคที่เรียกว่าอินเตอร์เฟซของอ ๊ อบเจค

class แสดงแทนชุดของอ๊อบเจคที่อาจจะแปรผันจากแต่ละอ๊อบเจค แต่ต้องมีผลร่วมกัน ถึงแม้ว่าค่าของคุณลักษณะเหล่านั้นจะแปรผันตามอ๊อบเจค ตัวอย่าง จักรยาน สามารถคิดเป็น class ของอ๊อบเจคที่อธิบายจักรยานหลายประเภทด้วยส่วนการทำงานรวมหรือคุณลักษณะ เช่น 2 ล้อ สี ขนาด และปฏิบัติการ เช่น การเคลื่อนย้าย 


Polymorphism 
ภาษา Object oriented programming ต้องสนับสนุน polymorphism ซึ่งหมายความว่า แต่ละ class สามารถมีพฤติกรรมต่างสำหรับปฏิบัติการเดียวกัน เช่น มี class รถยนต์ และ class จักรยาน ทั้งคู่มีปฏิบัติการเคลื่อนย้ายต่างกัน วัตถุในโลกจริงมีปัญหาน้อย อย่างไรก็ตาม ภาษาโปรแกรมไม่คิดเหมือนโลกจริง ดังนั้นภาษาต้องสนับสนุน polymorphism เพื่อทราบถึงปฏิบัติการที่ใช้โดยอ๊อบเจคเฉพาะ

polymorphism มีพฤติกรรมมากกว่าอ๊อบเจคใน PHP เฉพาะฟังก์ชันสมาชิกของ class สามารถเป็น polymorphism เปรียบเทียบกับโลกจริงคือ กริยาในภาษาธรรมชาติ ซึ่งเทียบเท่ากับฟังก์ชันสมาชิก พิจารณาการใช้จักรยานในชีวิตจริง คือ การทำความสะอาด การแยกชิ้น การซ่อม ทาสี เป็นต้น

การอินเฮอริต ยอมให้สร้างความสัมพันธ์ตามลำดับชั้น ระหว่าง class ด้วยการใช้ subclass โดย subclass ทำอินเฮอริต คุณลักษณะและปฏิบัติการจาก superclass

การอินเฮอริต ทำให้สามารถสร้างและเพิ่มไปยัง class ที่มีอยู่ จาก class ฐานอย่างง่าย สามารถทำได้มาจากให้ซับซ้อนมากขึ้นและเจาะจง class ตามความต้องการ สิ่งนี้ทำให้ใช้คำสั่งใหม่ได้ และเป็นข้อได้เปรียบสำคัญของ object oriented programming 

วันศุกร์ที่ 9 สิงหาคม พ.ศ. 2556

เรียนรู้เกี่ยวกับ Array และการใช้งาน

เรียนรู้เกี่ยวกับ Array และการใช้งาน

อะเรย์ (Array)
- อะเรย์หรือตัวแปรชุดคือตัวแปรที่สามารถเก็บค่าได้หลายๆค่า โดยใช้ตัวแปรตัวเดียว
- สิ่งที่อยู่ภายในอะเรย์เรียกว่าสมาชิก
- แต่ละสมาชิกในอะเรย์จะมีอินเด็กซ์เพื่อใช้อ้างอิง
- ใน PHP อินเด็กซ์จะเริ่มที่ 0 แต่สามารถกำหนดอินเด็กซ์ให้เป็นตัวอักษรได้

<html>
<body>
<?php
$arr[0] = "Red";
$arr[1] = "Green";
$arr[2] = "Blue";
$arr[3] = "White";
echo " $arr[0] , $arr[1] ,$arr[2] ,$arr[3] ";
?>
</body>
</html>

ข้อมูลแต่ละตัวในอะเรย์ไม่จำเป็น ต้องเป็นข้อมูลชนิดเดียวกัน เช่น อาจจะมีทัง้จำนวนเต็ม เลขทศนิยม ตัวอักษร
<?php
$arr[0] = "Chair";
$arr[1] = 20;
$arr[2] = 3.37;
$arr[3] = "A";
$all = count( $arr );
for ($i=0; $i < $all; $i++){
print "Member $i = $arr[$i] <BR>";
}
?>

ใน PHP อะเรย์ที่มีขนาดเปลี่ยนแปลงได้เรียกว่า dynamic arrayหรือ vector(สำหรับอะเรย์มิติเดียว)
- ไม่จำเป็นต้องประกาศตัวแปร
- ค่าของอะเรย์จะ ถูกกำหนดให้ตอนที่ โปรแกรมทำงาน (Run time)
<?php
$myarray[]=3;
$myarray[]=1.1;
$myarray[]="abc";
$all = count( $myarray);
for ($i=0; $i < $all; $i++){
print "Member $i = $myarray[$i] <BR>";
}
?>

ตัวอย่างการสร้างอะเรย์โดยใช้ฟังก์ชัน array และการเปรียบเทียบการใช้ For และ Foreach
<?php
$myarray = array( 5,6,7, 20,31,440,”PHP”,”GNA” );
$all = count( $myarray);
for ($i=0; $i < $all; $i++){
print "Member $i = $myarray[$i] <BR>";
}
foreach ($myarray as $myvalue) {
print "$myvalue <BR>";
}
?>

ตัวอย่างการสร้างอะเรย์โดยใช้ฟังก์ชัน array range(int low, int high)
<?php
$arr = range( 5,10);
$all = count( $arr );
for ($i=0; $i<$all; $i++){
echo "arr[" .$i. "] = ";
echo $arr[$i] . "<BR>" ;
}
?>

การนำข้อมูลจาก Text file มาเก็บไว้ใน Array
- ข้อมูลที่เก็บในแต่ละบรรทัดคือ ข้อมูลในแต่ละ Element
<?php
$des = file("test.php");
$count_des = count($des);
if($count_des==0) {
echo "ไม่มีข้อมูลใน File <br>";
}
for ($i=0; $i<$count_des; $i++) {
echo $des[$i] . "<br>";
}
?>

จากตัวอย่างที่แล้ว หากเราต้องการแสดงข้อความให้ถูกต้อง จำเป็นต้อง Convert SpecialCharacter ก่อนการ Display HTML โดยใช้ Function htmlspecialchars
<?php
$des = file("test.php");
$count_des = count($des);
if($count_des==0) {
echo htmlspecialchars("ไม่มีข้อมูลใน File <br>");
}
for ($i=0; $i<$count_des; $i++) {
echo htmlspecialchars($des[$i]) . "<br>";
}
?>

การใช้อะเรย์หลายมิติ(Multidimensional Array)
- กำหนดชื่อตัวแปรแล้วตามด้วยเครื่อง [..][..] สำหรับอะเรย์สองมิติและ [..][..][..]
สำหรับอะเรย์สามมิติ
$arr_2[1][1] = 4000; //$arr_2 เป็นอะเรย์สองมิติ
$arr_3[1][1][1] = 2000; //$arr_3 เป็นอะเรย์สามมิติ
<?php
$dim = 4;
for ($row=0; $row <= $dim; $row++) {
for($column = 0; $column <= $dim; $column++) {
$myarray[$row][$column] = 4 * $row * $column;
echo "4 x $row x $column = " . $myarray[$row][$column] . "<br>";
}
echo "<br>";
}
?>

อะเรย์แบบคู่ (Key/Value)
- การเก็บข้อมูลในอะเรย์แบบนีจ้ ะใช้กับข้อมูลที่จัดเก็บเป็นคู่ ๆ
File: lab4-15.php
<?php
$keep_age = array(
“Joe" => 15 ,
“Game" => 18 ,
“Off" => 30 ,
“Champ" => 16 );
$name =key($keep_age);
$age =current($keep_age);
print ("Age of <u>$name</u> is $age");
?>

อะเรย์แบบคู่ (Key/Value) ประเภท 2 มิติ
<?php
$countries = array (
"thailand" => array ( "zone" => "Asia", "D_NAME" => ".th"),
"malasia" => array ( "zone" => "Asia", "D_NAME" => ".my"),
"india" => array ( "zone" => "Asia", "D_NAME" => ".in"),
"holland“ => array ( "zone" => "Europe", "D_NAME" => ".nl"),
"france" => array ( "zone" => "Europe", "D_NAME" => ".fr")
);
echo "domain name=".$countries[ "thailand"]["D_NAME"]."<BR>\n";
?>

ฟังก์ชัน sort
- เป็นฟังก์ชันที่ใช้ในการเรียงลำดับรายการข้อมูลในอะเรย์โดยจัดเรียงข้อมูลจากค่าน้อยไปหาค่ามาก
<?php
$sort = array(50,40,30,35);
sort($sort);
for($r = 0; $r < count($sort);$r++){
echo "$sort[$r] <br>";
}
?>

ฟังก์ชัน asort
- เป็นฟังก์ชันที่ใช้ในการเรียงลำดับรายการข้อมูลในอะเรย์แบบคู่ โดยจัดเรียงข้อมูลของValue จากค่าน้อยไปหาค่ามาก
<?php
$keep_age = array(
“Joe" => 15 ,
“Game" => 18 ,
“Off" => 30 ,
“Champ" => 16 );
asort($keep_age );
foreach ($keep_age as $key => $value) {
echo "$key = $value <br>\n";
}
?>

ฟังก์ชัน ksort
- เป็นฟังก์ชันที่ใช้ในการเรียงลำดับรายการข้อมูลในอะเรย์แบบคู่ โดยจัดเรียงข้อมูลของ Keyจากค่าน้อยไปหาค่ามาก
<?php
$keep_age = array(
“Joe" => 15 ,
“Game" => 18 ,
“Off" => 30 ,
“Champ" => 16 );
ksort($keep_age );
foreach ($keep_age as $key => $value) {
echo "$key = $value <br>\n";
}
?>

ฟังก์ชัน max ใช้ในการหาค่า maximum ของ Value ใน Array
- ฟังก์ชัน min ใช้ในการหาค่า minimum ของ Value ใน Array
- ฟังก์ชัน count ใช้ในการนับจำนวน Array ว่ามีทัง้ หมดเท่าไหร่
<?php
$arr = array( 51,6,7,4,3,2,10,3,70 );
echo max( $arr) ,"<br>";
echo min( $arr) ,"<br>";
echo count( $arr) ,"<br>";
?>

ฟังก์ชัน current ใช้ดึง Value ของ Array ที่ Pointer ชีอ้ ยู่ หากเป็นการ Initialize Arrayตัว Pointer จะอยู่ที่ Array 0
- ฟังก์ชัน next ใช้เลื่อน Pointer ใน Array ไปข้างหน้าจำนวน 1 ช่อง
- ฟังก์ชัน prev ใช้เลื่อน Pointer ใน Array ถอยหลังจำนวน 1 ช่อง
<?php
$arr = array( 51,6,7,4,3,2,10,3,70 );
echo current($arr) ,"<br>";
next ($arr);
echo current($arr) ,"<br>";
prev ($arr);
echo current($arr) ,"<br>";
?>

ฟังก์ชัน each ใช้ดึงค่าของ Array ที่ Pointer ชีอ้ ยู่ แล้วเลื่อน Pointer ใน Array ไปจำนวน1 ช่อง ค่าที่ดึงออกมาจะเป็น Array เช่นกัน
<?php
$arr = array( 51,6,7,4,3,2,10,3,70 );
$myarr = each($arr);
echo $myarr['key'] . " => " . $myarr['value'] . "<br>";
$myarr = each( $arr);
echo $myarr[0] . " => " . $myarr[1] . "<br>";
?>

ฟังก์ชัน end ใช้เลื่อน Pointer ใน Array ไปลำดับสุดท้าย
<?php
$arr = array( 51,6,7,4,3,2,10,3,70 );
echo current($arr) ,"<br>";
end($arr);
echo current($arr) ,"<br>";
?>

ฟังก์ชัน key ใช้ดึง Key ของ Array ที่ Pointer ชีอ้ ยู่
<?php
$arr = array("code" => "123", "name" => "ABC" );
echo key ($arr) ,"<br>";
next($arr);
echo key ($arr) ,"<br>";
?>

ฟังก์ชัน reset เป็นคำสั่งให้เริ่มต้น Pointer ใหม่
<?php
$arr = array(10,20,30,40,50);
echo current($arr) ,"<br>";
next($arr);
echo current($arr) ,"<br>";
reset($arr);
echo current($arr) ,"<br>";
?>

ฟังก์ชัน list ใช้ในการรับค่าที่อ่านมาได้จากอะเรย์โดยจำนวนของตัวแปร (var1,var2,…)ที่ตัง้ รับในคำสั่งนีขึ้น้ อยู่กับขนาดอะเรย์ที่ส่งค่ามาให้ว่าอะเรย์นัน้ ส่งค่าข้อมูลมาให้จำนวนกี่ค่า
<?php
$arr = array("A"=>10,"B"=>20,"C"=>30);
while ( list($key,$data) = each($arr) ) {
echo "$key => $data<br>";
}
?>

ฟังก์ชัน print_r ใช้ในการแสดงค่าใน Array ทัง้ หมด
<?php
$arr = array("A"=>10,"B"=>20,"C"=>30);
print_r($arr);
?>
File: lab4-30.php
<?php
echo "\$_SERVER<br>";
print_r($_SERVER);
?>

วันพฤหัสบดีที่ 8 สิงหาคม พ.ศ. 2556

เรียนรู้เกี่ยวกับฟังชั่น PHP

ฟังก์ชันของ PHP
ฟังก์ชันคือ โปรแกรมย่อยที่สามารถประมวลผล และ คืนผลลัพธ์จาการประมวลผลนั้นสู่โปรแกรมหลักได้ ซึ่งจำเป็นในการเขียนโปรแกรมเพื่อช่วยให้การทำงานมีประสิทธิภาพที่สูงขึน้โดยฟังก์ชันของ PHP มี 2 ส่วน คือ
- ฟังก์ชันที่ผู้ใช้สร้างขึน้ มาเอง
- ฟังก์ชันที่มากับ PHP (สามารถเรียกใช้งานได้ทันที)
ชื่อของคลาสและฟังก์ชันที่ผู้ใช้ทำการกำหนดเอง ตลอดจน constructs และ keywords ต่าง ๆเช่น echo, while, class เป็นต้น มีคุณสมบัติเป็นแบบ case-insensitive ตัวอย่างเช่น echo,ECHO, EcHo
แต่ในทางกลับกัน ชื่อตัวแปรต่าง ๆ นัน้ PHP จะมองเป็น case-sensitive ตัวอย่างเช่น $name,$NAME และ $NaMe
ฟังก์ชันที่ผู้ใช้สร้างขึ้นมาเอง
ผู้ใช้สามารถสร้างฟังก์ชันขึน้ มาใหม่ ทำได้โดยง่าย โดยอาศัยโครงสร้างพืน้ ฐานตัวแปร ค่าคงที่ โอเปอเรเตอร์ และการควบคุมโปรแกรมที่กล่าวมาแล้ว มาใช้ใน
การสร้างฟังก์ชัน สำหรับฟังก์ชันที่ผู้ใช้สร้างขึน้ มาเอง แบ่งออกเป็น 2 รูปแบบคือ
- ฟังก์ชันที่ไม่มีการส่งค่าระหว่างฟังก์ชัน
- ฟังก์ชันที่มีการส่งค่าระหว่างฟังก์ชัน
ฟังก์ชันที่ผู้ใช้สร้างขึ้นมาเอง - ไม่มีการส่งระหว่างฟังก์ชัน
ฟังก์ชันแบบนี้ผู้ใช้จะต้องกำหนดชื่อและขัน้ ตอนการทำงานของฟังก์ชันไว้ที่ต้นของโปรแกรมก่อน หลังจากนัน้ สามารถเรียกใช้งานได้ทันที รูปแบบการสร้างฟังก์ชันมีดังนี้
function functionName(){
instructions;
}
functionName(); //เรียกใช้งาน
ฟังก์ชันที่ผู้ใช้สร้างขึ้นมาเอง - ตัวอย่างฟังก์ชันที่ไม่มีการส่งระหว่างฟังก์ชัน
<?php
function Contact(){
echo “TEST 0123456789”;
}
Contact();
?>
TEST 0123456789
ฟังก์ชันที่ผู้ใช้สร้างขึ้นมาเอง - มีการส่งค่าระหว่างฟังก์ชัน
function functionName(parameter){
return (instructions);
}
functionName(parameterValue); //เรียกใช้งาน
ฟังก์ชันที่ผู้ใช้สร้างขึ้นมาเอง - ตัวอย่างฟังก์ชันที่มีการส่งระหว่างฟังก์ชัน
<html><body>
<?php
echo"จะแทรกไว้ส่วนบนของ Function ก็ได้ <br>";
echo circle_area(5);
function circle_area($radius){
return M_PI*$radius*$radius;
}
?>
<br><br>หรือจะแทรกไว้ส่วนล่างของ Function ก็ได้<br>
<?php echo circle_area(5); ?>
</body></html>

วันอังคารที่ 6 สิงหาคม พ.ศ. 2556

รูปแบบการบริการ Web Hosting ในปัจุบัน

หลังจากที่ได้ทราบชนิด Web Hosting  ต่อไปจะแนะนำรูปแบบการใช้งานและบริการโดยจะแบ่งรายละเอียดดังนี้

1. โครงสร้างการทำงานบนระบบเว็บ
2. ชนิดของ web hosting
3. รูปแบบการบริการ web hosting ในปัจจุบัน
4. หลักการเลือกผู้ให้บริการเว็บโฮสติ้งที่ดี

โครงสร้างการทำงานบนระบบเว็บ
ในระบบเว็บมีโครงสร้างการทำงานหลายลำดับชั้นด้วยกันโดยเริ่มตั้งแต่
Web hosing > web server > web browser
Website > Home Page > Web Page

Web hosing คือ?
การให้บริการเกี่ยวกับการฝากข้อมูลเว็บไซต์ โดยที่ศูนย์บริการรับฝาก webhosing จะมีเครื่องเซิร์ฟเวอร์ให้บริการตามชนิดของภาษา และฐานข้อมูลที่ผู้ใช้งานพัฒนา การติดตั้ง web hosing ใช้งานในองค์กรไม่ใช่เรื่องง่าย ผู้ที่เป็นผู้ดูแลระบบ (admin) จะต้องศึกษารายละเอียดหลายอย่างด้วยกัน ทั้งในส่วนของการติดตั้งระบบปฏิบัติการเครือข่าย การปรับแต่งค่าคอนฟิ กต่างๆ การติดตั้งระบบบริหาร web hosing (Control Panel) การสำรองฐานข้อมูลลูกค้า

การแบ่งชนิดของ web hosting
1. แบ่งตามลักษณะการใช้งาน
2. แบ่งตามระบบปฏิบัติการเครือข่าย

ชนิดของ web hosing แบ่งตามลักษณะการใช้งาน
แบ่งได้เป็น 2 ชนิด คือ
1. Free web hosting ให้บริการฟรี แบ่งได้อีก 2 ชนิด คือ
1.1 Static web hosting
1.2 Dynamic web hosting
2. Commercial web hosting เป็น web hosting ที่บริการโดยศูนย์บริการอินเตอร์เน็ต หรือบริษัทเอกชน ผู้ใช้ต้องจ่ายเงินค่าฝากข้อมูลเป็นรายเดือนหรือรายปี

ชนิดของ web hosing แบ่งตามระบบปฏิบัติการ
1. Windows web hosting เป็นโฮสติ้งที่ใช้ระบบปฏิบัติการwindows server เช่น windows 2000 server, windows server2003, windows server 2008
2. Linux web hosting เป็นโฮสติ้งที่ใช้ระบบปฏิบัติการ Linux มีให้เลือกหลายค่ายด้วยกัน ทั้งแบบเชิงการค้าและแบบฟรี เช่น Fedora,CentOS, Debian, Ubuntu, Redhat, Slackware
3. BSD web hosting เป็นโฮสติ้งที่ใช้ระบบปฏิบัติการตระกูล BSDนิยมใช้งานในศูนย์บริการอินเตอร์เน็ตของสถาบันการศึกษา และบริษัทเอกชนหลายแห่ง เนื่องจากตัวระบบมีความแข็งแกร่งสูง เช่น FreeBSD,OpenBSD, NetBSD

รูปแบบการบริการ Web hosting ในปัจจุบัน
สามารถแบ่งจำแนกรูปแบบการให้บริการได้ทั้งหมด 6 ประเภทใหญ่ๆ ดังนี้
1. Stand Alone Web Hosting
2. Shared Web Hosting
3. Reseller Web Hosting
4. Dedicated Web Hosting
5. Co-Location web Hosting
6. VPS Web Hosting

1.Stand Alone Web Hosting
- เป็น web hosting ที่ติดตั้งใช้งานอยู่ที่หน่วยงานตนเอง
- ผู้ดูแลระบบต้องติดตั้งและปรับแต่งโฮสติ้งเองทั้งหมด
- เหมาะสำหรับองค์กรที่มีการเชื่อมต่ออินเตอร์เน็ตความเร็วสูงแบบ Fix IP

2.Shared Web Hosting
- เป็นบริการรับฝาก web hosting ที่แบ่งขายลูกค้าเป็นรายๆ
- หมาะสำหรับผู้เริ่มต้นทำเว็บไซต์และต้องการมีโดเมนและเว็บไซต์เป็นของตนเอง

3.Reseller Web Hosting
- เป็นโฮสติ้งที่ทางผู้ให้บริการมีการแบ่งพื้นที่ให้ลูกค้าเป็นรายๆ ลูกค้าไม่จำเป็นต้องลงทุนซื้อเซิร์ฟเวอร์เอง เพียงแค่จ่ายค่าเช่าพื้นที่เป็นรายเดือน/รายปี
- ลูกค้าไม่จำเป็นต้องมีความเชี่ยวชาญในการติดตั้งระบบก็สามารถเป็นเจ้าของโฮสติ้งได้
- เหมาะสำหรับผู้ที่รับทำเว็บไซต์ มีลูกค้าในการควบคุมหลายราย หรือ องค์กรที่มีชื่อโดเมนในการควบคุมหลายโดเมน

4.Dedicated Web Hosting
- เป็นการบริการให้เช่าเครื่องเซิร์ฟเวอร์ทั้งเครื่อง
- เหมาะสำหรับองค์กรขนาดใหญ่ หรือเว็บไซต์ที่มีสมาชิกจำนวนมาก
- ผู้ดูแลสามารถควบคุมเครื่องได้อย่างอิสระ
- สามารถมีโดเมนภายในได้ไม่จำกัด โดยผู้ใช้บริการสามารถเลือกได้ว่าจะชำระค่าใช้จ่ายครั้งเดียว หรือผ่อนชำระเป็นรายเดือน

5.Co-Location Web Hosting
- เป็นบริการสำหรับลูกค้าที่มีเครื่องเซิร์ฟเวอร์อยู่แล้ว และต้องการนำเซิร์ฟเวอร์ฝากวางไว้กับผู้ให้บริการ
- เนื่องจาก สามารถเชื่อมต่ออินเตอร์เน็ตได้ 24 ชั่วโมง ไม่จำกัดแบนด์วิดธ์ และมีengineer คอยเฝ้าดูเซิร์ฟเวอร์ตลอดเวลา
- การคิดค่าบริการตามขนาดของเครื่อง server เช่น 1U, 2U, 3U, 4U, MiniTower, Medium Tower, Full Tower

6.VPS Web Hosting
- VPS ย่อมาจาก Virtual Private Server หรือ เซิร์ฟเวอร์เสมือน
- เป็นบริการที่เซิร์ฟเวอร์หนึ่งเครื่องสามารถแบ่งให้ลูกค้าใช้งานแบบจำกัดจำนวนลูกค้า (ลูกค้า VIP)
- คล้ายกับการทำ Dedicated Server บริการลูกค้าหลายรายไว้บนเซิร์ฟเวอร์เครื่องเดียวกัน
- ลูกค้าจะสามารถเข้าถึงเครื่องเซิร์ฟเวอร์ และปรับเปลี่ยนค่าต่างๆได้ โดยการRemote access
- ตัวอย่างซอฟต์แวร์ที่ใช้ทำ VPS เช่น OpenVZ, FreeVPS, Virtuozzo,Linux-VServer

ปัจจัยในการพิจารณาเลือกรูปแบบ Web hosting
1. จำนวนผู้ใช้งาน/สมาชิก
2. งบประมาณของบริษัท
3. ผู้ดูแลระบบ
4. มีเซิร์ฟเวอร์เป็นของตนเองหรือไม่
5. ลักษณะการเชื่อมต่ออินเตอร์เน็ตขององค์กร

หลักการเลือกผู้ให้บริการเว็บโฮสติ้งที่ดี
พิจารณาความเร็วและพื้นที่ใช้งาน
– Data Transfer ต่อเดือน ภายในประเทศ และนอกประเทศ
– พื้นที่ใช้งานเว็บไซต์ และ อีเมลล์
พิจารณาระบบปฏิบัติการบนเครื่องแม่ข่าย : Windows , Linux
พิจารณาโปรแกรมต่างๆ บน Host
– Program Web Server
– Program แปลภาษา ; MS-ASP , Linux-PHP
– Database Program ;
MS - SQLServer
Linux – mySQL
– ชนิดของ Control panel เช่น cPanel, Direct Admin, Plesk, VHCS,ISPConfig
ใบรับรองอีเล็กทรอนิกส์
ราคาค่าเช่าและค่าบริการ
การสำรองข้อมูลระบบ การบริการหลังการขาย

คอนโทรลพาเนลสำหรับบริหาร web hosting
- เป็นระบบที่ใช้ควบคุมและบริหาร web hosting ทำให้การควบคุมต่างๆสามารถทำได้ผ่านทางหน้าเว็บเบราเซอร์ ผู้ควบคุมสามารถทำการปรับแต่งค่าคอนฟิกต่างๆ ได้แบบออนไลน์ ไม่ว่าจะเป็นการจัดการโดเมน, ซับโดเมนม, DNS,IP address, web server, mail server, antivirus, php, Mysql,Disk Quota และอื่นๆ อีกมากมาย
- ปัจจุบัน สามารถแบ่งได้ 2 ชนิด
1. Commercial Control Panel
– cPanel, DirectAdmin, Ensim, Plesk, Mx-Controller,Helm
2. Open Source Control Panel
– ISPConfig, VHCS

วันเสาร์ที่ 3 สิงหาคม พ.ศ. 2556

การ รับ และ ค่าจาก formแบบ POST

หลายคนคงเคยใช้ฟอร์มในการส่งค่าวันนี้จะมาอธิบายวิธีการส่งค่าทั้งแบบ GET และแบบ POST ว่าต่างกันยังไงและการใช้งานจะใช้งานยังไง ก่อนอื่นจะพูดถึงการส่งค่าผ่านฟอร์มแบบ POST ก่อน การส่งค่าแบบ POST นั้นเราจะมองไม่เห็นค่าที่ส่งไปเหมือนแบบ GET การส่งค่าแบบ POST นั้นเราคงเห็นตัวอย่างในหลายๆที่เช่นฟอร์มการสมัครสมาชิก ฟอร์มการ Login หรือหลายๆฟอร์มที่ให้ผู้ใช้งานระบุค่า พูดไปอาจจะงง มาดูตัวอย่างกันเลยดีกว่า
ตัวอย่าง หน้า form ที่รับค่า

<form name='form1' method='POST' action=''>
Username<br/>
<input type ='text' name='username' size='30'><br/>
<input type ='submit' name='submit' value='Submit'>
</form>
การแสดงผล
Username


ส่วนหน้าที่จะรับค่าก็ให้ทำการประกาศรับค่า POST มาเก็บไว้ในตัวแปรก่อนจะนำค่านั้นไปใช้งานต่อๆไป
ตัวอย่างการประกาศรับค่า
<?php
$user = $_POST['username'];
echo $user; //ค่าที่แสดงผลก็เป็นข้อความที่กรอกผ่าน Textbox มานั่นเอง
?>

วันศุกร์ที่ 2 สิงหาคม พ.ศ. 2556

เรียนรู้การใช้งาน if else

เรียนรู้การใช้งาน if  else
ฟังค์ชั่น if  else นั้นคือการทำงานแบบมีเงื่อนไข คำสั่งที่เราใช้ในการตรวจสอบเงื่อนไขนั้นคือ if เพื่อตรวจสอบเงื่อนไขว่าเป็น "จริง" หรือ "เท็จ"  และถ้าเงื่อนไขเป็นจริงจะให้ทำอะไรต่อ หรือ ถ้าเงื่อนไขเป็นเท็จจะให้ทำอะไรต่อ  สามารถนำไปประยุกต์ใช้งานได้หลายรูปแบบ
รูปแบบการใช้งาน

if (ระบุเงื่อนไขที่ให้ตรวจสอบ)
{
 //ถ้าเงื่อนไขเป็นจริงจะให้ทำอะไร
}else{
//ถ้าเงื่อนไขเป็นเท็จจะให้ทำอะไร
}

source code

<?php
$time1= date("H");
if($time1 < 20){
echo "สวัสดีตอนเช้า";
}else{
echo "สวัสดีตอนกลางคืน";
}
?>

วันพฤหัสบดีที่ 1 สิงหาคม พ.ศ. 2556

for (Loop)กับลักษณะการทำงาน

for (Loop)กำลักษณะการทำงาน
ซึ่งหมายถึงการทำงานซ้ำๆของเงื่อนไขนั้นๆตราบใดที่เงื่อนไขยังเป็นจริง
การทำงานของ for จะมีการตรวจสอบเงื่อนไขอยู่ 2 แบบคือ
1. Pretest Loop ลูปประเภทนี้จะทำการตรวจสอบเงื่อนไขก่อนว่าเป็นจริง หรือเป็นเท็จถ้าเป็นจริงก็ให้เข้าไปทำคำสั่งหรือชุดคำส่งต่อไป และเมื่อทำคำสั่งหรือชุดคำสั่งเสร็จแล้วก็จะกลับมาทำการตรวจสอบเงื่อนไขอีกครั้ง แลดะจะทำเช่นนี้ไปเรื่อยๆจนกว่าเงื่อนไขจะเป็นเท็จ
2. post-Test loop ลูปประเภทนี้จะทำคำสั่งหรือชุดคำสั่งก่อน เมื่อเสร็จแล้วถึงจะมาตรวจสอบเงื่อนไขว่าเป็นจริงหรือเป็นเท็จ ถ้าเป็นจริงก็จะกลับไปทำคำสั่งหรือชุดคำสั่งเดิมอีกครั้งแลดะจะทำจนกว่าเงื่อนไขจะเป็นเท็จเช่นเดียวกัน
ลูปทั้งสองแบบนั้นจะต่างกันตรงที่จำนวนการทำคำสั่งหรือชุดคำสั่งนั้นจะไม่เท่ากัน
ลูปแบบ pretest นั้นโอกาสการทำคำสั่งหรือชุดคำสั่งที่น้อยที่สุดจะเท่ากับ 0 คือ เมื่อทำการตรวจสอบเงื่อนไขครั้งแรกแล้วเป็นเท็จก็จะออกจากลูป แต่ลูปแบบ post-test นั้นโอกาสที่น้อยที่สุดจะเท่ากับ 0 คือ เมื่อเข้าจะทำคำสั่งหรือชุดคำสั่งก่อน 1 ครั้งและเมื่อตรวจสอบเงื่อนไขครั้งแรกแล้วจะเป็นเท็จ ก็จะออกจากลูป

ตัวอย่าง

<?php
for ($i=1; $i<=5; $i++)
  {
  echo "ค่าของ I = " . $i . "<br>";
  }

?>

ค่าที่แสดงผล

ค่าของ I = 1
ค่าของ I = 2
ค่าของ I = 3
ค่าของ I = 4
ค่าของ I = 5

วันอังคารที่ 30 กรกฎาคม พ.ศ. 2556

Setup เครื่อง window Server หลายโดเมนใน 1 เครื่อง

Setup เครื่อง window Server หลายโดเมนใน 1 เครื่อง
วันนี้จะมาแนะนำการ Setup เครื่อง Window Server ครับโดยมีเงื่อนไขคือมีหลายโดเมนใน 1 เครื่องถ้าหากนึกภาพไม่ออกก็นึกถึงเครื่อง PC เราแล้วทำให้เป็น Webserver แบบนั้นเลยครับจากตัวอย่างนี้ทำโดย Window Server2008 R2 นะครับ เรามาเริ่มกันเลย

-ผมจะไม่พูดถึงการติดตั้ง Window Server2008 R2 นะครับคิดว่าคงทำได้ไม่ยากและหลังจากติดตั้งแล้วให้ทำการติดตั้ง DNS และ IIS ด้วยนะครับ หลังจากติดตั้งแล้วคลิกที่ DNS > Forward Lookup Zones  คลิกขวาเลือก Add New Zone เพื่อทำการเพิ่มชื่อเว็บไซต์ที่เราต้องการเข้าไป

- จะพบหน้า Wizard ในการติดตั้ง คลิก Next

-  กำหนด Zone เลือก Primary Zone คลิก Next

-  จากนั้นตั้งชื่อ Zone ตัวอย่างชื่อ Zone จะตั้งเป็นชื่อเว็บไซต์ (ไม่ต้องระบุ www) เช่น mis.com
-  จากนั้นเลือก Create New file..และตั้งชื่อไฟล์ (ปกติระบบจะเลือกชื่อ Zone มาเป็นชื่อไฟล์ให้อยู่แล้ว)สามารถคลิก Next ได้เลย
- เลือก Do Not Allow Dynamic Updates จากนั้นคลิก Next
- จากนั้นคลิกที่ Finish เสร็จสิ้นขั้นตอนการสร้าง Forward Lookup zones
ขั้นตอนการทำ Forward Lookup zones ก็เสร็จสิ้นครับ  บทความต่อไปจะกล่าวถึงการเพิ่มเว็บไซต์เข้ามาที่ DNS ที่เราสร้างขึ้นมานี้

วันจันทร์ที่ 29 กรกฎาคม พ.ศ. 2556

Windown Server2003 ไม่รองรับ .aspx มีวิธีเปิดใช้งาน

Windown Server2003 ไม่รองรับ .aspx มีวิธีเปิดใช้งาน
สำหรับหลายท่านที่ลง Windown Server 2003 แล้วรองรับเฉพาะ .asp แต่ไม่รองรับ .Net หรือ .aspx
วิธีการเปิดใช้งาน
  - คลิก Start
  - คลิก Control Panel
  - เลือก Add or Remove Program
  - เลือก Add/Remove Windown Companents
  - เลือก Appication Server

 - คลิก Detail
  - ติ๊กถูกที่ ASP.NET คลิกที่ OK รอสักพักระบบจะทำการเปิดการใช้งาน .Net หลังจากนั้น Restart Server 1ครั้งก็เสร็จแล้วครับ

วันอาทิตย์ที่ 28 กรกฎาคม พ.ศ. 2556

วิธีการสร้าง Banner แบบสุ่ม

วิธีการสร้าง Banner แบบสุ่ม
หมายถึงเราสามารถสร้างรูปภาพที่เป็น Banner ของเราและทำให้ Banner ของเราแสดงผลแบบสุ่มไปเรื่อยๆ และยังสามารถกำหนด Link ให้กำ Banner ได้ด้วย
source code

<script language="javascript" src="ajax.js"></script>
<script language="javascript">
function doajax(){
   var ajax1=createAjax();
   ajax1.onreadystatechange=function(){
      if(ajax1.readyState==4 && ajax1.status==200){
         document.getElementById('myplace').innerHTML=ajax1.responseText;
      }else{
         return false;
      }
   }
   ajax1.open("GET","get_banner.php",true);
   ajax1.send(null);
}
window.onload=function(){
   setInterval("doajax()",2000); // กำหนดให้สลับแบนเนอร์ทุกๆ 2 วินาที
}
</script>
<div id="myplace">
<img src="images/mybanner_1.jpg"  />
</div>
=================================================================
โค้ด get_banner.php

<?php
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
   $banner_img_arr=array(
      "0"=>"images/mybanner_1.jpg", // key 0 เก็บรูป banner ที่ 1
      "1"=>"images/mybanner_2.jpg", // key 1 เก็บรูป banner ที่ 2
      "2"=>"images/mybanner_3.jpg"   // สามารถเพิ่มจำนวนได้
   );
   $banner_link_arr=array(
      "0"=>"http://www.google.com", // เก็บค่า link เรียงลำดับให้ตรงคู่กับรูปภาพ
      "1"=>"http://www.yahoo.com",
      "2"=>"http://www.hotmail.com"   // สามารถเพิ่มจำนวนได้
   );
   $rand_banner=rand(0,2); // ค่า key 0 ถึง 2
   $banner_img=$banner_img_arr[$rand_banner];
   $banner_link=$banner_link_arr[$rand_banner];
   $html_banner="<a href='".$banner_link."' target='_blank'>";
   $html_banner.="<img src='".$banner_img."' border='0'></a>";
   echo $html_banner; // แสดง แบนเนอร์
?>

วันศุกร์ที่ 26 กรกฎาคม พ.ศ. 2556

PHP กับการส่งเมล์

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

วันนี้ผมมีวิธีแก้ในการเขียนสคิปส่งเมล์ให้เป็นภาษาไทย
ใครที่เจอปัญหาส่งอีเมล ด้วย PHP แล้วไม่เป็นภาษาไทย ลองใช้ Script นี้ไปปรับใช้เอานะครับ

source code

$strTo = "panatsein@hotmail.com";// ใส่ email ที่ต้องการส่งเมล
 $strSubject =  "=?UTF-8?B?".base64_encode("หัวข้อใส่ที่นี่")."?="; 
 $strHeader = "'MIME-Version: 1.0' . \r\nContent-type: text/html; charset=utf-8\r\n"; 
 $strHeader .= "อีเมลฉบับนี้ส่งจาก\r\n";
 $strMessage = "เนื้อหาอีเมล์ใส่ที่นี่ครับ";
 
 $send = @mail($strTo,$strSubject,$strMessage,$strHeader);  // @ = No Show Error //

วันจันทร์ที่ 22 กรกฎาคม พ.ศ. 2556

มารู้จัก HTML 5 กับ input type number กัน

เบราเซอร์ที่รองรับ IE เวอร์ชั่น 8 ขึ้นไป Chome Safari Opera ไม่รองรับ Firefox นะครับ
 มารู้จัก HTML 5 กับ input type number กัน
ถ้านึกไม่ออกก็นึกถึง HTML เวอร์ชั่นเก่าๆที่เวลาที่เราต้องการให้ ผู้ใช้งานกรอก หรือระบุตัวเลขนั้นเราอาจนะทำเป็น List box หรืออื่นๆก็ตามแต่  แต่พอมาถึง HTML 5 แล้วนั้นมี input type ที่ให้เราสามารถเรียกใช้งานได้เลย มาดูตัวอย่างกัน

ตัวอย่าง
เลือกตัวเลข :
source code

เลือกตัวเลข : <input max="20" min="1" name="nums" type="number" />

มาเรียนรู้วิธีการใช้งาน Iframes

มาเรียนรู้วิธีการใช้งาน Iframes
Iframes คือการนำหน้าเพจอื่นๆมาแสดงในตำแหน่งที่เราต้องการ ซึ่งเราสามารถกำหนด ความกว้างของเพจ หรือ ความสูงของเพจเพิ่มเติมได้

ตัวอย่าง

source code

<iframe src='http://script-codephp.blogspot.com/' width='100%' height='300'></iframe>

วันอาทิตย์ที่ 21 กรกฎาคม พ.ศ. 2556

การใช้งาน JavaScript Popup

การใช้งาน JavaScript Popup
คือการทำ Popup หรือ Alert ต่างสามารถนำไปประยุกต์ใช้งานในเว็ปไซต์ต่างๆได้ โดยเมื่อมี Alert ขึ้นผู้ใช้สามารถคลิก OK เพื่อไปยังกระบวนการต่อไป

ตัวอย่าง

source code

<script>
function alerts()
{
alert('This alert Your can Click OK for next Process');
}
</script>
<input name="alerts" onclick="alerts()" type="button" value="ทดสอบ Alert" />

การสร้าง Layouts สำหรับเว็ปไซต์

การสร้าง  Layouts สำหรับเว็ปไซต์
ข้อดีของการสร้าง Layouts คือทำให้หน้าเว็ปไซต์ของเราสวยงาม โดยการสร้าง Layouts นั้นเราจะใช้ <div> Elements ในการจัดกลุ่มของ HTML ของเรา โดยตัวอย่างจะทำการแบ่งกลุ่มออกเป็น 4 กลุ่ม
  • header
  • Menu
  • Content
  • Footer


ตัวอย่าง
My Input Content Here

source code

<div id='container' style='width: 100%' >
<div id='header' style='background-color: #EEEEEE;'>
<h2 style='color: #666666; text-align: center; font-family: verdana; padding: 10px;'>My Slogan Company</h2></div>
<div id='menu' style='background-color: #66CCCC; height: 200px; width:20%; float:Left;'>
<b>Main Menu</b><br/>
Menu1<br/>
Menu2<br/>
Menu3<br/>
Menu4<br/>
</div>
<div id='content' style='background-color: #FFFFCC; height: 200px; width: 80%; float:Left;'>
My Input Content Here
</div>
<div id='footer' style='background-color: #EEEEEE; text-align: center; font-family: Verdana; color: #666666; padding: 5px;'>
สร้างและพัฒนาโดย http://script-codephp.blogspot.com
</div>
</div>

HTML Hyperlinks (Links)

HTML Hyperlinks (Links) แท็ก HTML สำหรับทำ Link ไปยังหน้าอื่นๆภายในเว็ปไซต์ หรือภายนอกเว็ปไซต์ เมื่อเราย้ายเคอร์เซอร์ไปยัง Link ที่เราสร้างขึ้นจะแสดงรูปมือเพื่อให้เราสามารถคลิกไปยัง Link อื่นๆที่เรากำหนดได้

ตัวอย่าง
ทดสอบ Hyperlinks http://script-codephp.blogspot.com/
source code

<a href="http://script-codephp.blogspot.com/" target="_blank">http://script-codephp.blogspot.com/</a>

หมายเหตุ * หากเพิ่ม "_blank" หมายถึงหากคลิกที่ Link จะเปิดแทปใหม่

วันเสาร์ที่ 20 กรกฎาคม พ.ศ. 2556

HTML 5 Input type date

HTML 5 Input type date
วันนี้มาแนะนำ input type ใหม่ใน HTML 5 ครับซึ่งความสามารถนั้นสามารถทดแทน Script datepicker ได้เลยประมาณนั้น  ลักษณะก็ดูดีในระดับหนึ่ง การเขียน Code เรียกใช้งานก็ง่ายไม่จำเป็นต้องเขียน Script ยาวๆเพื่อเรียกใช้งาน DatePicker อีกต่อไป

ตัวอย่าง type date กรุณาเลือกวันเกิดของคุณ :

source code

<input type='date' name='todays'/><input type='submit' name='submit' value='ส่งข้อความ'/>

HTML 5 กับ Input Types ใหม่ๆ

HTML 5 มีอะไรใหม่ๆบ้างมาดูกัน จะยกตัวอย่าง Input Types ใหม่ๆที่เพิ่มขึ้นมาที่ละอย่างนะครับตัวอย่างแรก type Color ครับ
  • Color

  • ตัวอย่าง

    source code

    <input name="clor" type="color" />

    การทำ List Menu

    การทำ List Menu ด้วย แทก <ul> ซึ่งการใช้งานนั้นเราจะใช้งานร่วมกับ tag <li>ประดยชน์ของ Tag นี้คือมีการแบ่งรายการเมนูที่เราต้องการอย่างชัดเจน และสวยงาม หรือไม่จำเป็นต้องเป็นเมนูก็ได้ อาจจะเป็นหัวข้อเรื่องต่างๆก็ได้

    ตัวอย่าง
    • ทดสอบหัวข้อย่อย 1
    • ทดสอบหัวข้อย่อย 2
    • ทดสอบหัวข้อย่อย 3

    source code

    <ul>
    <li>ทดสอบหัวข้อย่อย 1</li>
    <li>ทดสอบหัวข้อย่อย 2</li>
    <li>ทดสอบหัวข้อย่อย 3</li>
    </ul>

    วิธีสร้างกรอบข้อความเพื่อให้เป็นสัดส่วน

    วิธีสร้างกรอบข้อความเพื่อให้เป็นสัดส่วน
    เป็นการสร้างกรอบข้อความ เพื่อแสดงให้ข้อความหรือเนื่อหาดูสวยงามเป็นสัดส่วนโดยตัวอย่างนี้จะใช้คำสั่ง html ที่ชื่อ fieldset

    ตัวอย่าง
    ข้อมูลส่วนตัว Firstname

    Lastname

    source code

    <fieldset><legend><b>ข้อมูลส่วนตัว</b></legend>
    Firstname<br/>
    <input type='text' name='user' size='40'/><br/>
    Lastname<br/>
    <input type='text' name='lastname' size='40'/>
    </fieldset>

    วันศุกร์ที่ 19 กรกฎาคม พ.ศ. 2556

    นำรูปภาพมาทำปุ่ม Submit

    นำรูปภาพมาทำปุ่ม Submit
    ปกติแล้วเราจะสร้างปุ่ม Submit สักปุ่มนั้นส่วนมากก็จะมีรูปแบบที่ไม่สวยงาม หรืออาจไม่ถูกใจผู้พัฒนา ดังนั้นเราสามารถสร้างปุ่มกดจากโปรแกรมอื่นๆเช่น Photoshop หรือโปรแกรมอื่นตามแต่ใครถนัดจากนั้นก็สามารถนำมาใช้แทนปุ่มกดแบบเดิมๆได้ ตัวอย่างปุ่ม Submit แบบเดิมหลังจากที่เราสร้างปุ่มจากโปรแกรมตกแต่งภาพเสร็จเรียบร้อยก็สามารถเขียน Code เรียกใช้งานได้ดังตัวอย่างด้านล่าง

    ตัวอย่าง
    ชื่อผู้ใช้งาน
    รหัสผ่าน


    source code

    <input type='image' name='submit' src='http://www.upfile.codewebphp.com/files/register.gif' border='0' title='ทดสอบใช้รูปภาพเป็นปุ่มกด'/>

    หมายเหตุ * Code บรรทัดสีแดงให้เปลี่ยนเป็น PART ที่เก็บไฟล์รูปของคุณ เช่น src='images/register.gif'

    ทำ Select เมื่อนำเมาท์ไปชี้

    ทำ Select เมื่อนำเมาท์ไปชี้
    การทำ Select เมื่อนำเมาท์ไปชี้นั้นเราจะเห็นได้จากเว็ปที่ให้บริการ upload ไฟล์ต่างๆซึ่งเมื่อนำเมาท์ไปชี้ที่ Link แล้วจะทำการ Select ให้ทันที

    ตัวอย่าง


    source code

    <input type='text' name='testlink' size='50' value='http://script-codephp.blogspot.com/' onmouseover='this.select()'/>

    หมายเหตุ * Code บรรทัดสีแดง สามารถเปลี่ยนเป็นค่าอื่นๆที่ต้องการได้ เช่นระบุค่าตัวแปรลงไป
    value='$sumvalue' เป็นต้น

    วันพุธที่ 17 กรกฎาคม พ.ศ. 2556

    สร้างเมนูสวยๆด้วย CSS

    สร้างเมนูสวยๆด้วย CSS สวัสดีครับ วันนี้มาสร้างเมนูสวยๆไว้ใช้งานในเว็ปไซต์กัน สามารถนำไปตกแต่งแก้ไขให้เข้ากับเว็ปไวต์ท่านได้ตามต้องการครับ

    ตัวอย่าง

    ดาวส์โหลดไฟล์รูป Background ประกอบ คลิกที่นี่
    source code

    ไฟล์ .CSS
    .blue #slatenav{position:relative;display:block;height:42px;font-size:11px;font-weight:bold;background:transparent url('http://www.upfile.codewebphp.com/files/blueslate_background.gif') repeat-x top left;font-family:Arial,Verdana,Helvitica,sans-serif;text-transform:uppercase;}
    .blue #slatenav ul{margin:0px;padding:0;list-style-type:none;width:auto;}
    .blue #slatenav ul li{display:block;float:left;margin:0 1px 0 0;}
    .blue #slatenav ul li a{display:block;float:left;color:#D5F1FF;text-decoration:none;padding:14px 22px 0 22px;height:28px;}
    .blue #slatenav ul li a:hover,.blue #slatenav ul li a.current{color:#fff;background:transparent url('http://www.upfile.codewebphp.com/files/blueslate_backgroundOVER.gif') no-repeat top center;}

    ไฟล์แสดงเมนู
    <div class="blue">
    <div id="slatenav">
    <ul>
    <li><a href="#" title="css menus" class="current">Home</a></li>
    <li><a href="#" title="css menus">About Us</a></li>
    <li><a href="#" title="css menus">Services</a></li>
    <li><a href="#" title="css menus">Our Work</a></li>
    <li><a href="#" title="css menus">Contact Us</a></li>
    </ul>
    </div>
    </div>


    หมายเหตุ * code บรรทัดสีแดงให้เปลี่ยนที่อยู่รูปภาพพื้นหลังของเมนูให้ตรงกับ PART ที่เก็บไฟล์ภาพของคุณ เช่น url('images/blueslate_background.gif')

    วันอังคารที่ 16 กรกฎาคม พ.ศ. 2556

    ตรวจสอบการกรอกฟิลด์ E-mail (อีเมล์)

    ตรวจสอบการกรอกฟิลด์ E-mail (อีเมล์) การตรวจสอบการกรอกอีเมล์นั้นไม่สามารถใช้การตรวจสอบแบบ text ได้เนื่องจากอาจมีการกรอกข้อมูลที่ผิดรูปแบบของอีเมล์ ซึ่งควรมี Script มาตรวจสอบเบื้องต้นด้วย วิธีการทดสอบลองระบุข้อมูลที่ไม่ใช่รูปแบบอีเมล์ลงไป หลังจากคลิก "ตรวจสอบอีเมล์" จะมีข้อความแจ้งให้กรอกข้อมูลใหม่
    ตัวอย่าง

    source code

    <script type='text/javascript'>
    function check_email(elm){
        var regex_email=/^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*\@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.([a-zA-Z]){2,4})$/
        if(!elm.value.match(regex_email)){
            alert('Your e-mail not working! please try agian');
        }else{
    alert('you email true');
    }
    }
    </script>
    <input name="email" onblur="check_email(this)" size="45" type="text" />

    วันอาทิตย์ที่ 14 กรกฎาคม พ.ศ. 2556

    Alert Confirm ทำให้มีการแจ้งเตือนก่อนคลิก Delete

    Alert Confirm ทำให้มีการแจ้งเตือนก่อนคลิก Delete ในการลบข้อมูลใดๆนั้นบางทีผู้ใช้อาจคลิกโดยไม่ได้ตั้งใจทำให้ข้อมูลอาจสูญหายได้  ดังนั้นต้องทำ Alert เพื่อให้ผู้ใช้คลิกยืนยันอีกครั้งในการกระทำนั้นๆ
    ตัวอย่าง
    firstname lastname address telephone edit delete
    testfirtname testlastname testaddress +66999-999-999


    source code
    <input name="submit" onclick="return confirm('คุณต้องการลบข้อมูลที่เลือก')" type="submit" value="Delete" />

    Check validate() ตรวจสอบการใส่ข้อความใน Textbox

    Check validate() ตรวจสอบการใส่ข้อความใน Textbox
    วันนี้มานำเสนอการตรวจสอบการกรอกข้อมูลใน Textbox ในกรณีที่เป็นฟิลด์ที่จำเป็นต้องระบุ  ซึ่งการตรวจสอบนั้นจะมีหลายอย่างทั้ง javascript และอื่นๆอีกมากมาย ทดสอบดดยไม่ต้องระบุค่าใดๆลงใน Textbox จากนั้นคลิกที่ตรวจสอบค่า จะมี Alert แจ้งให้ทำการใส่ข้อมูลลงไปก่อน

    ตัวอย่าง

    Username


    source code

    <script language="javascript">
    function checkvalidate()
    {
    if (document.form1.user.value == ""){
    alert('Please in put your name');
    document.form1.user.focus();
    return false;
    }
    document.form1.submit();
    }
    </script>
    <form name='form1' action='#' method='POST' onsubmit="javascript:return checkvalidate();"/> <input type='text' name='user' size='30'/>
    <input type='submit' name='submit' value='ตรวจสอบค่า'/>
    </form>



    วันเสาร์ที่ 13 กรกฎาคม พ.ศ. 2556

    สร้างหน้า Login สวยๆ ด้วย CSS

    สวัสดีครับ วันนี้มานำเสนอการสร้าง From สำหรับ Login ด้วย CSS เพื่อให้ดูสวยงามน่าใช้ โดยการใช้งานนั้นแล้วแต่จะถนัดนะครับใครถนัดแบบ inline ก็ใช้แบบนั้น หรือใครถนัดแบบแยกที่เก็บก็ตามถนัดครับ ดูตัวอย่างหน้าLogin ได้ด้านล่างครับ

    ตัวอย่าง
    USERNANE
    PASSWORD

    source code

    ไฟล์ .CSS
    .mytables{ width: 80%; border: 1px solid #DDDDDD; border-radius: 5px; padding: 10px; }
    .mytables td{ font-family: verdana; color: #666666; font-size: 12px; }
    .tblogin{ border: 1px solid #DDDDDD; width: 300px; height: 30px; }

    ไฟล์ login.php

    <table class='mytables' ailgn='center'>
    <tr>
    <td>USERNANE</td>
    </tr>
    <tr>
    <td><input type='text' name='username' class='tblogin'/></td>
    </tr>
    <tr>
    <td>PASSWORD</td>
    </tr>
    <tr>
    <td><input type='password' name='pass' class='tblogin'/></td>
    </tr>
    <tr>
    <td><input type='submit' name='submit' class='myButton' value='เข้าสู่ระบบ'/>
    </tr>
    </table>

    เปลี่ยนสีบรรทัดเมื่อชี้เมาท์

    วิธีการเปลี่ยนสีบรรทัดของตาราง สามารถแทรกโค๊ดลงไปที่ tag <tr> ได้เลย
    การเปลี่ยนสีของบรรทัดของตารางเมื่อนำเมาท์ไปชี้นั้นสามารถทำได้หลายวิธี แต่ขอเสนอวิธีที่ง่ายและไม่ต้องใช้ Java Script ที่ยาวๆก็สามารถทำได้ดูตัวอย่างจากตารางด้านล่าง

    ตัวอย่าง

    ชื่อ นามสกุล ประเทศ
    name1 Lastname1 Thai
    source code

    style="background-color:#FFFFFF" onmouseover="this.style.backgroundColor='#EEEEEE';" onmouseout="this.style.backgroundColor='#FFFFFF';"

    อธิบายเพิ่มเติม
    สามารถเปลี่ยน #FFFFFF คือรหัสสีจากตัวอย่างคือสีขาว พอชี้เมาท์สีจะเปลี่ยนเป็น #EEEEEE สีเทา