วันอาทิตย์ที่ 30 พฤศจิกายน พ.ศ. 2557

ข้อสอบ o-net

1)ข้อใดเป็นความหมายของภาษาเครื่อง
ก.ภาษาที่ใช้เขียนโปรแกรม เช่น ภาษาจาวา
ข.ภาษาที่ใช้เขียนโปรแกรมเพื่อควบคุมอุปกรณ์คอมพิวเตอร์โดยเฉพาะ
ค.ภาษาที่ประกอบด้วยตัวเลขล้วนซึ่งคอมพิวเตอร์ใช้ประมวลผลได้ทันที
ง.ภาษาที่สร้างขึ้นเพื่ออำนวยความสะดวกในการเขียนคำสั่งมาจากคำศัพท์ภาษาอังกฤษ
2)ข้อใดต่อไปนี้ไม่ใช่ประโยชน์โดยตรงของการพาณิชย์อิเล็กทรอนิกส์
ก.ลดค่าใช้จ่ายในการลงทุน
ข.สามารถใช้บริการได้ทุกที่ทุกเวลา
ค.สามารถคำนวณรายรับ รายจ่ายและภาษีได้ละเอียดและถูกต้อง
ง.สามารถให้ข้อมูลลูกค้าได้อย่างละเอียดและถูกต้องเป็นปัจจุบัน
3)ประเทศกำลังพัฒนามีการใช้งานระบบเครือข่ายการสื่อสารไร้สายอย่างกว้างขวางเนื่องมาจากสาเหตุหลักใด
ก.การวางสายระบบเครือข่ายสื่อสารใช้งบลงทุนสูง
ข.อุปกรณ์เชื่อมต่อเครือข่ายไร้สายมีราคาถูก หาซื้อง่าย
ค.อุปกรณ์เชื่อมต่อเครือข่ายไร้สายมีขนาดเล็ก น้ำหนักเบา ติดตั้งง่าย
ง.สามารถเคลื่อนย้ายอุปกรณ์คอมพิวเตอร์ที่เชื่อมต่อกับเครือข่ายการสื่อสารไร้สายได้สะดวก
4)งานเอกสารที่สามารถใช้แลกเปลี่ยนกัน บนทุกระบบปฏิบัติการในปัจจุบันคือเอกสารมาตรฐานชนิดใด
ก.Open Office Writer
ข.Microsoft Office Word
ค.Portable Document Format
ง.Graphics Interchange Format
5)ข้อใดเป็นระบบปฏิบัติการทั้งหมด
ก.Solaris , Symbian , IPX , RAM
ข.DOS , WWW , Linux , Windows
ค.Symbian , Mac OS , Linux , Windows
ง.Unix , Linux , Mac OS , Microsoft Office
6)ถ้าต้องการบันทึก และวิเคราะห์คะแนนของนักเรียน และแสดงข้อมูลสรุปในรูปแบบของแผนภูมิซอฟต์แวร์ประเภทใดเหมาะสมที่สุด
ก.ซอฟต์แวร์ฐานข้อมูล (database)
ข.ซอฟต์แวร์นำเสนอ (presentation)
ค.ซอฟต์แวร์ตารางทำงาน (spread sheet)
ง.ซอฟต์แวร์ประมวลคำ (word processing)
7)ใช้อุปกรณ์คอมพิวเตอร์อย่างไรจึงช่วยลดภาวะโลกร้อน
ก.เลือกใช้จอแอลซีดีและปรับปรุงซอฟต์แวร์ให้ทันสมัย
ข.ไม่เชื่อมต่อระบบเครือข่ายและใช้เครื่องพิมพ์แบบเลเซอร์
ค.ใช้คอมพิวเตอร์วันละ 1 ชม. และรักษาความสะอาดอยู่เสมอ
ง.ใช้งานเมื่อทำงานที่มีประโยชน์และจำเป็น ไม่เปิดเครื่องทิ้งไว้
8)ถ้าต้องการถนอมอายุการใช้งานของเครื่องคอมพิวเตอร์ ผู้ใช้งานต้องปฏิบัติข้อใด
ก.ใช้เครื่องสำรองไฟ (UPS) และตรวจสอบสภาพฮาร์ดแวร์เป็นประจำ
ข.รักษาความสะอาดของอุปกรณ์คอมพิวเตอร์อยู่เป็นประจำ และใช้คีย์บอร์ดและเมาส์ไร้สาย
ค.เชื่อมต่อคอมพิวเตอร์กับอุปกรณ์ต่าง ๆ ด้วยสายคุณภาพสูง และพักเครื่องโดยการปิดเครื่องเป็นระยะ
ง.ไม่วางอุปกรณ์คอมพิวเตอร์ในห้องที่อุณหภูมิสูงและไม่รับประทานอาหารและเครื่องดื่มใกล้เครื่องคอมพิวเตอร์
9)ผังแสดงการจัดการข้อมูลและสารสนเทศ ของคะแนนวิชาคณิตศาสตร์และคอมพิวเตอร์เป็นดังนี้
ก.การสรุปผล
ข.การคำนวณ
ค.การจัดกลุ่มข้อมูล
ง.การจัดเรียงข้อมูล
10)อุปกรณ์คอมพิวเตอร์ใดต่อไปนี้ จัดเป็นหน่วยรับเข้าและส่งออก
ก.เมาส์ (mouse)
ค.จอภาพแบบสัมผัส (touch screen)
ข.ฮาร์ดดิสก์ (hard disk)
ง.เครื่องบันทึกแผ่นซีดี (CD-writer)

ฟังก์ชันใน PHP

ฟังก์ชันในโปรแกรมส่วนใหญ่ได้รับการเรียกคำสั่งเพื่อทำงานอย่างเดียว สิ่งนี้ทำให้คำสั่งอ่านได้ง่ายและยอมให้ใช้คำสั่งใหม่แต่ละครั้งเมื่อต้องการทำงานเดียวกัน
ฟังก์ชันเป็นโมดูลเก็บคำสั่งที่กำหนดการเรียกอินเตอร์เฟซ ทำงานเดียวกัน และตัวเลือกส่งออกค่าจากการเรียกฟังก์ชัน คำสั่งต่อไปเป็นการเรียกฟังก์ชันอย่างง่าย
my_function ();
คำสั่งเรียกฟังก์ชันชื่อ my_function ที่ไม่ต้องการพารามิเตอร์ และไม่สนใจค่าที่อาจจะส่งออกโดยฟังก์ชันนี้
ฟังก์ชันจำนวนมากได้รับการเรียกด้วยวิธีนี้ เช่น ฟังก์ชัน phpinfo () สำหรับแสดงเวอร์ชันติดตั้งของ PHP สารสนเทศเกี่ยวกับ PHP การตั้งค่าแม่ข่ายเว็บ ค่าต่างๆ ของ PHP และตัวแปร ฟังก์ชันนี้ไม่ใช้พารามิเตอร์และโดยทั่วไปไม่สนใจค่าส่งออก ดังนั้นการเรียก phpinfo () จะประกอบขึ้นดังนี้
phpinfo ();

การกำหนดฟังก์ชันและการเรียกฟังก์ชัน

การประกาศฟังก์ชันเริ่มต้นด้วยคีย์เวิร์ด function กำหนดชื่อฟังก์ชัน พารามิเตอร์ที่ต้องการ และเก็บคำสั่งที่จะประมวลผลแต่ละครั้งเมื่อเรียกฟังก์ชันนี้
<?php
function function_name(parameter1,…)
{
ชุดคำสั่ง …
}
?>
ชุดคำสั่งต้องเริ่มต้นและสิ้นสุดในวงเล็บปีกกา ({ }) ตัวอย่างฟังก์ชัน my_function
<?php
function my_function()
{
$mystring =<<<BODYSTRING
my function ได้รับการเรียก
BODYSTRING;
echo $mystring;
}
?>
การประกาศฟังก์ชันนี้ เริ่มต้นด้วย function ดังนั้นผู้อ่านและตัวกระจาย PHP ทราบว่าต่อไปเป็นฟังก์ชันกำหนดเอง ชื่อฟังก์ชันคือ my_function การเรียกฟังก์ชันนี้ใช้ประโยคคำสั่งนี้
my_function ();
การเรียกฟังก์ชันนี้จะให้ผลลัพธ์เป็นข้อความ "my function ได้รับการเรียก " บน browser

การตั้งชื่อฟังก์ชัน

สิ่งสำคัญมากในการพิจารณาเมื่อตั้งชื่อฟังก์ชันคือชื่อต้องสั้นแต่มีความหมาย ถ้าฟังก์ชันสร้างส่วนตัวของเพจควรตั้งชื่อเป็น pageheader () หรือ page_header ()
ข้อจำกัดในการตั้งชื่อคือ
  • ฟังก์ชันไม่สามารถมีชื่อเดียวกับฟังก์ชันที่มีอยู่
  • ชื่อฟังก์ชันสามารถมีได้เพียงตัวอักษรตัวเลข และ underscore
  • ชื่อฟังก์ชันไม่สามารถเริ่มต้นด้วยตัวเลข
หลายภาษายอมให้ใช้ชื่อฟังก์ชันได้อีก ส่วนการทำงานนี้เรียกว่า function overload อย่างไรก็ตาม PHP ไม่สนับสนุน function overload ดังนั้นฟังก์ชันไม่สามารถมีชื่อเดียวกันกับฟังก์ชันภายใน หรือฟังก์ชันกำหนดเองที่มีอยู่
หมายเหตุ ถึงแม้ว่าทุกสคริปต์ PHP รู้จักฟังก์ชันภายในทั้งหมด ฟังก์ชันกำหนดเองอยู่เฉพาะในสคริปต์ที่ประกาศสิ่งนี้หมายความว่า ชื่อฟังก์ชันสามารถใช้ในคนละไฟล์แต่อาจจะไปสู่ความสับสน และควรหลีกเลียง
ชื่อฟังก์ชันต่อไปนี้ถูกต้อง
name ()
name2 ()
name_three ()
_namefour ()
ชื่อไม่ถูกต้อง
5name ()
Name-six ()
fopen ()
การเรียกฟังก์ชันไม่มีผลจากชนิดตัวพิมพ์ ดังนั้นการเรียก function_name (), Function_Name() หรือ FUNCTION_NAME() สามารถทำได้และมีผลลัพธ์เหมือนกัน แต่แบบแผนการกำหนดชื่อฟังก์ชันใน PHP ให้ใช้ตัวพิมพ์เล็ก
ชื่อฟังก์ชันแตกต่างจากชื่อตัวแปร โดยชื่อตัวแปรเป็นชนิดตัวพิมพ์มีผล ดังนั้น $Name และ $name เป็น 2 ตัวแปร แต่ Name () และ name () เป็นฟังก์ชันเดียวกัน

การหยุดประมวลผลภายในฟังก์ชัน

คีย์เวิร์ด return หยุดการประมวลผลฟังก์ชัน ฟังก์ชันสิ้นสุดได้เพราะประโยคคำสั่งทั้งหมดได้รับการประมวลผล หรือ ใช้คีย์เวิร์ด return การประมวลผลกลับไปยังประโยคคำสั่งต่อจากการเรียกฟังก์ชัน
<?php
function division($x, $y)
{
if ($y == 0 || !isset($y))
{
echo " ตัวหาร y ต้องไม่เป็นศูนย์หรือไม่มีค่า" ;
return;
}
$result = $x / $y;
echo $result;
}
?>
ถ้าประโยคคำสั่ง return ได้รับการประมวลผล บรรทัดคำสั่งต่อไปในฟังก์ชันจะถูกข้ามไป และกลับไปยังผู้เรียกฟังก์ชันนี้ ในฟังก์ชันนี้ ถ้า y เป็น 0 จะหยุดการประมวลผล ถ้า y ไม่เท่ากับ 0 จะคำนวณผลหาร
สมมติป้อนค่าเป็น
x = 4, y = 0
x = 4
x = 4, y = 2
ผลลัพธ์ของคำสั่ง คือ
x = 4, y = 0 ผลลัพธ์ ตัวหาร y ต้องไม่เป็นศูนย์หรือไม่มีค่า
x = 4, y = ผลลัพธ์ ตัวหาร y ต้องไม่เป็นศูนย์หรือไม่มีค่า
x = 4, y = 2 ผลลัพธ์ 2

การเรียกฟังก์ชัน

เมื่อฟังก์ชันได้รับการประกาศหรือสร้างขึ้นแล้ว การเรียกฟังก์ชันสามารถเรียกมาจากที่ใดๆ ภายในสคริปต์ หรือ จากไฟล์ที่มีการรวมด้วยประโยคคำสั่ง include() หรือ require()
ตัวอย่าง ฟังก์ชัน show_message() เก็บอยู่ในไฟล์ fn_ 03 _keeper.php ส่วนผู้เรียกอยู่ในสคริปต์ fn_ 03 _caller.php
<?php
include("fn_ 03 _keeper.php");
show_message();
?>

พารามิเตอร์

ตามปกติฟังก์ชันส่วนใหญ่ต้องการรับสารสนเทศจากผู้เรียกสำหรับการประมวลผล โดยทั่วไปเรียกว่า พารามิเตอร์

ไวยากรณ์พื้นฐาน

การกำหนดฟังก์ให้รับพารามิเตอร์ส่งผ่านโดยการวางข้อมูล ชื่อตัวแปรที่เก็บข้อมูลภายในวงเล็บหลังชื่อฟังก์ชัน การเรียกฟังก์ชันที่ประกอบด้วยพารามิเตอร์เขียนดังนี้
<?php
function show_parameter($param1, $param2, $param3)
{
echo <<<PARAM
รายการพารามิเตอร์ <br/>
param1: $param1 <br/>
param2: $param2 <br/>
param3: $param3 <br/>
PARAM;
}
?>
พารามิเตอร์ที่ส่งไปยังฟังก์ชันแยกกันเครื่องหมายจุลภาคภายในวงเล็บ โดยสามารถส่งเป็นนิพจน์สำหรับแต่ละพารามิเตอร์ด้วย ตัวแปร ค่าคงที่ ผลลัพธ์จากการคำนวณ รวมถึงการเรียกฟังก์ชัน
scope ของพารามิเตอร์จำกัดภายในฟังก์ชัน ถ้าชื่อตัวแปรเหมือนกับตัวแปรใน scope ระดับอื่น พารามิเตอร์นี้ "ระบุ" เป็นตัวแปรภายในที่ไม่มีผลกับตัวแปรภายนอกฟังก์ชัน

การส่งผ่านโดยค่า(By Value)

ตามปกติการส่งผ่านพารามิเตอร์ไปยังฟังก์ชันเป็นการส่งผ่านค่า การเปลี่ยนแปลงจะจำกัดภายในเฉพาะภายในฟังก์ชัน
ตัวอย่างฟังก์ชัน new_value () ที่ยอมให้เพิ่มค่า อาจจะเขียนคำสั่งดังนี้
<?php
function new_value($value, $increment= 1)
{
$value = $value + $increment;
}
$value = 10 ;
new_value($value);
echo "$value<br/>\n";
?>
คำสั่งนี้ใช้ไม่ได้ ผลลัพธ์จะเป็น "10" ค่าใหม่ของ $value ไม่มีการเปลี่ยนแปลง
สิ่งนี้เป็นเพราะกฎ scope คำสั่งนี้สร้างตัวแปรเรียกว่า $value เป็น 10 เมื่อเรียกฟังก์ชัน new_value () ตัวแปร $value ในฟังก์ชันได้รับการสร้างเมื่อเรียกฟังก์ชัน ค่า 1 ได้รับการเพิ่มให้กับตัวแปร ดังนั้นค่าของ $value คือ 11 ภายในฟังก์ชัน จนกระทั่งสิ้นสุดฟังก์ชัน แล้วกลับไปยังคำสั่งที่เรียกภายในคำสั่งนี้ ตัวแปร $value เป็นอีกตัวแปร global scope และไม่มีการเปลี่ยนแปลง

การส่งผ่านโดยการอ้างอิง (By Reference)

ตามตัวอย่างฟังก์ชัน new_value ถ้าต้องการให้ฟังก์ชันเปลี่ยนแปลงค่าได้ มีวิธีหนึ่งในการแก้ไขคือ ประกาศ $value ในฟังก์ชันเป็น global แต่หมายความว่าในการใช้ฟังก์ชันนี้ ตัวแปรที่ต้องการเพิ่มค่าต้องตั้งชื่อเป็น $value แต่มีวิธีดีกว่าคือ ใช้การส่งผ่านโดยการอ้างอิง
การอ้างอิงไปตัวแปรต้นทางแทนที่มีค่าของตัวเอง การปรับปรุงไปยังการอ้างอิงจะมีผลกับตัวแปรต้นทางด้วย
การระบุพารามิเตอร์ที่ใช้การส่งผ่านโดยการอ้างอิงให้วาง ampersand (&) หน้าชื่อพารามิเตอร์ในข้อกำหนดฟังก์ชัน
ตัวอย่าง new_value () ได้รับปรับปรุงให้มี 1 พารามิเตอร์ส่งผ่านโดยการอ้างอิงและทำงานได้อย่างถูกต้อง
<?php
function new_value(&$value, $increment=1)
{
$value = $value + $increment;
}
?>
คำสั่งทดสอบฟังก์ชัน ให้พิมพ์ 10 ก่อนการเรียก increment () และ 11 ภายหลัง
ในการส่งค่าโดยการอ้างอิงต้องส่งเป็นตัวแปรไม่สามารถกำหนดค่าคงที่โดยตรง

จำนวนตัวแปรของพารามิเตอร์

การส่งผ่านพารามิเตอร์ไปยังฟังก์ชันนั้น การควบคุมของ PHP ได้กำหนดฟังก์ชันจำนวนหนึ่งให้ยอมรับจำนวนตัวแปรของพารามิเตอร์ ได้แก่ func_num_args, func_get_arg และ func_get_args
func_num_args() บอกจำนวนพารามิเตอร์ไปยังฟังก์ชันที่เรียก func_get_arg() แสดงค่าของพารามิเตอร์ตามดัชนี และ func_get_args() ส่งออก array ของพารามิเตอร์
<?php
function show_pass_value()
{
$idx = count(func_get_args());
echo " จำนวนพารามิเตอร์ $idx <br/>\n";
if ($idx > 0)
    echo ">> ใช้ฟังก์ชัน func_get_arg<br/>\n";
for ($i = 0 ; $i < $idx; $i++)
{
echo " พารามิเตอร์ที่ $i ค่า: ". func_get_arg($i)."<br/>\n";
}
if ($idx > 0)
    echo ">> ใช้ฟังก์ชัน func_get_args<br/>\n";
$params = func_get_args();
foreach ($params as $index => $val)
{
echo " พารามิเตอร์ที่ $index ค่า: $val<br/>\n";
}
echo " *********<br/>\n";
}
$x = 4 ;
show_pass_value("one", "two", 3 , $x, " ห้า" , " หก") ;
show_pass_value();
?>
ผลลัพธ์
จำนวนพารามิเตอร์ 6
>> ใช้ฟังก์ชัน func_get_arg
พารามิเตอร์ที่ 0 ค่า: one
พารามิเตอร์ที่ 1 ค่า: two
พารามิเตอร์ที่ 2 ค่า: 3
พารามิเตอร์ที่ 3 ค่า: 4
พารามิเตอร์ที่ 4 ค่า: ห้า
พารามิเตอร์ที่ 5 ค่า: หก
>> ใช้ฟังก์ชัน func_get_args
พารามิเตอร์ที่ 0 ค่า: one
พารามิเตอร์ที่ 1 ค่า: two
พารามิเตอร์ที่ 2 ค่า: 3
พารามิเตอร์ที่ 3 ค่า: 4
พารามิเตอร์ที่ 4 ค่า: ห้า
พารามิเตอร์ที่ 5 ค่า: หก
*********
จำนวนพารามิเตอร์ 0
*********

Scope

เมื่อต้องการใช้ตัวแปรภายในไฟล์ที่รวม ต้องมีการประกาศตัวแปรเหล่านั้นก่อนประโยคคำสั่ง require () หรือ include () แต่เมื่อใช้ฟังก์ชันจะเป็นการส่งผ่านตัวแปรเชิงประจักษ์เหล่านั้นไปยังฟังก์ชัน บางส่วนเป็นเพราะไม่มีกลไกส่งผ่านตัวแปรเชิงประจักษ์ไปยังไฟล์ที่รวม และบางส่วนเป็นเพราะ scope ของตัวแปรของฟังก์ชันแตกต่างกัน
การควบคุม scope ของตัวแปรเป็นการทำให้ตัวแปรมองเห็นได้ ใน PHP มีกฎตั้งค่า scope ดังนี้
  • การประกาศตัวแปรภายในฟังก์ชันอยู่ใน scope จากประโยคคำสั่งซึ่งตัวแปรให้รับการประกาศภายในวงเล็บปีกกา สิ่งนี้เรียกว่า function scope ตัวแปรเรียกว่า local variable
  • การประกาศตัวแปรภายนอกฟังก์ชันอยู่ใน scope จากประโยคคำสั่งซึ่งตัวแปรได้รับการประกาศที่สิ้นสุดแต่ไม่ใช้ภายในฟังก์ชัน สิ่งนี้เรียกว่า global scope ตัวแปรเรียกว่า global variable
  • การใช้ประโยคคำสั่ง require () และ include () ไม่มีผลกับ scope ถ้าประโยคคำสั่งได้รับการใช้ภายในฟังก์ชัน ประยุกต์ด้วย function scope ถ้าไม่ได้อยู่ภายในฟังก์ชัน ประยุกต์ด้วย global scope
  • คีย์เวิร์ด global สามารถระบุได้เองเพื่อกำหนดหรือใช้ตัวแปรภายในฟังก์ชันให้มี scope เป็น global
  • ตัวแปร สามารถลบโดยการเรียก unset ($variable_name) และตัวแปรที่ unset จะไม่มี scope
  • ตัวแปรระดับ superglobal สามารถเข้าถึงได้ทุกส่วนในสคริปต์

ตัวแปรระดับฟังก์ชัน

ตัวแปรระดับฟังก์ชันหรือ local variable เป็นการประกาศเพื่อใช้เฉพาะภายในฟังก์ชัน ไม่สามารถเรียกจากภายนอกฟังก์ชันได้
<?php
$newline = <<<NLSTRING
<br/>\n
NLSTRING;
$var_global = 10 ;
function show_value()
{
global $newline;
$var_local= 75 ;
echo "\$var_local 1: $var_local";
echo $newline;
}
show_value();
echo "\$var_global : $var_global";
echo $newline;
echo "\$var_local 2: $var_local";
echo $newline;
?>
ผลลัพธ์
$var_global 1 :
$var_local 1: 75
$var_global 2: 10
$var_local 2:
ตามตัวอย่างนี้ ตัวแปรระดับฟังก์ชัน $var_local ไม่สามารถแสดงผลในการพิมพ์ภายนอกฟังก์ชัน show_value() และ $var_global ที่เป็นตัวแปรระดับ global ไม่สามารถแสดงผลภายใน show_value() เพราะมี scope ต่างกัน

ตัวแปรระดับ global

ถ้าต้องการนำตัวแปรระดับ global มาใช้ภายในฟังก์ชันต้องประกาศด้วยคีย์เวิร์ด global ก่อนประโยคคำสั่งที่ใช้ตัวแปรนั้น ตัวอย่าง ฟังก์ชัน show_value() ใช้ $newline จากภายนอกฟังก์ชัน
global $newline;

ตัวแปรสถิตย์

การประกาศตัวแปรสถิตย์ใช้ คีย์เวิร์ด static เมื่อมีการเรียกใช้ฟังก์ชัน โปรแกรมจะกำหนดค่าตัวแปรตามที่ระบุเพียงครั้งเดียว ถ้าเรียกซ้ำอย่างต่อเนื่องค่านี้จะเปลี่ยนแปลงตามการคำนวณ
<?php
function increment()
{
static $increase = 5 ;
$increase++;
echo $increase."<br/>\n";
}
$end = 5 ;
for ($i = 1 ; $i < $end; $i++)
    increment();
?>
ผลลัพธ์
6
7
8
9
ค่าของตัวแปรสถิตย์ได้รับการตั้งทุกครั้งเมื่อเรียกใช้ในครั้งต่อไป

การส่งออกค่าจากฟังก์ชัน

การส่งค่าออกจากฟังก์ชันใช้คีย์เวิร์ด return เช่นเดียวกับการออกจากฟังก์ชันได้ ถ้าไม่มีการระบุส่งออกฟังก์ชันจะส่งค่า NULL
ตัวอย่าง ฟังก์ชัน get_larger () สาธิตการส่งออกค่า
<?
function get_larger($x=NULL, $y=NULL)
{
if (!isset($x) || !isset($y))
    return " ไม่มีการส่งค่า" ;
if ($x > $y)
    return $x;
else if ($x < $y)
    return $y;
else
    return " ค่าเท่ากัน" ;
}
$sends = array();
$sends[0] = array('x' =>5);
$sends[1] = array('x' =>9, 'y'=>3);
$sends[2] = array('x' =>5, 'y'=>8);
$sends[3] = array('x' =>4, 'y'=>4);
foreach ($sends as $send)
{
echo "x = ".$send['x']." y = ".$send['y']." : ค่า - > "
.get_larger($send['x'], $send['y']);
echo "<br/>\n";
}
?>
ผลลัพธ์
x = 5 y = : ค่า - > ไม่มีการส่งค่า
x = 9 y = 3 : ค่า - > 9
x = 5 y = 8 : ค่า - > 8
x = 4 y = 4 : ค่า - > ค่าเท่ากัน
ฟังก์ชันที่ทำงานอาจเดียว แต่ไม่จำเป็นต้องส่งออกค่า มักจะส่งออก TRUE หรือ FALSE เพื่อระบุความสำเร็จหรือล้มเหลว ค่า TRUE หรือ FALSE สามารถได้รับการแสดงแทนด้วย 1 หรือ 0

Recursion

recursion ได้รับการสนับสนุนใน PHP ฟังก์ชันชนิดนี้เป็นการเรียกตัวเองและเป็นประโยชน์กับการบังคับโครงสร้างข้อมูลไดนามิคส์ เช่น รายการเชื่อมโยงและโครงสร้างต้นไม้ (tree)
โปรแกรมประยุกต์เว็บจำนวนไม่มากต้องการโครงสร้างข้อมูลซับซ้อนมากและจำกัดการใช้ เนื่องจาก recursion ช้ากว่าและใช้หน่วยความจำมากกว่าการทำงานวนรอบ ดังนั้นควรเลือกการทำงานแบบวนรอบปกติ ถ้าเป็นไปได้
ตัวอย่างการประยุกต์แบบย้อนกลับตัวอักษร
<?php
function word_reverse_r($str)
{
if (strlen($str)>0)
    word_reverse_r(substr($str, 1));
echo substr($str, 0, 1);
return;
}
function word_reverse_i($str)
{
for ($i=1; $i<=strlen($str); $i++)
{
echo substr($str, -$i, 1);
}
return;
}
?>
รายการคำสั่งของ 2 ฟังก์ชันนี้จะพิมพ์ข้อความย้อนกลับ ฟังก์ชัน word_reverse_r เป็น recursion ฟังก์ชัน word_reverse_i เป็นการวนรอบ
ฟังก์ชัน word_reverse_r ใช้ข้อความเป็นพารามิเตอร์ เมื่อมีการเรียกฟังก์ชันนี้ จะเกิดการเรียกตัวเองแต่ละครั้งส่งผ่านตัวอักษรที่ 2 ไปถึงตัวอักษรสุดท้าย
การเรียกฟังก์ชันแต่ละครั้งจะทำสำเนาใหม่ของคำสั่งในหน่วยความจำของแม่ข่าย แต่ด้วยพารามิเตอร์ต่างกัน ดังนั้นจึงเหมือนกับการเรียกคนละฟังก์ชัน

DATABASE คืออะไร

Database 


          Database หรือ ฐานข้อมูล คือ กลุ่มของข้อมูลที่ถูกเก็บรวบรวมไว้ โดยมีความสัมพันธ์ซึ่งกันและกัน โดยไม่ได้บังคับว่าข้อมูลทั้งหมดนี้จะต้องเก็บไว้ในแฟ้มข้อมูลเดียวกันหรือแยกเก็บหลาย ๆ แฟ้มข้อมูล

          ระบบฐานข้อมูล (Database System) คือ ระบบที่รวบรวมข้อมูลต่าง ๆ ที่เกี่ยวข้องกันเข้าไว้ด้วยกันอย่างมีระบบมีความสัมพันธ์ระหว่างข้อมูลต่าง ๆ ที่ชัดเจน ในระบบฐานข้อมูลจะประกอบด้วยแฟ้มข้อมูลหลายแฟ้มที่มีข้อมูล เกี่ยวข้องสัมพันธ์กันเข้าไว้ด้วยกันอย่างเป็นระบบและเปิดโอกาสให้ผู้ใช้สามารถใช้งานและดูแลรักษาป้องกันข้อมูลเหล่านี้ ได้อย่างมีประสิทธิภาพ โดยมีซอฟต์แวร์ที่เปรียบเสมือนสื่อกลางระหว่าง
ผู้ใช้และโปรแกรมต่าง ๆ ที่เกี่ยวข้องกับการใช้ฐานข้อมูล เรียกว่า ระบบจัดการฐานข้อมูล หรือ DBMS (data base management system)มีหน้าที่ช่วยให้ผู้ใช้เข้าถึงข้อมูลได้ง่ายสะดวกและมีประสิทธิภาพ การเข้าถึงข้อมูลของผู้ใช้อาจเป็นการสร้างฐานข้อมูล การแก้ไขฐานข้อมูล หรือการตั้งคำถามเพื่อให้ได้ข้อมูลมา โดยผู้ใช้ไม่จำเป็นต้องรับรู้เกี่ยวกับรายละเอียดภายในโครงสร้างของฐานข้อมูล 

  

ประโยชน์ของฐานข้อมูล
    1 ลดการเก็บข้อมูลที่ซ้ำซ้อน ข้อมูลบางชุดที่อยู่ในรูปของแฟ้มข้อมูลอาจมี
ปรากฏอยู่หลาย ๆ แห่ง เพราะมีผู้ใช้ข้อมูลชุดนี้หลายคน เมื่อใช้ระบบฐานข้อมูลแล้วจะช่วยให้
ความซ้ำซ้อนของข้อมูลลดน้อยลง
    2 รักษาความถูกต้องของข้อมูล เนื่องจากฐานข้อมูลมีเพียงฐานข้อมูลเดียว ใน
กรณีที่มีข้อมูลชุดเดียวกันปรากฏอยู่หลายแห่งในฐานข้อมูล ข้อมูลเหล่านี้จะต้องตรงกัน ถ้ามีการ
แก้ไขข้อมูลนี้ทุก ๆ แห่งที่ข้อมูลปรากฏอยู่จะแก้ไขให้ถูกต้องตามกันหมดโดยอัตโนมัติด้วย
ระบบจัดการฐานข้อมูล
    3 การป้องกันและรักษาความปลอดภัยให้กับข้อมูลทำได้อย่างสะดวก การ
ป้องกันและรักษาความปลอดภัยกับข้อมูลระบบฐานข้อมูลจะให้เฉพาะผู้ที่เกี่ยวข้องเท่านั้น 
ซึ่งก่อให้เกิดความปลอดภัย(security) ของข้อมูลด้วย

ข้อมูลอ้างอิง
http://www.comsrt.net63.net
http://www.spvc.ac.th

โปรแกรม PHP

PHP Creator

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

 

Program Features (คุณสมบัติ และ ความสามารถของ โปรแกรม PHP Creator)
  1. ส่วนการติดตั้งโปรแกรมพื้นฐาน : ส่วนนี้เป็นการติดตั้งโปรแกรมที่จำเป็นสำหรับการใช้งาน PHP และ MYSQL แน่นอนครับไม่มีใครไม่รู้จักนั่นคือ APPSERV ซึ่งมีคุณสมบัติคือติดตั้งครั้งเดียวได้ครบ 3 โปรแกรมหลัก ได้แก่ Apache, PHP5 และ MySQL โดยที่คุณไม่ต้อง SETUP อะไรให้ยุ่งยากเลย
  2. ส่วนของ Editor สำหรับเขียน PHP โดยในส่วนนี้ใช้สำหรับแก้ไข Code ต่างๆ ที่คุณสร้างไว้ ไม่ว่าคุณจะสร้างมาจากอะไร Editor ของเราสามารถแก้ไขได้หมด หรือคุณอาจจะสร้าง Code ใหม่ และบันทึกเป็นชื่อไฟล์ใหม่ก็ได้ และ เมื่อคุณสร้างโค้ดเสร็จสิ้น คุณสามารถทดสอบ Script ที่คุณสร้างได้ทันที โดยการคลิกที่ปุ่ม "ทดสอบ Code" ได้ทันทีเลย
  3. ส่วนของรายชื่อไฟล์ จะให้คุณสามารถเลือกไฟล์ที่ต้องการแก้ไข ได้ง่ายและรวดเร็ว โดยคุณสามารถเลือกคลิกไฟล์ PHP ของคุณ Code ของไฟล์ ก็จะมาปรากฎที่ส่วนแก้ไข (Editor) ทันที และสามารถแก้ไขโค้ด (Code) ได้เลยทันที
  4. ส่วนของปุ่มดำเนินการ Code สำเร็จรูป ในส่วนนี้ ถือเป็นหัวใจของโปรแกรมนี้ เพราะเป็นการสร้าง Code PHP โดยที่คุณไม่ต้องเขียน Code เลย (แต่ต้องนำไปปรับแต่งด้วย HTML อีกครั้งเพื่อความสวยงาม การสร้าง Code อัตโนมัตินี้จะช่วยให้คุณสร้างโค้ด ได้เร็วขึ้นกว่า 70% เลยทีเดียว เพียงคุณกรอกข้อมูล ต่างๆ ในสิ่งที่คุณต้องการ โปรแกรมจะสร้างโค้ด ให้คุณทันที (ดูรายละเอียดวิธีการสร้างโค้ด จากหัวข้อถัดไป
    1. ปุ่ม "เชื่อมต่อฐานข้อมูล MySQL" ปุ่มนี้ โปรแกรมจะให้คุณกรอก Host, Username, Password และ ฐานข้อมูลของคุณ จากนั้นระบบจะสร้างโค้ด สำหรับเชื่อมต่อฐานข้อมูล MySQL ให้ทันที และคุณสามารถบันทึกไว้ใช้ร่วมกับไฟล์อื่นๆ ที่จะสร้างต่อไปในอนาคตได้อีกด้วย และ นอกจากนี้ ในโค้ด ส่วนนี้ยังสามารถตังค่า Session และตัวแปรสำหรับการอ่านวันที่แบบภาษาไทยอีกด้วย โดยคุณกรอกเพียง 4 ช่องใน กล่องข้อความข้างต้น โปรแกรมจะสร้างโค้ด ให้เลยทันที
    2. ปุ่ม "แสดงข้อมูลจากตาราง" ในส่วนของ ปุ่มนี้ โปรแกรมจะสร้างโค้ด เพื่อแสดงข้อมูลจากตาราง MySQL ของคุณ ง่ายๆ โดยที่คุณเพียงระบุชื่อตาราง และฟิวด์ต่างๆ ที่คุณต้องการจากฐานข้อมูล ซึ่งโปรแกรมจะแสดงรายการฟิวด์ และตารางทั้งหมดออกมาให้เลือกอยู่แล้ว จากนั้นกำหนดคุณสมบัติต่างๆ เช่น ฟิวด์ประเภท DATE ก็กำหนดให้เป็นวันที่ โปรแกรมจะทำการแยกข้อมูลออกเป็นวันที่แบบไทย เช่น ในฐานข้อมูลเป็น 2005-10-20 โปรแกรมจะแยกเป็น 20 ตุลาคม 2548 โดยมีการสร้างลิ้งค์เพื่อส่งค่าไปแก้ไข หรือลบรายการใดรายการหนึ่งได้ทันที นอกจากนี้ ระบบยังสามารถสร้างหน้าหลายหน้า หากคุณมีข้อมูลจำนวนมากๆ โดยที่คุณสามารถกำหนดได้ว่าต้องการให้แต่ละหน้า แสดงจำนวนข้อมูล หน้าละกี่ข้อมูลเหมือนกับเว็บบอร์ดอีกด้วย
    3. ปุ่ม "สร้างแบบฟอร์มสำหรับเพิ่มข้อมูล" ปุ่มนี้ใช้สำหรับการสร้างแบบฟอร์ม ที่มีคุณสมบัติครบครัน ทั้งรูปแบบ Hidden, Date, Text, Text Area และ Number แต่ละรูปแบบโปรแกรมจะสร้างคำสั่งสำหรับตรวจสอบต่างกัน เช่น จำนวนตัวอักษรที่ต้องการให้กรอกได้ การทำงานร่วมกับคีย์บอร์ด เมื่อเป็นช่องกรอกสำหรับตัวเลข การสร้าง Combo Box เพื่อรองรับฟิวด์ประเภท DATE ในการแยกวันที่แบบไทย หรือกระทั่งเพิ่มฟิวด์ประเภท Hidden ตามที่คุณต้องการ โดยให้ค่า Value เป็นแบบตายตัว และตัวแปรของ PHP () ได้เช่นกัน นอกจากนี้โปรแกรมจะสร้าง Code สำหรับตรวจสอบค่าว่างต่างๆ พร้อมสร้าง Code ในการบันทึกข้อมูลใหม่ของคุณทันที
    4. ปุ่ม "สร้างแบบฟอร์มสำหรับแก้ไขข้อมูล" โดยปุ่มนี้ ทำงานเหมือนกับ ปุ่มสร้างแบบฟอร์มสำหรับเพิ่มข้อมูล แต่จะทำการรับค่ามาจาก การสร้างแบบฟอร์มแสดงข้อมูล ในลิ้งค์ของ "แก้ไข" ดังนั้น ในโปรแกรมนี้ คุณจะสามารถสร้างรายการ ค้นหา, แสดงข้อมูลแบบตาราง มีการแยกหน้า, แบบฟอร์มเพิ่มข้อมูลใหม่ และแบบฟอร์มสำหรับแก้ไขข้อมูลได้โดยที่คุณไม่ต้องเขียน Code PHP เลย
นอกจากนี้ โปรแกรมยังมีคุณสมบัติในการทดสอบ Script ก่อนทำการบันทึกทับไฟล์เดิมอีกด้วย และยังให้คุณเลือกไฟล์เดิมที่เคยบันทึกไว้แล้วมาแก้ไข Code ได้อีกเช่นกัน หรือคุณยังสามารถทำไฟล์ที่ได้ไปแก้ไข ปรับปรุงสีสันต่างๆ ใน โปรแกรมเขียนโค้ด อย่าง โปรแกรม Notepad++ หรือโปรแกรม EditPlus หรือแม้แต่ โปรแกรมอื่นๆ ก็สามารถทำได้เช่นกัน
Required Program : เนื่องจาก โปรแกรมที่ท่านกำลังจะ ดาวน์โหลด ต่อไปนี้มีความจำเป็นอย่างยิ่ง ที่จะต้องใช้ โปรแกรม MySQL Connector ODBC ซึ่งถ้าใครที่ยังไม่มี ติดตั้งเอาไว้บนเครื่อง ก็ขอให้ดาวน์โหลดไปไว้ประจำเครื่องได้เลย ดาวน์โหลดกันครั้งเดียว และ ติดตั้งครั้งเดียวเท่านั้น
Changelog (รายละเอียดดการปรับปรุง และ เปลี่ยนแปลง โปรแกรม PHP Creator ในแต่ละเวอร์ชั่น)
เวอร์ชั่น 4.22
  1. แก้ไขข้อผิดพลาด ที่เกิดขึ้นจากเวอร์ชั่นที่ผ่านๆ มา
เวอร์ชั่น 4.00
  1. ใช้ทุกออปชั่น ตัวเลือกต่างๆ ได้ในหน้าเดียว
  2. เมนูมีน้อย เข้าใจง่าย
  3. แก้ไขข้อผิดพลาด (Bug) ต่างๆ ที่เกิดขึ้นจากเวอร์ชั่นที่ผ่านๆ มา และ ปรับปรุงต่อ
  4. ไม่ต้องปิดโปรแกรมทุกครั้งที่ สร้างโค้ด
  5. สามารถสร้าง (Code) ได้หลายรูปแบบ เช่น การแสดงข้อมูลเดียว การแสดงข้อมูลแบบหลายหน้า หลายคอลัมน์ จำกัดจำนวนแถว/หน้า
  6. สามารถทดสอบโค้ด (Code) ได้ทันที
  7. และอื่นๆ อีกมากมาย
เวอร์ชั่น 3.00
  1. สามารถเข้าถึงฐานข้อมูล MySQL ได้ทันที โดยที่ไม่ต้องตรวจ หรือพิมพ์ชื่อ Fields ผิด และแสดงข้อมูลไม่ออก หากใครยังไม่เคยใช้เวอร์ชั่น 2.0 ก็ไม่เป็นไร

ระบบการสื่อสารเครือข่าย


รูปแบบการรับ-ส่งข้อมูล
ไม่ว่าจะเป็นการรับ-ส่งข้อมูลแบบขนานหรืออนุกรมสามารถแบ่งได้เป็น
3 แบบดังนี้
    1) การสื่อสารทางเดียว (simplextransmission ) 
ข้อมูลสามารถส่งได้
ทางเดียว โดยแต่ละฝ่ายจะทำหน้าที่อย่างใดอย่างหนึ่ง เช่นเป็นผู้รับหรือผู้ส่ง บางครั้งเรียกการสื่อสาร แบบนี้ว่าการส่งทิศทางเดียว ( unidirectionaltransmission ) เช่น การกระจายเสียงของสถานีโทรทัศน์
หรือสถานีวิทยุ
   2) การสื่อสารสองทางครึ่งอัตรา ( half duplex transmission ) 
สามารถส่งข้อมูลได้ทั้งสองฝ่าย แต่จะต้องผลัดกันส่งและผลัดกันรับ จะส่งและรับพร้อมกันไม่ได้ เช่น วิทยุสื่อสาร ( walkie-talkie radio )
   3) การสื่อสารสองทางเต็มอัตรา ( full duplex transmission ) 
สามารถส่งข้อมูลได้สองทาง โดยที่ผู้รับและผู้ส่งสามารถรับส่งข้อมูลได้ ในเวลาเดียวกันได้ เช่น การสนทนาทางโทรศัพท์คู่สนทนาคุยโต้ตอบได้ ในเวลาเดียวกัน

สื่อกลางในการสื่อสารข้อมูล
     การสื่อสารข้อมูลทุกชนิดต้องอาศัยสื่อกลางในการส่งผ่านข้อมูลเพื่อนำข้อมูลไปยังจุดหมายปลายทาง เช่น การคุยโทรศัพท์อาศัยสายโทรศัพท์
เป็นสื่อกลางในการส่งสัญญาณคลื่นเสียงไปยังผู้รับ เป็นต้น สำหรับการติดต่อสื่อสารระหว่างคอมพิวเตอร์อาจใช้สายเชื่อมต่อผ่าน
อุปกรณ์เชื่อมต่อหรืออาจใช้อุปกรณ์เชื่อมต่อแบบไร้สายเป็นสื่อกลาง
ในการเชื่อมต่อก็ได้ สื่อกลางในการสื่อสารมีความสำคัญเพราะเป็น
ปัจจัยหนึ่งที่กำหนดประสิทธิภาพในการสื่อสาร เช่น ความเร็วในการส่งข้อมูล ปริมาณของขอมูลที่สามารถนำไปได้
ในหนึ่งหน่วยเวลา รวมถึงคุณภาพของการส่งข้อมูล เราจะกล่าวถึง สื่อกลางในการสื่อสารทั้งในแบบใช้สายและแบบไร้สายดังนี้ 
สื่อกลางแบบใช้สาย
   1) สายคู่บิดเกลียว ( twisted pair cable ) 
สายนำสัญญาณแบบนี้แต่ละคู่สายที่เป็นสายทองแดงจะถูกพันบิดเป็นเกลียว เพื่อลดการรบกวนของคลื่นแม่เหล็กไฟฟ้าจากคู่สายข้างเคียงภายในสายเดียวกันหรือจากภายนอก ทำให้สามารถส่งข้อมูลด้วยความเร็วสูง สายคู่บิดเกลียวสามารถใช้ส่งข้อมูลจำนวนมากเป็นระยะทางไกลได้หลายกิโลเมตร เนื่องจากมีราคาไม่แพงมาก ใช้ส่งข้อมูลได้ดีน้ำหนักเบา ง่ายต่อการติดตั้ง จึงนิยมใช้อย่างกว้างขวาง ตัวอย่าสายคู่บิดเกลียว สายคู่บิดเกลียวมี 2 ชนิด คือ
- สายคู่บิดเกลียวแบบป้องกันสัญญาณรบกวน หรือสายยูทีพี ( Unshielded Twisted Pair: UTP )
เป็นสายใช้ในระบบโทรศัพท์ 
ต่อมาได้มีการปรับปรุง
คุณสมบัติให้ดีขึ้น จนสามารถใช้กับสัญญาณความถี่สูงได้ ทำให้ส่งข้อมูลได้ด้วยความเร็วสูงขึ้น
- สายคู่บิดเกลียวแบบป้องกันสัญญาณรบกวน หรือสายเอสทีพี ( Shielded Twisted Pair: STP ) 
เป็นสายที่หุ้มด้วยตัวกั้นสัญญาณ 
เพื่อป้องกันการรบกวน
ได้ดียิ่งขึ้น สายเอสทีรองรับความถี่ของการส่งข้อมูลสูงกว่าสายยูทีพี แต่มีราคาแพงกว่า
- ในปัจจุบันการ
ติดตั้งสายสัญญาณภายในอาคารนิยมใช้สายยูทีพีเป็นหลัก เพราะมีราคาถูกกว่าสายเอสทีพี และมีการพัฒนามาตรฐาน 
ให้มีคุณภาพ
สูงสามารถส่งข้อมูลความเร็วสูงได้ดีขึ้น
   2) สายโคแอกซ์ ( coaxial cable ) 
เป็นสายนำสัญญาณที่เรารู้จักกันดี โดยใช้เป็นสายนำสัญญาณที่ต่อจากเสาอากาศเครื่องรับโทรทัศน์ หรือสายเคเบิลทีวี ตัวสายประกอบด้วยลวดทองแดงที่เป็นแกนหลักหนึ่งเส้นหุ้มด้วยฉนวนเพื่อป้องกันกระแสไฟฟ้ารั่ว จากนั้นจะหุ้มด้วยตัวนำ ซึ่งทำจากลวดทองแดงถักเป็นร่างแหเพื่อป้องกันการรบกวนของคลื่นแม่เหล็กไฟฟ้าและสัญญาณรบกวนอื่นๆ ก่อนจะหุ้มชั้นนอกสุดด้วยฉนวน พลาสติก และนิยมใช้เป็นสายนำสัญญาณแอนะล็อกเพื่อเชื่อมต่ออุปกรณ์ภาพและเสียง ( audio-video devices) ต่างๆ ภายในบ้าน และสำนักงาน 
   3) สายไฟเบอร์ออพติก ( fiber-optic cable ) 
ประกอบด้วยกลุ่มเส้นใยทำจากแก้วหรือพลาสติกที่มีขนานเล็กประมาณเส้นผม แต่ละเส้นจะมีแกนกลาง ( core ) ที่ถูกห่อหุ้มด้วยวัสดุใยแก้วอีกชนิดหนึ่งซึ่งเรียกว่า แคล็ดดิง ( cladding ) และหุ้มอีกชั้นด้วยฉนวน เพื่อป้องกันการกระแทกและฉีกขาด 
- การส่งข้อมูลผ่านทางสื่อกลางชนิดนี้มีความแตกต่างจากชนิดอื่นๆ ซึ่งใช้สัญญาณไฟฟ้าในการส่งแต่การทำงานของสื่อกลางชนิดนี้
จะใช้แสงความเข้มสูง เช่น แสงเลเซอร์ ส่งผ่านไปยังเส้นใยแต่ละเส้น และอาศัยหลักการหักเหของแสง โดยใช้แคล็ดดิงเป็นตัวสะท้อนแสง ทำให้แสงสามารถเดินทางไปจนถึงปลายทางได้ โดยไม่ถูกรบกวน โดยคลื่นแม่เหล็กไฟฟ้าใดๆ และมีความผิดพลาดในการส่งข้อมูลต่ำมาก ทำให้สามารถส่งข้อมูลได้ด้วยความเร็วสูงระดับกิกะบิตต่อวินาที อีกทั้งยังมีความปลอดภัยในการส่งข้อมูล มีความสามารถในการนำพาข้อมูล ไปได้ในปริมาณมาก และสามารถส่งข้อมูลไปได้เป็นระยะทางไกล โดยมีความผิดพลาดน้อย จึงเหมาะที่จะใช้กับการเชื่อมโยง ระหว่างอาคาร ระหว่างเมือง และถูกนำไปใช้ในสายแกนหลัก ( backbone cable ) เชื่อมโยงเครือขายหลักต่างๆ เข้าด้วยกัน


สื่อกลางแบบไร้สาย
การสื่อสารแบบไร้สายอาศัยคลื่นแม่เหล็กไฟฟ้าเป็นสื่อกลางนำสัญญาณ ซึ่งคลื่นแม่เหล็ก
ไฟฟ้าที่สามารถนำมาใช้ ในการสื่อสารข้อมูล มีหลายชนิด แบ่งตามช่วงความถี่ที่แตกต่างกัน การสื่อสารแบบไร้สายมีผู้นิยมใช้มากขึ้น เนื่องจากมีความคล่องตัวสูงและสะดวกสบาย มักนิยมใช้ในพื้นที่ที่การติดตั้งสายนำสัญญาณ ทำได้ลำบากหรือค่าใช้จ่าย ในการติดตั้งสูงเกินไป สื่อกลางของการสื่อสารแบบนี้ เช่น อินฟราเรด ( Infrared: IR ) ไมโครเวฟ ( microwave ) 
คลื่นวิทยุ ( radio wave ) และดาวเทียมสื่อสาร ( communications satellite ) 
    1) อินฟราเรด 
สื่อกลางประเภทนี้มักใช้กับการสื่อสารใช้ข้อมูลที่ไม่มีสิ่งกีดขวางระหว่างตัวส่ง และตัวรับสัญญาณ เช่น การส่งสัญญาณ จากรีโมตคอนโทรลไปยังเครื่องรับโทรทัศน์หรือวิทยุ การเชื่อมต่อคอมพิวเตอร์กับคอมพิวเตอร์ โดยผ่านพอร์ตไออาร์ดีเอ ( The Infrared Data 
Association: IrDA ) ซึ่งเป็นการเชื่อมต่อเครือข่ายระยะใกล้
    2) ไมโครเวฟ 
เป็นสื่อกลางในการสื่อสารที่มีความเร็วสูง ใช้สำหรับการเชื่อมต่อระยะไกล 
โดยการส่งสัญญาณ คลื่นแม่เหล็กไฟฟ้า ไปในอากาศ พร้อมกับข้อมูลที่ต้องการส่ง และต้องมีสถานี ที่ทำหน้าที่ส่งและรับข้อมูล และเนื่องจาก สัญญาณ ไมโครเวฟจะเดินทางเป็นเส้นตรงไม่สามารถ เลี้ยวตามความโค้งของผิวโลกได้ จึงต้องมีการตั้งสถานรับส่งข้อมูลเป็นระยะ และส่งข้อมูลต่อกัน
ระหว่างสถานี จนกว่าจะถึงสถานีปลายทางและแต่สถานีจะตั้งอยู่ในที่สูง เช่น ดาดฟ้า ตึงสูง 
หรือยอดเขา เพื่อหลีกเลี่ยงการชนสิ่งขีดขวางในแนวการเดินทางของสัญญาณ การส่งข้อมูลผ่านสื่อกลางชนิดนี้เหมาะกับการส่งข้อมูลในพื้นที่ห่างไกลมากๆ และไม่สะดวก
ในการวางสายสัญญาณ ซึ่งเสาสัญญาณแต่ละ เสาสามารถวางห่างกันได้ถึง 80 กิโลเมตร 
   3) คลื่นวิทยุ 
เป็นสื่อกลางที่ใช้ส่งสัญญาณไปในอากาศ โดยสามารถสงในระยะทางได้ทั้งใกล้และไกล โดยมีตัวกระจายสัญญาณ 
( broadcast ) ส่งไปยังตัวรับสัญญาณ และใช้คลื่นวิทยุในช่วงคามถี่ต่างๆ 
กันในการส่งข้อมูล เช่น การสื่อสารระยะไกล ในการกระจายเสียงวิทยุระบบเอเอ็ม 
( Amplitude Modulation: AM) และเอฟเอ็ม (Frequency Modulation: FM ) หรือการสื่อสารระยะใกล้ โดยใช้ไวไฟ ( Wi-Fi ) และบลูทูท ( Bluetooth )
    4) ดาวทียมสื่อสาร 
พัฒนาขึ้นมาเพื่อหลีกเลี่ยงข้อจำกัดของสถานีรักส่งไมโครเวฟ
บนผิวโลกโดนเป็นสถานีรับส่งสัญญาณไมโครเวฟบนอวกาศ ในการส่งสัญญาณต้องมีสถานี
ภาคพื้นดินคอยทำหน้าที่รับและส่งสัญญาณขึ้นไปบนดาวเทียมที่ี่โคจรอยู่สูงจากพื้นโลก
ประมาณ 35,600 กิโลเมตร โดยดาวเทียมเหล่านั้นจะเคลื่อนที่ด้วยคามเร็วที่เท่ากับ
การหมุนของโลก จึงเสมือนกับดาวเทียมนั้นอยู่นิ่งกับที่ขณะที่โลกหมุนรอบตัวเอง ทำให้การส่งสัญญาณไมโครเวฟจากสถานีหนึ่งขึ้นไปบนดาวเทียม และการกระจายสัญญาณจากดาวเทียมลงมายังสถานีตามจุดต่างๆ บนผิวโลก 
เป็นไปอย่างแม่นยำ นอกจากนี้ยังมีการใช้งานดาวเทียมในการระบุตำแหน่ง
บนพื้นโลกเรียกว่าระบบจีพีเอส โดยบอกพิกัดเส้นรุ้งและเส้นแวงของผู้ใช้งาน
เพื่อใช้ในการนำทาง 


      เครือข่ายคอมพิวเตอร์
เครือข่ายคอมพิวเตอร์ ( computer network ) เป็นการเชื่อมต่อคอมพิวเตอร์ และอุปกรณ์ ต่อพ่วงเข้าด้วยกันเพื่อให้สามารถใช้ข้อมูลทรัพยากรร่วมกันได้ เช่น สามารถใช้เครื่องพิมพ์ร่วมกัน สามารถใช้ฮาร์ดดิสก์ร่วมกัน แบ่งปันการใช้อุปกรณ์ อื่นๆ ที่มีราคาแพงหรือไม่สามารถจัดหาให้ทุกคนได้ แม้กระทั่งสามารถใช้โปรแกรม ร่วมกันได้ เป็นการลดต้นทุนขององค์กรเครือข่ายคอมพิวเตอร์สามารถ แบ่งออกเป็นประเภทตามพื้นที่ที่ครอบคลุมการใช้งานของเครือข่าย ดังนี้
    1) เครือข่ายส่วนบุคคล หรือแพน ( Personal Area Network: PAN ) 


เป็นเครือข่าย ที่ใช้ส่วนบุคคล เช่น การเชื่อมต่อคอมพิวเตอร์กับโทรศัพท์มือถือ การเชื่อมต่อพีดีเอ กับเครื่องคอมพิวเตอร์ซึ่งการเชื่อมต่อแบบนี้จะอยู่ในระยะใกล้ และมีการเชื่อมต่อ แบบไร้สาย 
    2) เครือข่ายเฉพาะที่ หรือแลน ( Local Area Network: LAN )


เป็นเครือข่าย ที่ใช้ในการเชื่อมโยงคอมพิวเตอร์และอุปกรณ์ต่างๆที่อยู่ในพื้นที่เดียวกันหรือ
ใกล้เคียงกัน เช่น ภายในบ้าน ภายในสำนักงาน และภายในอาคาร สำหรับการใช้
งานภายในบ้านนั้นอาจเรียกเครือข่ายประเภทนี้ว่า เครือข่ายที่พักอาศัย ( home network ) ซึ่งอาจใช้การเชื่อมต่อแบบใช้สายหรือไร้สาย 
รูปแบบการสื่อสาร
  การส่งสัญญาณผ่านคลื่นวิทยุ
  การส่งสัญญาณผ่านไมโครเวฟภาคพื้นดิน
  ดาวเทียมสื่อสาร
    3) เครือข่ายนครหลวง หรือแมน (Metropolitan Area Network: MAN)


เป็นเครือข่ายที่ใช้เชื่อมโยงแลนที่อยู่ห่างไกลออกไป เช่น การเชื่อมต่อเครือข่ายระหว่างสำนักงานที่อาจอยู่คนละอาคารและ
มีระยะทางไกลกัน การเชื่อมต่อเครือข่ายชนิดนี้อาจใช้สาย ไฟเบอร์ออพติก หรือบางครั้งอาจใช้ไมโครเวฟเชื่อมต่อ เครือข่าย แบบนี้ใช้ในสถานศึกษามีชื่อเรียกอีกอย่างหนึ่งว่าเครือข่ายแคมปัส 
( Campus Area Network: CAN ) 
   4) เครือข่ายวงกว้าง หรือแวน (Wide Area Network: WAN) 


เป็นเครือข่ายที่ใช้ในการเชื่อมโยงกับเครือข่ายอื่นที่อยู่ไกลกันมาก 
เช่น เครือข่ายระหว่างจังหวัดหรือระหว่างภาครวมไปถึงเครือขาย
ระหว่างประเทศ 

Personal Area Network: PAN
Local Area Network: LAN
Metropolitan Area Network: MAN
Wide Area Network: WAN

ประเภทของคอมพิวเตอร์

ลักษณะและประเภทของคอมพิวเตอร์

 1. ซุปเปอร์คอมพิวเตอร์ (Supercomputer) เป็นคอมพิเตอร์ที่มีประสิทธิภาพในการทำงานสูง มีขนาดของความจำมาก ตั้งอยู่ในห้องที่สามารถปรับอุณหภูมิได้ การใช้งานคอมพิวเตอร์ประเภทนี้มักในงานวิจัย เช่น การวิเคราะห์ภาพถ่ายดาวเทียม การพยากรณ์อากาศ และงานอื่นๆที่มีการคำนวณซับซ้อน



ซุปเปอร์คอมพิวเตอร์
ที่มา  :  http://www.toptenthailand.com/display.php?id=576


 2. เมนเฟรมคอมพิวเตอร์ (Mainframe Computer) เป็นคอมพิวเตอร์ขนาดใหญ่ที่มีประสิทธิภาพรองลงมาจากซุปเปอร์คอมพิวเตอร์ เป็นเครื่องคอมพิวเตอร์ที่สามารถเชื่อมโยงกับคอมพิวเตอร์ปลายทางได้จำนวนมาก ทำให้ตอบสนองความต้องการของผู้ใช้ได้พร้อมกันหลายร้อยคน จึงมักใช้ในองค์กรขนาดใหญ่



เมนเฟรมคอมพิวเตอร์
ที่มา  :  http://www.thaigoodview.com/node/10190


 3. มินิคอมพิวเตอร์ (Minicomputer) เป็นคอมพิวเตอร์ขนาดกลางที่มีประสิทธิภาพน้อยกว่าเมนเฟรมคอมพิวเตอร์ แต่สูงกว่าไมโครคอมพิวเตอร์ มักพบในองค์กรที่ใช้งานเฉพาะด้าน เช่น ประมวลผลงานบัยชี โดยนำไปเชื่อมต่อกับเครื่องปลายทางได้หลายคน โดยมีการประมวลผลที่อยู่ส่วนกลาง แล้วส่งผลไปที่เครื่องปลายทาง โดยที่เครื่องปลายทางไม่ต้องประมวลผลเอง



มินิคอมพิวเตอร์
ที่มา  :  http://www.tsu.ac.th/cst/course/computer_it/lesson3/lesson3-3.html

 4. ไมโครคอมพิวเตอร์ (Microcomputer) เป็นคอมพิวเตอร์ที่ใช้งานอย่างแพร่หลาย ทีทั้งคอมพิวตอร์ส่วนบุคคลแบบตั้งโต๊ะ ซึ่งเหมาะกับการทำงานในสำนักงาน สถานศึกษา ที่บ้าน หรือคอมพิวเตอร์แบบพกพาไปในสถานที่ต่างๆได้ เช่น       โน๊ตบุ๊ก เป็นต้น


                                      คอมพิวเตอร์ตั้งโต๊ะ                        คอมพิวเตอร์โน๊ตบุ๊ค

ตัวอย่างระบบสารสนเทศ

การลงทะเบียนเรียน



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