Page 1

บทที่ 2 ทฤษฎีและหลักการ ปจจุบันนี้เทคโนโลยีทางดานคอมพิวเตอรไดเขามามีความสําคัญในชีวิตประจําวันของมนุษย ไมนอยไปกวาเทคโนโลยีประเภทอื่น ๆ โดยเฉพาะอยางยิ่งในดานการประชาสัมพันธ หรือเพื่อเปน การเผยแพรขาวสารสารสนเทศตาง ๆ และเพื่อดึงดูดความสนใจของผูที่ไดรับสารสนเทศการจัดทํา เว็บไซตสมาคมศิษยเกามหาวิทยาลัยเทคโนโลยีราชมงคล ศูนยสุพรรณบุรี โดยแบงทฤษฎีที่ศึกษา ออกเปนสวน ๆ ดังนี้ 2.1 การจดทะเบียนสมาคม 2.2 CMS 2.3 การเลือกซอฟตแวรที่ใชในโครงงาน 2.4 PHP-Fusion 7.0 2.5 ภาษา PHP 2.6 Ajax 2.7 XML 2.8 My SQL 2.9 Appserv 2.5.10 2.10 Adobe Dreamweaver CS3 2.11 Adobe Photoshop CS3 2.12 Adobe Flash CS4 2.13 ตัวอยางการประยุกตใช PHP และ Ajax ใน PHP-Fusion 7.0 2.14 ตัวอยางการประยุกตใช Flash รวมกับ XML ติดตอฐานขอมูล My SQL


7 2.1 การจดทะเบียนสมาคม 2.1.1 ความหมายของสมาคม ตามประมวลกฎหมายแพงและพาณิชย มาตรา 78 บัญญัติความหมายของสมาคมไววา “การกอตั้งสมาคมเพื่อกระทําการใด ๆ อันมีลักษณะตอเนื่องรวมกันและมิใชเปนการหากําไรหรือ รายไดมาแบงปนกัน ตองมีขอบังคับและจดทะเบียนตามบทบัญญัติแหงประมวลกฎหมายนี้” แสดง ใหเห็นวาการกอตั้งสมาคมจะมีลักษณะ 2.1.1.1 เปนการรวมตัวของกลุมบุคคล 2.1.1.2 เพื่อกระทําการใด ๆ เปนการตอเนื่อง ไมใชทํากันเพียงชั่วครั้งชั่วคราวแลวเลิก 2.1.1.3 เปนแนวทางปฏิบัติ 2.1.1.4 ตองจดทะเบียนเปนนิติบุคคล 2.1.2 กฎหมายและระเบียบที่เกี่ยวของ 2.1.2.1 ประมวลกฎหมายแพงและพาณิชย มาตรา 78-109 2.1.2.2 พระราชบัญญัติกําหนดความผิดเกี่ยวกับหางหุนสวนจดทะเบียน หางหุนสวน จํากัดบริษัทจํากัด สมาคมและมูลนิธิ พ.ศ. 2499 แกไขเพิ่มเติมโดย (ฉบับที่ 2) พ.ศ. 2535 2.1.2.3 พระราชบัญญัติวัฒนธรรมแหงชาติ พ.ศ. 2485 แกไขโดยพระราชบัญญัติ วัฒนธรรมแหงชาติ (ฉบับที่ 2) พ.ศ. 2486 มาตรา 5 ใหยกเลิกความในมาตรา 14 แหงพระราชบัญญัติวัฒนธรรมแหงชาติ พ.ศ. 2485และใหใชความตอไปนี้แทน มาตรา 14 สมาคมหรือองคการใดซึ่งมีวัตถุประสงคเกี่ยวกับงานของสภา วัฒ นธรรมแหงชาติไมวาจะไดตั้งอยูกอนหรือไมก็ตาม ตองไดรับอนุญาตจากสภาวัฒ นธรรม แหงชาติกอนจึงจะดําเนินการจัดตั้งตามกฎหมายหรือดํารงอยูตอไปได 2.1.2.4 กฎกระทรวง (พ.ศ. 2537) ออกตามความในประมวลกฎหมายแพงและ พาณิชย 2.1.2.5 กฎกระทรวง ฉบับที่ 2 (พ.ศ. 2547) ออกตามความในประมวลกฎหมายแพง และพาณิชย 2.1.2.6 ประกาศกระทรวงมหาดไทย เรือ่ ง แตงตั้งนายทะเบียนสมาคม ลงวันที่ 2.1.3 คําอธิบายขอบังคับสมาคม ขอบังคับสมาคมเปนแนวทางปฏิบัติของคณะกรรมการและสมาชิกของสมาคม และ รายการในขอบังคับสมาคมอยางนอยตองมีรายการตอไปนี้


8 2.1.3.1 ชื่อสมาคม เปน การระบุชื่ อเฉพาะของสมาคมนั้น ๆ และจะต องมี คําว า สมาคม ประกอบชื่อดวย 2.1.3.2 วัตถุประสงคของสมาคม เปนรายการแสแดงใหเห็นวา สมาคมที่ตั้งขึ้นมามี เปาหมายจะกระทําในกิจการใดแนชัด 2.1.3.3 ที่ตั้งสํานักงานใหญ และที่ตั้งสํานักงานสาขาทั้งปวง เปนรายการแสดงสถาน ที่ตั้งสํานักงานใหญของสมาคม และที่ตั้งสํานักงานสาขาของสมาคม หากสมาคมประสงคจะจัดตั้ง ขึ้น 2.1.3.4 วิธีรับสมาชิก และการขาดจากสมาชิกภาพ เปนรายการแสดงถึงวิธีการจัดหา สมาชิก และการขาดจากการเปนสมาชิกของสมาคมนั้น ๆ 2.1.3.5 อัตราคาบํารุง เปนการกําหนดอัต ราคาบํารุงสมาคมที่สมาชิกจะตองชําระ ใหแกสมาคมเพื่อเปนคาใชจายในกิจการของสมาคมแตละแหง 2.1.3.6 ขอกําหนดเกี่ยวกับคณะกรรมการของสมาคม เนื่องจากในประมวลกฎหมาย แพงและพาณิชย ฉบับใหมนี้ กําหนดใหการบริหารของสมาคมตองกระทําในรูปคณะกรรมการ เทานั้น จึงกําหนดรายละเอียดเกี่ยวกับ จํานวนกรรมการของสมาคม การตั้งกรรมการ วาระการดํารง ตําแหนงของกรรมการ การพนจากตําแหนงของกรรมการ และการประชุมของคณะกรรมการ 2.1.3.7 ขอกําหนดเกี่ยวกับการจัดการสมาคม การบัญชี และทรัพยสินของสมาคม เปนการกําหนดถึงวิธีการบริหารสมาคม การจัดทําบัญชีและทรัพยสินของสมาคมวาตองทําอยางไร สามารถตรวจสอบไดในแตละป 2.1.3.8 ขอกําหนดเกี่ยวกับการประชุมใหญ เปนการกําหนดถึงกําหนดเวลาและ วิธีการประชุมใหญสมาชิกของสมาคมไดชัดแจง 2.1.4 การจดทะเบียนสมาคม 2.1.4.1 ใหผูจะเปนสมาชิกจํานวนไมนอยกวา 3 คน ยื่นคําขอตามแบบ ส.ค. 1 ณ สํานักงานเขตสําหรับในกรุงเทพมหานคร หรือที่วาการอําเภอ / กิ่งอําเภอ สําหรับในจังหวัดอื่นที่ สํานักงานใหญของสมาคมจะตั้งขึ้นพรอมเอกสารหลักฐานดังตอไปนี้ จํานวน 3 ชุด 1) ขอบังคับของสมาคม 2) รายชื่อ ที่อยู และอาชีพของผูจะเปนสมาชิกไมนอยกวาสิบคน 3) รายชื่อ ที่อยู และอาชีพของผูจะเปนกรรมการของสมาคม 4) รายงานการประชุมกอตั้งสมาคม 5) แผนผังที่ตั้งสังเขปของสมาคมทั้งสํานักงานใหญและสํานักงานสาขา 6) หนังสืออนุญาตใหใชสถานที่ของสมาคม


9 7) สําเนาหรือภาพถายบัตรประจําตัวประชาชนหรือบัตรอื่นที่ทางราชการ ออกให และภาพถายสําเนาทะเบียนบานของผูจะเปนสมาชิกและผูจะเปนกรรมการของสมาคม 8) สําเนาหรือภาพถายใบอนุญาตจัดตั้งสมาคมหรือองคการตามกฎหมายวา ดวยวัฒนธรรมแหงชาติ ในกรณีสมาคมมีวัตถุประสงคเกี่ยวกับงานของสภาวัฒนธรรมแหงชาติ 9) เอกสารอื่น ๆ (ถามี) 2.1.4.2 เมื่อสํานักงานเขตหรืออําเภอ / กิ่งอําเภอ ไดรับคําขอแลว จะดําเนินการดังนี้ 1) ตรวจสอบคําขอ และขอบังคับวาถูกตองหรือไม 2) ตรวจสอบวัตถุประสงคของสมาคม ตองไมขัดตอกฎหมายหรือศีลธรรม อันดีของประชาชนหรือไมเปนภยันตรายตอความสงบสุขของประชาชนหรือความมั่นคงของรัฐ 3) ตรวจสอบรายการในคําขอหรือขอบังคับ ตองสอดคลองกับวัตถุประสงค ของสมาคม 4) ตรวจสอบผูจะเปนกรรมการของสมาคม ตองมีฐานะและความประพฤติ เหมาะสมในการดําเนินการตามวัตถุประสงคของสมาคม 5) ตรวจดูสถานที่ตั้งของสมาคมวาเหมาะสมหรือไม 2.1.4.3 เมื่อสํานักงานเขตหรืออําเภอ / กิ่งอําเภอ ไดพิจารณาเอกสารและคําขอแลว เห็นวาครบถวนและถูกตอง ก็ใ หเสนอเรื่องราวพรอมความเห็นตอนายทะเบียน โดยสงเรื่องไป กรุงเทพมหานคร (สําหรับในกรุงเทพมหานคร) หรือจังหวัด (สําหรับในจังหวัดอื่น) เพื่อตรวจสอบ ความถูกตองและเสนอนายทะเบียนเพื่อพิจารณาจดทะเบียน โดย 1) อธิบดีกรมการปกครอง เปนนายทะเบียนสมาคมในกรุงเทพมหานคร 2) ผูวาราชการจังหวัด เปนนายทะเบียนสมาคมในจังหวัดอื่น 2.1.4.4 เมื่อนายทะเบียนพิ จ ารณารั บจดทะเบียน ก็จ ะออกใบสําคัญแสดงการจด ทะเบียนสมาคม (ส.ค.4) และสงประกาศการรับจดทะเบียนสมาคมไปยังสํานัก งานเลขาธิก าร คณะรัฐมนตรี เพื่อประกาศในราชกิจจานุเบกษาแลวสงเรื่องคืนไปยังสํานักงานเขต หรืออําเภอ / กิ่ง อําเภอ และแจงให ผูข อจดทะเบียนทราบเพื่อขอรับใบสําคั ญ ฯ และชํ าระค าธรรมเนีย มตาม กฎกระทรวง ฯ จํานวนเงิน 2,000 บาท 2.1.5 การจดทะเบียนเปลี่ยนแปลงสมาคม 2.1.5.1 กรณีการแกไขเพิ่มเติมขอบังคับของสมาคม 1) ใหสมาคมยื่น คําขอ ตามแบบ ส.ค. 2 ณ สํานัก งานเขต หรือ ที่วาการ อําเภอ/กิ่งอําเภอที่สํานักงานใหญของสมาคมตั้งอยู ภายใน 14 วัน นับแตวันที่ไดลงมติ พรอม เอกสารหลักฐานดังตอไปนี้ จํานวน3 ชุด


10 1.1) รายงานการประชุมของที่ประชุมใหญมีมติใหมีการแกไขเพิ่มเติม ขอบังคับของสมาคม 1.2) ขอบังคับของสมาคมฉบับเกาและขอบังคับของสมาคมฉบับใหม 1.3) ตารางเปรียบเทียบขอบังคับของสมาคมฉบับเกาและขอบังคับของ สมาคมฉบับใหม 1.4) แผนผังที่ตั้งสังเขปของสมาคมและหนังสืออนุญาตใหใชสถานที่ตั้ง ของสมาคมในกรณีที่มีการเปลี่ยนแปลงสถานที่ตั้ง 2) การแกไขเพิ่มเติมขอบังคับของสมาคม จะมีขั้นตอนการจดทะเบียนคลาย กับการจดทะเบียนสมาคม ซึ่งเมื่อนายทะเบียนพิจารณารับจดทะเบียนก็จะออกใบสําคัญแสดงการ จดทะเบียนการแกไขเพิ่มเติมขอบังคับ (ส.ค.5) และสงประกาศการรับจดทะเบียนฯ ไปยังสํานักงาน เลขาธิการคณะรัฐมนตรี เพือ่ ประกาศในราชกิจจานุเบกษา แลวสงเรื่องคืนไปยังสํานักงานเขต หรือ อําเภอ / กิ่งอําเภอ และแจงใหผูขอจดทะเบียนทราบ เพื่อขอรับใบสําคัญฯ และชําระคาธรรมเนียม ตามกฎกระทรวงฯ จํานวนเงิน 200 บาท 2.1.5.2 กรณี ก ารแต ง ตั้ ง กรรมการสมาคมขึ้ น ใหม ทั้ ง ชุ ด หรื อ การเปลี่ ย นแปลง กรรมการของสมาคม 1) ใหสมาคมยื่นคําขอตามแบบ ส.ค.3 ณ สํานักงานเขตหรืออําเภอ / กิ่งอําเภอ ที่สํานักงานใหญข องสมาคมตั้งอยู ภายใน 30 วัน นับแตวันที่มีก ารแตงตั้ง หรือเปลี่ยนแปลง กรรมการของสมาคมพรอมเอกสารหลักฐานดังตอไปนี้ จํานวน 3 ชุด 1.1) รายงานการประชุมของสมาคมที่มีมติใหมีการแตงตั้งกรรมการขึ้น ใหมทั้งชุดหรือการเปลี่ยนแปลงกรรมการของสมาคม 1.2) ขอบังคับของสมาคม 1.3) รายชื่อกรรมการเกาและกรรมการใหม 1.4) สํา เนาหรื อภาพถ า ยบัต รประจํ าตั ว ประชาชนหรื อ บั ต รอื่ น ที่ ท าง ราชการออกใหและภาพถายสําเนาทะเบียนบานของกรรมการใหม 2) เมื่อสํานักงานเขต หรืออําเภอ / กิ่งอําเภอ ไดรับคําขอแลว จะดําเนินการ ดังนี้ 2.1) ตรวจสอบการแตงตั้งกรรมการของสมาคมขึ้นใหมทั้งชุด หรือการ เปลี่ยนแปลงกรรมการของสมาคม วาไดกระทําตามขอบังคับของสมาคมหรือไม 2.2) กรรมการที่ขอจดทะเบียนฯ มีฐานะหรือความประพฤติเหมาะสมใน การดําเนินการตามวัตถุประสงคของสมาคมหรือไม


11 3) เมื่อสํานักงานเขต หรืออําเภอ / กิ่งอําเภอ ไดพิจารณาเอกสารและคําขอ แลว เห็นวาครบถวนและถูกตอง ก็ใหเสนอเรื่องราวพรอมความเห็นตอนายทะเบียน โดยสงเรื่องไป กรุงเทพมหานคร หรือจังหวัดแลวแตกรณี เพื่อตรวจสอบความถูกตอง และเสนอนายทะเบียนเพื่อ พิจารณาจดทะเบียน 4) เมื่อนายทะเบียนพิจารณารับจดทะเบียน ก็จะออกใบสําคัญแสดงการจด ทะเบียน การแตงตั้งกรรมการของสมาคมขึ้นใหมทั้งชุด หรือการเปลี่ยนแปลงกรรมการของสมาคม (ส.ค.6) แลวสงเรื่องคืนไปยังสํานักงานเขต หรืออําเภอ / กิ่งอําเภอ และแจงใหผูขอจดทะเบียนทราบ เพื่อขอรับใบสําคัญฯ และชําระคาธรรมเนียมตาม กฎกระทรวงฯ จํานวนเงิน 200 บาท 2.1.6 การเลิกสมาคม 2.1.6.1 ตามมาตรา 101 แหงประมวลกฎหมายแพงและพาณิชย พ.ศ. 2535 กําหนดให สมาคมเลิกดวยเหตุหนึ่งเหตุใด ดังนี้ 1) เมื่อมีเหตุตามที่กําหนดในขอบังคับ เปนการเลิกตามเหตุที่กําหนดไวใน ขอบังคับของสมาคมนั้น ๆ และสมาคมไดปฏิบัติตามเหตุที่กําหนดไวครบถวนแลว 2) ถาสมาคมตั้งขึ้นไวเฉพาะเวลาใด เมื่อสิ้นระยะเวลานั้นเปนการเลิกตาม กําหนดเวลาที่ตกลงไวซึ่งอาจเปนการกําหนดไวในขอบังคับหรือในมติที่ประชุมจัดตั้งก็ได 3) ถาสมาคมตั้งขึ้นเพื่อกระทํากิจการใด เมื่อกิจการนั้นสําเร็จแลวเปนการ กําหนดไวเปนการเฉพาะกิจและกิจการนั้นไดกระทําครบถวนแลว 4) เมื่อที่ประชุมใหญมีมติใหเลิก เปนการเลิกโดยผลจากที่ประชุมใหญของ สมาคม 5) เมื่อสมาคมลมละลาย เปนการเลิกโดยผลจากที่สมาคมถูกฟองลมละลาย และศาลไดสั่งเปนที่สิ้นสุดแลว 6) เมื่อนายทะเบียนถอนชื่อออกจากทะเบียน ในกรณี 2.1.6.2 ศีลธรรมอัน ดีข องประชาชน หรืออาจเปนภยัน ตรายตอความสงบสุขของ ประชาชนหรือความมั่นคงของรัฐและนายทะเบียนไดสั่งใหแกไขแลว แตสมาคมไมปฏิบัติตาม ภายในเวลาที่นายทะเบียนกําหนด 2.1.6.3 เมื่อปรากฏวา การดําเนินกิจการของสมาคมขัดตอกฎหมายหรือศีลธรรมอันดี ของประชาชนหรืออาจเปนภยันตรายตอความสงบสุขของประชาชนหรือความมั่นคงของรัฐ 2.1.6.4 เมื่อสมาคมหยุดดําเนินกิจการติดตอกันตั้งแต 2 ปขึ้นไป 2.1.6.5 เมื่อปรากฏ สมาคมใหหรือปลอยใหบุคคลอื่นซึ่งมิใชกรรมการของสมาคม เปนผูดําเนินกิจการของสมาคม


12 2.1.6.6 เมื่อสมาคมมีสมาชิกเหลือนอยกวา 10 คน มาเปนเวลาติดตอกันกวา 2 ป 2.1.7 อัตราคาธรรมเนียม อัต ราคาธรรมเนียมการจดทะเบียนและคาธรรมเนียมอื่ น ใหเรี ยกเก็บตามอัต รา ดังตอไปนี้ 2.1.7.1 คาจดทะเบียนสมาคม 2,000 บาท 2.1.7.2 คาจดทะเบียนการแกไขเพิ่มเติมขอบังคับ 200 บาทของสมาคม หรือคาจด ทะเบียนการแตงตั้งกรรมการของสมาคมขึ้นใหมทั้งชุด หรือการเปลี่ยนแปลงกรรมการของสมาคม ครั้งละ 2.1.7.3 คาขอตรวจเอกสาร ครั้งละ 50 บาท 2.1.7.4 คาคัดสําเนาเอกสารพรอมดวยคํารับรองวาถูกตอง แผนละ 10 บาทแตไมเกิน 500 บาท 2.1.7.5 คาคําขอใหนายทะเบียนดําเนินการใด ๆ เกี่ยวกับสมาคม ครั้งละ 5 บาท 2.1.8 ความผิดเกี่ยวกับสมาคม พระราชบัญญัติกําหนดความผิดเกี่ยวกับหางหุนสวนจดทะเบียน หางหุนสวนจํากัด บริษัทจํากัดสมาคมและมูลนิธิ พ.ศ. 2499 แกไขเพิ่มเติมโดย (ฉบับที่ 2) พ.ศ. 2535 2.1.8.1 ผูใดใชคําวา “สมาคม” ประกอบกับชื่อ ในดวงตรา ปายชื่อ จดหมายใบแจง ความหรือเอกสารอยางอื่นเกี่ยวกับธุรกิจ โดยมิไดเปนสมาคมที่ไดจดทะเบียนตามประมวลกฎหมาย แพงและพาณิชยหรือกฎหมายอื่นเวนแตเปนการใชในการขอจดทะเบียนเกี่ยวกับการตั้งสมาคมหรือ ในการแปลอักษรตางประเทศเปนอักษรไทย โดยมีอักษรตางประเทศ กํากับไวดวย ตองระวางโทษ ปรับไมเกิน 20,000 บาท และปรับอีกวันละไมเกิน 500 บาท จนกวาจะเลิกใช 2.1.8.2 ผูใ ดดําเนิน กิจ การของคณะบุคคลใดโดยกระทําการอยางหนึ่งอยางใดให บุคคลอื่นหลงเชื่อวากิจการนั้นเปนสมคมที่ไดจดทะเบียนตามประมวลกฎหมายแพงและพาณิชย และการกระทําดังกลาวนาจะเกิดความเสียหายแกผูอื่นหรือประชาชน ตองระวางโทษจําคุกไมเกิน 2 ป หรือปรับไมเกิน 40,000 บาท หรือทั้งจําทั้งปรับ 2.1.8.3 ผูใดเปนสมาชิกของคณะบุคคลใดที่ใชชื่อวา สมาคม โดยรูอยูวา เปนสมาคม ที่มิไดจดทะเบียนตามประมวลกฎหมายแพงและพาณิชย ตองระวางโทษปรับไมเกิน 10,000 บาท 2.1.8.4 สมาคมใดไมใชคําวาสมาคมประกอบชื่อ ตองระวางโทษปรับไมเกิน 20,000 บาท และปรับอีกวันละไมเกิน 500 บาท จนกวาจะไดปฏิบัติใหถูกตอง 2.1.8.5 สมาคมใดมิไดจ ดทะเบียนแกไขเพิ่มเติมขอบังคับตอนายทะเบียนภายใน กําหนด 14 วัน นับแตวันที่ไดลงมติ ตองระวางโทษปรับไมเกิน 10,000 บาท


13 2.1.8.6 สมาคมใดมิไดจดทะเบียนการแตงตั้งหรือเปลี่ยนแปลงกรรมการของสมาคม ตอนายทะเบียนภายในกําหนด 30 วัน นับแตวันที่มีการแตงตั้งหรือเปลี่ยนแปลงกรรมการของ สมาคมตองระวางโทษปรับไมเกิน 10,000 บาท 2.1.8.7 สมาคมใดไมยอมใหสมาชิกของสมาคมตรวจตรากิจการ และทรัพยสินของ สมาคมในระหวางเวลาทําการของสมาคม ตองระวางโทษปรับไมเกิน 10,000 บาท 2.1.8.8 กรรมการของสมาคมผูใดดําเนินกิจการผิดวัตถุประสงคของสมาคม และการ ดําเนินกิจการนั้นเปนภยันตรายตอความสงบสุขของประชาชนหรือความมั่นคงของรัฐ ตองระวาง โทษจําคุกไมเกิน 3 ป หรือปรับไมเกิน 60,000 บาท หรือทั้งจําทั้งปรับ 2.1.8.9 คณะกรรมการของสมาคมไมแจงการเลิก สมาคมตอนายทะเบียนภายใน ระยะเวลา 14 วัน นับแตวันที่มีการเลิกสมาคม กรรมการของสมาคมนั้นตองระวางโทษปรับไมเกิน คนละ 10,000 บาท เวนแตกรรมการผูใดของสมาคมนั้นจะพิสูจนไดวา การที่มิไดแจงนั้น มิไดเกิด จากการกระทําของตน 2.1.8.10 ผูใดแบงทรัพยสินของสมาคมที่เหลืออยูเมื่อไดชําระบัญชีแลว ใหแกสมาชิก ของสมาคมหรือโอนทรัพยสินดังกลาวใหแกบุคคลอื่น เปนการฝาฝนมาตรา 107 แหงประมวล กฎหมายแพงและพาณิชย ตองระวางโทษจําคุกไมเกิน 1 ป หรือปรับไมเกิน 20,000 บาท หรือทั้งจํา ทั้งปรับ 2.1.8.11 ผูใดยังขืน แสดงตนเปนกรรมการหรือสมาชิกของสมาคม โดยรูอยูวานาย ทะเบียนไดถอนชื่อสมาคมนั้นออกจากทะเบียนแลว หรือถูกศาลสั่งเลิกแลว ตองระวางโทษปรับไม เกิน 20,000 บาท 2.2 CMS 2.2.1 ความหมายของ CMS CMS (Content Management System) คือ เมื่อเว็บไซตขององคกรมีขนาดใหญ ก็เปน เรื่องยาก ในการดูแลเนื้อหาบนเว็บไซต CMS (Content Management System) เปนระบบที่นําเขามา ช ว ยในการจั ด การเนื้ อ หาในเว็ บ ไซต ที่ มี ป ระสิ ท ธิ ภ าพมาก โดยความหมายของ Content Management System ของผูพัฒนาหลายๆ คาย อาจมีโมเดลหรือความหมายไมเหมือนกันขึ้นอยูกับ การออกแบบ แต โ ดยภาพรวมสามารถแบงโมเดลหลัก ของ CMS ได สองส ว น ไดแก CMA (Content Management Application) และ CDA (Content Delivery Application)


14 2.2.1.1 CMA (Content Management Application) เปน โปรแกรมในสว นของการจัด การเนื้อหาทั้งหมด ซึ่งโดยปกติจ ะเป น โปรแกรมแบบ Web Base Interface โดยในสวนของ CMA นี้จะยอมใหผูดูแลเว็บไซตที่สรางและ แกไขเนื้อหา ไมจําเปนตองมีค วามรูในการใชงานภาษา HTML เพื่อจัดการกับเว็บไซตเลย การ ทํางานผาน CMA จะทําไดทั้งการสราง แกไข ตรวจสอบความถูกตองของขอมูล โดย CMA จะนํา เนื้อหานั้นๆ เขาไปเก็บไวในฐานขอมูลของระบบ 2.2.1.2 CDA (Content Delivery Application) เปนสวนประกอบที่มีความสําคัญ ซ้ํายังทํางานไดอยางชาญฉลาด CDA จะทํา หนาที่นําเนื้อหาจากฐานขอมูลมาแสดงทางเว็บไซต โดยมีการควบคุมและจัดการเนื้อหาบนเว็บไซต ใหมีความทันสมัยอยูตลอดเวลา ดูแลจัดการรูปแบบของเอกสาร, การเลือกเทมเพลต, การจัดกลุม เนื้อหาสําหรับอินทราเน็ต เอ็กซทราเน็ต อินเทอรเน็ต , การกําหนดวันหมดอายุของเนื้อหา หรือ แม แ ต ก ารเปลี่ ย นรูป แบบเอกสารให อยู ใ นรู ป ของสื่ อ สิ่ งพิ ม พ เช น โบชั ว ร หรื อ แคตาล็ อ ก CMS เปนระบบที่ออกแบบใหการทํางานเปนไปอยางมีประสิทธิภาพ โดย ผานเวิรกโฟลว ซึ่งการทํางานแบบเวิรกโฟลวจะพบเห็นไดในระบบในระดับไฮเอนดทั่วไป เพราะมี ประสิทธิภาพสูง และชวยใหขอมูลมีความถูกตองเสมอ โดยขั้นตอนในการปรับปรุง แกไข หรือ สรางเนื้อหาขึ้นมาใหม อาจมีเวิรกโฟลวดังนี้ 1) ผูบริหารระดับสูงเห็นชอบใหมีการสรางเนื้อหาขึ้นมาใหม 2) ผู พั ฒ นาหรื อ กลุ ม ผู พั ฒ นาสร า งเทมเพลต และโฟลเดอร เ พื่ อ รองรั บ ตรวจสอบความถูกตอง 3) กระจายงานสูกลุมพนักงาน 4) กลุมพนักงานสรางเนื้อหาใหม หรือแกไขเนื้อหา 5) ผูดูแลเว็บไซตอนุ มัติ รวบรวมขอมู ลนําขึ้น เว็บไซตไ ด โดยงานในแต ละสวนของเวิรกโฟลวสามารถสงตอไปยังสวนใดๆ ของเวิรกโฟลวก็ได Content Management System ที่มีความฉลาดมากๆ จะยอมใหผูดูแลสามารถ ปรับแตงเวิรกโฟลวของระบบได เพียงแคใชเมาสลากแลววาง เพื่อปรับแตงไดอะแกรมของเวิรก โฟลว หรือกําหนดขั้นตอนของเวิรก โฟลวกับยูสเซอรแตละรายไดดวย เชน กลุมของผูบริหาร ระดับสูงสามารถแจงขาวกับพนักงานผานทางเว็บไซตของระบบอินทราเน็ตในองคกรไดทันที หรือ การเพิ่มเติมขาวสาร เนื้อหาจากยูสเซอรบางราย ตองไดรับความเห็นชอบจากผูดูแลระบบ หรือฝาย กฏหมายขององคกรกอนนําขาวสารนั้นเผยแพรผานเว็บไซต (ในกรณีที่เปนอินเทอรเน็ต)


15 2.2.2 การประยุกตใช CMS ในวงการตางๆ ระบบ CMS สามารถนํา มาประยุ ก ต ใ นงานต างๆ หลากหลาย ตั ว อย า งการนํ า ซอฟตแวร CMS มาประยุกตใชงาน อาทิเชน 2.2.2.1 การนํา CMS มาใชใ นการสรา งเว็บไซตสถาบัน การศึก ษา ธุร กิจ บัน เทิ ง หนังสือพิมพ การเงิน การธนาคาร หุนและการลงทุน อสังหาริมทรัพย งานบุค คล งานประมูล สถานที่ทองเที่ยว งานใหบริการลูกคา 2.2.2.2 การนํา CMS มาใชในหนวยงานของรัฐ อาทิเชน งานขาว งานประชาสัมพันธ การนําเสนองานตางๆ ขององคกร 2.2.2.3 การใช CMS สรางไซต สวนตัว ชมรม สมาคม สมาพันธ โดยวิธีการแบงงาน กันทํา เปนสวนๆ ทําใหเกิดความสามัคคี ทําใหมีการทํางานเปนทีมเวิรคมากยิ่งขึ้น 2.2.2.4 การนํา CMS มาใชในการสรางเว็บไซตสําหรับธุรกิจ SME โดยเฉพาะสินคา หนึ่งตําบลหนึ่งผลิตภัณฑ หรือ OTOP กําลังไดรับความนิยมสูง 2.2.2.5 การนํา CMS มาใชแทนโปรแกรมลิขสิทธิ์ อื่นๆ เพื่อประหยัดคาใชจาย และ งายตอการพัฒนา 2.2.2.6 การใช CMS ทําเปน Intranet Web Site สรางเว็บไซตใชภายในองคกร 2.2.3 ความแตกตางระหวาง CMS กับ Web log Web log นิยมเรียกสั้นๆ วา Blog หมายถึง เว็บไซตที่มีรูปแบบงายๆ โดยมากจะเปนใน ลักษณะเว็บไซตสวนตัวคนสรางบล็อกตองการบรรยายเหตุการณสวนตัว อาทิ ความในใจ ชีวิติ ครอบครัว เหตุการณประทับใจในชีวิต อะไรทํานองนี้ โดยที่เนื้อหาของบล็อกแตละบล็อกนั้นจะ เปนเนื้อหาใหมลาสุด ไลยอนหลังลงกลับไปเรื่อยๆ กลาวคือขอความหลังสุดจะอยูดานบนสุด เรา เรียกคนที่ทํา Blog วา Blogger หรือ Web blogger โดยในเนื้อหาใน Blog นั้นจะสวนประกอบสาม สวนคือ หัวขอ (Title) เปนหัวขอสั้นสั้นๆ , เนื้อหา (Post หรือ Content) เปนเนื้อหาหลักที่คนสราง Blog ตองการที่จะบอกใหคุณทราบ , วันที่เขียน (Date) เปนวัน เดือน ป ที่เขียน ทูลที่ใชทํา Blog เชน pMachine , b2evolution, bBlog, MyPHPblog, Nucleus, Wordpress, Simplog เปนตน ปจจุบัน เว็บบล็อกบางตัวฝงโมดูลกระดานขาวและอื่นๆ มาดวย หากจะพูดแบบงายๆ แลวนั้น CMS ก็คือปู ของ Blog นั่นเอง เพราะ CMS เองก็สามารถนํามาทําเปน Blog ได แต CMS มันมีความสามารถ อื่นๆ อีกมากที่บล็อกทําไมได


16 2.2.4 ขอดีของ CMS ขอดีของ CMS มีทั้งตอผูดูแลเว็บไซต (Webmasters) และผูใชงานเว็บไซต (Users) ความสามารถในการใช Template และสวนประกอบของการออกแบบ ที่ครอบคลุมการออกแบบ ตลอดทั้งเว็บไซตผูใ ชงานเว็บไซตสามารถใชงาน Template โดยนํามาประกอบกับเอกสารหรือ เนื้อหา ทําใหชวยลดภาระเรื่องการเขียนโคดใหนอยลงผูใชงานเว็บไซตใหความสนใจเฉพาะเนื้อหา มากกวาการออกแบบ และในการที่จ ะเปลี่ยนหน าตาของเว็บไซต ผูดูแลเว็บไซตก็แคไปแกไขที่ template ไมใชที่แตละหนาของเว็บเพจ CMS จะชวยใหทุกอยางงายขึ้น ในการสรางและบํารุงรักษา เว็บไซต นอกจากนั้นยังชวยจัดระดับการใชงานสําหรับแตละสวนงานของเว็บไซต โดยไมตองเขา มาเซ็ต การใชงานของระบบที่เซิรฟ เวอรโ ดยตรง เพราะสามารถทําไดโ ดยผานเว็บบราวเซอร นอกจากนั้น ถามี Search engine, Calendar, Web mail และสวนอื่นๆ ที่สามารถเพิ่มเติมสู CMS หรือแมกระทั่งไปหา Plug-in หรือ Add-ons เขามาเสริมการทํางานได สวนนี้จะชวยประหยัดเวลา ในการพัฒนาได การพิจารณาเลือกใช CMS คือ ความยากงายในการใชงาน ความยืดหยุนในการ พัฒนา ความสามารถในการทํางาน และอื่นๆ ไดแก เทคโนโลยี ระบบปฏิบัติการ และราคา 2.3 การเลือกซอฟตแวรที่ใชในโครงงาน 2.3.1 PHP-Fusion 7.0 เมื่อศึกษาเรื่องของ CMS ที่ใชการพัฒนาเว็บนั้น มีเยอะมากมายที่สามารถนํามาพัฒนา เว็บไซตในองคกร สถาบัน หรือ การเผยแพรตางๆ ตามที่ตองการ และผูที่เปน เว็บมาสเตอรตอง ตระหนักเปนอยางมากคือเรื่อง ลิขสิทธ ซึ่งมี CMS ไมมากนักที่เว็บมาสเตอรนํามาพัฒนาตอ ดวย เหตุที่วามีคาใชจายเข ามาเกี่ยวของดวย และทําใหบรรดา CMS ที่มีลิข สิทธนั้นไมเปนที่นิยมของ เหลาเว็บมาสเตอร และที่สําคัญอีก ประการหนึ่งคือการนํามาพัฒ นา และระบบการรัก ษาความ ปลอดภัยของ CMS ในแตละตัวนั้นเปนที่ตองการอยางมาก เพื่อไมใหมีการเขาถึงระบบการทํางาน ในสวนที่ปองกันไวได ยกตัวอยาง CMS ที่มีการเผยแพรในแบบ Free ware และเปนที่นิยม เชน Joomla , PHP Nuke , PHP Fusion และ Os commerce เปนตน CMS ขางตนนี้มีความนิยมใชเปน อยางมากในกลุมเว็บมาสเตอร แตสวนในตัวโครงงานนี้ไดนําเอา PHP Fusion 7.0 มาพัฒนาเนื่องจากในตัวโครงสราง ของ CMS นี่ไดมีการเปดเผยเรื่องของโครงสรางที่สามารถนํามาเขียนเปนระบบไดไมยากนัก และ ยังสามารถเขาไดงายและยังมีการเพิ่มระดับการปองดีขึ้นอีกดวย


17 2.3.2 ภาษา PHP ภาษาที่นิยมกันมากที่สุดในการพัฒนาและเขียนเว็บไซตคงไมพน ภาษา PHP ที่มีความ นิยมเปนอยางมากเนื่องจากเว็บมาสเตอรไดมีการพัฒนาใหมีความสามารถในตางๆไวคอนขางเยอะ และเปนที่รูจักกันอยางดีในบรรดาผูใชทั่ว ๆไป และอีกปจจัยหนึ่งที่มีเว็บมาสเตอรหลายตอหลาย ทานชื่นชอบก็คือ Free นั้นเอง และภาษา PHP ยังสามารถเขากับ ภาษาตางๆ ที่ใชในการพัฒนาเว็บ ตัวอื่น ไดดีอีกดว ย อาทิเชน ภาษา HTMLซึ่งเปนภาษาพื้นฐานของการแสดงเว็บเพจ ภาษา Java Script ที่เพิ่มลูกเลนใหกับเว็บเพจเปนที่สนใจ ภาษา SQL ใชในการติดตอฐานขอมูลเปนตน และ ความสามารถอีกประการหนึ่งที่เปนจุดเดนของภาษา PHP คือการติดตอฐานขอมูลผาน MYSQL เปนการทํางานที่มีประสิทธิภาพ จึงเปนที่นิยมกันอยางแพรหลาย 2.3.3 Ajax ในตัว Ajax นี้มีความสามารถเปนที่ขึ้นชื่อในเรื่องของการแสดงผลที่รวดเร็วของการ ทํางานในรูปแบบแอพพิเคชันบนเว็บ ซึ่งจุดเดนในการแสดงผลนี้เองทําใหเว็บมาสเตอรหลายตอ หลายทานชื่นชอบและทําใหเว็บไซตดูมีจุดเดน เปนที่ชื่นชอบของเหลาผูใช 2.3.4 XML XML ไดจัด วาเปน โปรแกรม หรือ แอพพิเคชัน ตัว หนึ่ง แต XML เปน รูปแบบ รูปแบบหนึ่งที่มีการจัดเก็บขอมูลที่มีมาตรฐาน มาตรฐานหนึ่งที่งายตอการเขาถึงและการทํางานใน การนํามาใชงาน อาทิเชน หากระบบ ระบบหนึ่งตองทําการทํางานรวมกับระบบอีกระบบหนึ่งใน สว นของฐานขอมูลเพื่อทําการนําเอาฐานขอมูลนั้น ๆ มาแสดงผล แตพอดีวาระบบนั้น มีการใช โครงสรางการทํางานที่แตกตางกันและประกอบกับ ระบบนั้นไมอนุญาตใหอีกระบบเขาถึงขอมูล ไดโดยตรง ดวยเหตุนเี้ อง XML จึงมามีสวนในการทํางานตรงจุดนี้ คือ XML จะมาทําหนาที่เปนสื่อ ในการเขาถึงขอมูลอีกรูปแบบหนึ่ง ที่สามารถทําใหระบบงานใดๆ ที่ตองการเขารวมใชฐานขอมูล เพื่อนําไปแสดงผลนั้น สามารถ นําไปใชไดโดยที่ระบบนั้น ไดมีผลกระทบใดๆ ที่เกิด จากการถึง ขอมูลโดยตรง ของระบบงานอื่น 2.3.5 My SQL เปน ขอมูลที่มีค วามนิยมในอัน ดับตน ๆ ของเว็บโปรแกรมเมอร เนื่ องจากมีค วาม สะดวกในการติดตอ และงายตอความเขาใจและอีกอยางคือ Free ไมเสียคาใชจายในการใชงาน และ สามารถใชงานรวมกับ ภาษา PHP หรือ ภาษาจําพวกการพัฒนาเว็บไดเปนอยางดี 2.3.6 Appserv 2.5.10 เปนซอฟตแวรที่นํามาใชในจําลองเครื่องใหเปนเซิรฟเวอร เพื่อใชในการทดสอบและ การพัฒนาการทํางานของโครงงานนี้ซึ่งเวอรชันนี้เปนเวอรชนั ที่ออกมาลาสุด ณ ตอนที่กําลังดําเนิน


18 โครงงานนี้ ซึ่งมีคุณสมบัติมากมาย ซึ่งสามารถศึกษารายละเอียดเพิ่มเติมไดที่ หัวขอ 2.9 Appserv 2.5.10 ตอไป 2.3.7 Adobe Dreamweaver CS3 เปนซอฟตแวรที่มีประสิทธิภาพอยางมากในออกแบบเว็บไซต การจัดการโครงสราง , การทําโครงสรางของเว็บและยังเปนที่นิยมกันอยางมากของเว็บมาสเตอร ตั้งแตผูที่แบบเริ่มตนไป จนถึงเว็บมาสเตอรที่ชํานาญแลว เพราะชวยใหเว็บมาสเตอรเห็นรูปแบบโครงสรางที่เขียนขึ้นมาได เมื่อ เปรียบเทียบกับการเขียนใน Note pad ซึ่งมีแตภาษาอยางเดียว และ Dreamweaver ในเวอรนี้ยังมี ความสามารถในการทําสรางฟรอมเพื่อติดตอฐานขอมูล อีกดวย 2.3.8 Adobe Photoshop CS3 เปนซอฟตแวรที่นําใชในการสรางกราฟกใหกับเว็บไซต ที่พัฒนาไดเปนอยางดี ทําให กราฟกบนเว็บนั้นเปนที่ดึงดูดของผูใชทั่วๆไปและมี plug in ที่ชวยในการทํางานที่หลากหลาย ไมวา จะเปนทําภาพสีใหเปนภาพขาวดํา หรือการทําปุมที่ใชทําลิงคตางๆ เปนตน 2.3.9 Adobe Flash CS4 เปนซอฟตแวรที่นํามาสรางกราฟกที่เคลื่อนไหวเพิ่มจุดเดนใหกับเว็บไซต โดยจุดเดน ของโปรแกรมมีอยูที่ขนาดของชิ้นงานที่นํามาใชมีขนาดเล็กมาก เพื่อไมเปนปญหาในการแสดงผล และการเผยแพรในเว็บไซต สวนการทํางานในโครงงานนี้ ผูจัดทําได นําเอา Action script 3 เขาใช ในผลดวย ดวยความสามารถของ as3 นี้ทําระบบการออกแบบเสื้อนั้น ออกมาตอบสนองตอผูใชใน ระบบไดเปนอยางนี้ 2.4 PHP-Fusion 7.0 2.4.1 ความหมาย PHP - Fusion คือ เว็บสําเร็จรูปตัวหนึ่ง หรือเปน CMS ตัว หนึ่ง ที่พัฒนาดวยภาษา PHP ซึ่งมีความยืดหยุน กวา HTML มาก และยังสามารถทําการติดตอ กับผูใชไดอีกดวย โดย PHP Fusion นั่นมีการพัฒนาระบบใหสามารถทําการจัด การเนื้อหา ควบคุมสิทธิ์การใชงานและการ เปลี่ยนแปลงขอมูล


19 2.4.2 รูปแบบโครงสรางการทํางานของ PHP - Fusion

ภาพที่ 2.1 โครงสรางการทํางานของ PHP - Fusion


20 2.4.3 สวนประกอบของ PHP Fusion

ภาพที่ 2.2 หนาเว็บครั้งแรกที่ติดตั้ง

ภาพที่ 2.3 แสดงสวนหัวเว็บครั้งแรกที่ติดตั้ง กลอง พาแนล

ภาพที่ 2.4 กลอง พาแนลในระบบ


21 ซึ่งจะอยูที่ดาน ซายมือและขวามือของเว็บ ซึ่งกลองพาแนลความสําคัญของมันคือ เอาไว แบง โซนตางๆของเว็บเราได และเพิ่มลดไดตามใจอีกเชนกัน หรือแลวแตคนจะเอาไปประยุกตใช งานอยางอื่น 2.5 ภาษา PHP 2.5.1 ความหมายของภาษา PHP ภาษา PHP (Professional Home Page : PHP) เปนภาษาสคริปต และ อินเตอรพรีต เตอร เหมือนกับ JavaScript และ Microsoft VBScript ที่สามารถทํางานแบบอิสระ โดยในยุคแรก ๆ จะทํางานเครื่องบริการที่ใช Lenux เปนระบบปฏิบัติการ PHP (เปนเวอรชันที่มีโปรแกรมที่ เรียกวา Personal Home Page Tools) สคริปตของ PHP จะเหมือนกับ ASP (Active Server Page : ASP) ซึ่งสคริปตจะถูกเขียนลงในเว็บเพจภายใน HTML อีกที กอนที่เพจจะถูกสงไปยังผูใชที่มี การรองขอเครื่องบริการเว็บจะเรียก PHP เพื่อแปลงคําสั่งและทํางานจากการเรียก PHP สคริปต ซึ่งในเพจ HTML จะประกอบดวย PHP สคริปตที่มีชื่อไฟลที่มีนามสกุลเปน . php .php3 หรือ .phtml นอกจากจะสามารถทํางานไดคลายกับ ASP PHPยังสามารถทํางานในสวนของ Dynamic HTML เพจไดอีกดวย เมื่อใช PHP รวมกันในการสรางเว็บเพจ จะไมตองการความสามารถของบราวเซอร ที่พิเศษแตอยางใด เริ่มตนของโปรแกรม PHP ดวยแท็ก <?php ปดทายดวย ?> (ซึ่งสามารถคอน ฟก PHP โดยใชรูปแบบ ASP <% %> แท็ก หรือ <SCRIPT LANGUAGE = “php”> </SCRIPT>) โดยการทํางานของ PHP จะอยูภายใตของแท็กทั้ง 2 นี้ PHP เปนภาษาที่มีรูปประโยคคลาย ๆ กับ C และ Perl โดยมีความแตกตางที่ไม จําเปนตองมีการประกาศตัวแปรกอนการใชงาน และงายตอการสรางแถวลําดับ (Array) และ แฮช (Hashes) การใชแถวลําดับรวมกัน นอกจากนี้ PHP ยังมีความสามรถรองรับการเขียน โปรแกรมเชิงวัตถุดวย 2.5.2 ขอดีของภาษา PHP เปน ภาษาสคริปตที่สามารถทําความเขาใจไดโ ดยงาย, เปน ภาษาสคริปตที่สามารถ ทํางานกับฐานขอมูลไดหลายชนิด , มีก ารทํางานที่ร วดเร็ว และไมสิ้น เปลืองทรัพยากร, ไมเสีย คาใชจายในการนําไปใช เนื่องจากเปน ซอฟตแวรใ หเปลา , เปนภาษาสคริปตที่สนับสนุนการ ทํางานบนอินเตอรเน็ต


22 2.6 Ajax 2.6.1 ประวัติ ความเปนมา Jeese Jams Garett นั้นเปนผูที่ไดบัญญัติคําวา เอแจ็กซ ขึ้นเมื่อป พ.ศ. 2548 ซึ่งนึกขึ้น ได ร ะหว า งที่ เขากํ าลั ง อาบน้ํ า เพื่ อ หาคํา สั้ น ๆ สํ า หรับ อธิ บ ายให ลูก ค า ของเขาทราบเกี่ ย วกั บ เทคโนโลยีตางๆ ที่ตองการจะนําเสนอเอแจ็กซโดยตัวมันเองแลวไมไดเปนเทคโนโลยีหรือภาษา โปรแกรมชนิด ใหม แตเ ปน การรวมกลุ มของเทคโนโลยีที่ มีใ ชัอ ยูแล ว ดัง ที่ก ลา วขา งต น โดย วิวัฒนาการของเอแจ็กซเริ่มตนเมื่อ ป ค.ศ. 2002 ไมโครซอฟทไดทําการคิดคน XMLHttpRequest ขึ้นมาเพื่อเปนทางเลือกในการเขียนโปรแกรมบนเว็บเพจ เพื่อใชติดตอกับ เว็บเซิรฟเวอร ในการ แลกเปลี่ยนขอมูล ซึ่งในขณะนั้นมีแตเพียง อินเทอรเน็ตเอกซพลอเรอร เทานั้นที่มีความสามารถนี้ ตอมาเว็บเบราวเซอรอื่นๆไดมีการพัฒนา จึงทําใหแนวคิดและเทคนิคการพัฒนาเว็บแอปพลิเคชัน ดวย เอแจ็กซ เริ่มเปนที่รูจักกันกวางขวางขึ้น จนปจจุบันถือวาเปนหนึ่งในหัวใจหลักของแนวคิด เรื่อง Web 2.0 2.6.2 ความหมาย AJAX ยอมาจากคํ าว า Asynchronous JavaScript and XML คื อเทคนิ ค การใช Javascript และ XML ทํางานแบบไมสัมพันธกันตามชวงเวลา

ภาพที่ 2.5 การทํางานของ classic and ajax web application model จากรูป ดานซายเปนรูปการทํางานของ Browser เมื่อติดตอกับ Web Server ตามปกติ การทํางานก็มัน ก็อยางที่เราเขาใจกันคือ เมื่อเรา เรียก url ไป Browser จะทําการติดตอ กับ Web


23 Server และ Web Server ทําการประมวลผลสงคาเปน HTML, Image , CSS อะไรก็แลวแตกลับไป หา Browser นําไปแสดงผลจากหลักการดังกลาวการพัฒนาใหหนา Web แสดงผลแบบมีชีวิตชีวา เชนการแสดงผลขอมูลแบบ Realtime ไมวาจะเปนขอมูลขาวสารที่มีการเปลี่ยนแปลงอยางทันดวน ยกตัวอยาง ราคาหุนมีการเปลี่ยนแปลงทุกวินาที หากการติดตอแบบนี้ Browser ตองเรียกขอขอมูล ใหมกับWeb Server ทุกๆครั้งหลายๆทานอาจจะบอกวา ใน HTML ก็มี Tag ที่วาใหใชแลวนั้นก็คือ <meta http-equiv="refresh" content="5;URL=url"> ก็ใชครับ แตการใช Tag refresh นั้นเปนการ เปลี่ยนแปลงทั้งหนาจอบางครั้งขอมูลที่ตองการเปนขอมูลแคกรอบๆเดียวในหนา web การ refresh ทั้งหนา จึงไมใชคําตอบที่ดี 2.6.3 หลักการของ AJAX วิธีการทํางานของเว็บแอปพลิเคชันแบบดังเดิมนัน้ โดยปกติแลวเมื่อผูใชทําการรองขอ ขอมูลจากเซิรฟเวอร ตัวเว็บเบราวเซอรจะทําการสงขอมูลการรองขอโดยใชโพรโทคอล HTTP เพื่อ ติดตอกับเว็บเซิรฟเวอร และที่เว็บเซิรฟเวอรจะทําการประมวลผลจากการรองขอที่ไดรับ และสง ผลลัพธเปนหนา HTML กลับไปใหผูใช วิธีการขางตนเปนวิธีการแบบการรองขอและการตอบรับ (Request and Response) ซึ่งผูใชจ ะตองรอระหวางที่เซิรฟเวอรประมวลผลอยู ซึ่งเปนหลักการ ทํางานแบบ Synchronous แตการทํางานของเว็บแอปพลิเคชันที่ใชเทคนิคเอแจ็กซจะเปนการทํางาน แบบ Asynchronous หรือการติดตอสื่อสารแบบไมตอเนื่อง โดยเซิรฟเวอรจะทําการสงผลลัพธเปน เว็บเพจใหผูใชทันทีโดยไมตองรอใหประมวลผลเสร็จกอน หลังจากนั้นเว็บเพจที่ผูใชไดรับจะทํา การดึงขอมูลในสวนตางๆทีหลัง หรือจะดึงขอมูลก็ตอเมื่อผูใชตองการเทานั้น

ภาพที่ 2.6 รูปแบบการทํางานของ AJAX


24 2.7 XML 2.7.1 ประวัติความเปนมา XML (Extensive Markup Language) โปรโตคอลอินเตอรเนต (Internet ProtocolIP), HypertText Markup Language และ HyperText Transport Protocol (HTTP) ไดเปนการปฏิวัติ และสรางมิติใหมในการกระจายขอมูลและสารสนเทศ การนําเสนอ ตลอดจนการคนคืน โดยใหผูใช สามารถใชสารสนเทศที่ตองการไดงายดวยเบราวเซอร และมี search engine หรือเครื่องมือในการ ชวยคนหา นอกจากนั้นยังมีการประยุกตไปใชกับเครือขายในสํานักงานหรืออินเตอรเน็ต และใช สํา หรั บ การบริ ก ารขอ มูล สํ าหรั บลู ก ค า และคูค าให สามารถตอบสนองทางดา นสารสนเทศที่ ตองการ ไดอยางมีประสิทธิภาพมากขึน้ 2.7.2 โครงสรางของเอกสาร XML

ภาพที่ 2.7 แสดงโครงสรางของเอกสาร XML 2.7.2.1 โครงสรางของเอกสาร XML ประกอบดวย 1) สวนแรก (Prolog) ในสวนนี้ จะประกอบดวย 1.1) XML declaration เปนการประกาศใหรูวาเอกสารนี้คือ XML และ เปนการประกาศเวอรชันของ XML (ในตัวอยาง เปนเวอรชัน 1.0) การใสคา XML declaration จะ ประกาศหรือไมประกาศก็ได แตควรมีขอกําหนดนี้ในเอกสาร 1.2) XML บรรทัดวาง เพื่อชวยใหเอกสารนาอานขึ้น ตัวประมวลผลของ XML (XML Processor) จะขามและไมนําบรรทัดวางเหลานั้นมาประมวลผล


25 1.3) หมายเหตุ (Comment) เพื่อใหสามารถพิมพขอความที่ตองการอาจ เปนขอความที่ใชอธิบายจุดประสงคของเอกสาร เปนตนจะมีหรือไมมีก็ไดเชนเดียวกันกับบรรทัด วาง ตัวประมวลผลของ XMLจะขามและไมนําหมายเหตุมาประมวลผล 2) ในสวนที่สองเรียกวา Document element หรือ Root element ซึ่งสามารถ บรรจุ Element เพื่อเติม ในเอกสาร XMLได ในเอกสาร XML นั้น Element จะแสดงลักษณะ โครงสรางของเอกสารและแสดงสวนประกอบของเนื้อหาเอกสารอยูภายใน จาก ภาพที่ 2.7 เปน ตัวอยางของการใชขอมูลใน Book Element ซึ่งประกอบดวย TITLE, AUTHOR, PRICE 2.7.3 จุดเดนของ XML 2.7.3.1 ดูเอกสารไดงาย สะดวก และไดผลดีเหมือน HTML 2.7.3.2 เนนความจําเปน กะทัดรัด เขาใจงาย และไดประโยชนกวางขวาง 2.7.3.3 อานไดดวยมนุษย โดยไมตองอาศัยโปรแกรมหรือเครื่องมือชวยแปล 2.7.3.4 การเขียน XML ทําไดตั้งแตก ารใช Text editor ทั่ว ไป และไมตองการ เครื่องมือที่ซับซอน 2.7.3.5 เปนมาตรฐานที่กําหนดแลวใชงานไดทันที โดยที่บราวเซอรและอุปกรณตาง ๆ พรอมใชงานรวมกัน 2.7.3.6 ตองสามารถใชโปรแกรมแปลภาษาไดงาย โดยทั่วไปเขียนในรูปแบบ BNF ได (Baches Normal Form) 2.7.3.7 ใชเปนตัวควบคุมขอมูล (Meta data) จึงเปนแนวทางในการขนสงขอมูล และ สรางการเชื่อมโยงระหวาง 2.7.3.8 สนั บ สนุ น UNICODE ทํ า ให ใ ช ไ ด ห ลากหลายภาษา และผสมกั น ได หลากหลายภาษา 2.7.3.9 ดึงเอกสาร XML มาใชงานไดงาย และใชรวมกับโปรแกรมประยุกตอื่นได งาย เชน โปรแกรม DB2, Oracle, SAP เปนตน 2.7.3.10 ชวยทําใหเกิดการรับสงขอมูลแบบ EDI (Electronic Data Interchange)โดย ทําใหแนวทางการเชื่อมโยงและสรางความเปน เอกสารหรือมาตรฐานระหวางองคกร 2.7.3.11 ชวยในการขนสงขอมูลไปยังปลายทางเพื่อใหแปลความหมายและใชงานได อยางเต็มประสิทธิภาพ 2.7.3.12 นําไปประยุกตใชในการดําเนินกิจกรรมบนเครือขายไดมาก เชน E-Business, EDI, E-Commerce, การจัดการ Supply chain / Demand chain management, การดําเนินการแบบ intranet และ Web Base Application


26 2.8 My SQL 2.8.1 ความหมายของภาษาเอสคิวแอล ภาษาเอสคิวแอล (Structured Query Language : SQL) เปนภาษาที่ใชในการจัดการ ขอมูลที่อยูภายในฐานขอมูลเชิงสัมพันธ ที่ไดรับการสนับสนุนจากผูผลิตซอฟตแวรดานระบบการ จัดการฐานขอมูลกันอยางแพรหลาย จึงสามารถใชไดกับฐานขอมูลทุกชนิด เชน DB2 , Oracle , MS-Access เปนตน นอกจากนั้นทาง American National Standards Institute (ANSI) ไดกําหนด รูปแบบภาษาเอสคิวแอลมาตรฐานขึ้น เพื่อใหเปนมาตรฐานทั่วไปของภาษาเอสคิวแอลที่สามารถ ใชรวมกันไดอีกดวย อยางไรก็ตามรูปแบบของภาษาเอสคิวแอลที่ใชในระบบการจัดการฐานขอมูล แตชนิดของผูผลิตแตราย อาจจะมีรายละเอียดเพิ่มเติมแตกตางกันไปบาง ทั้งนี้เพื่อเปนการแสดง ความสามารถเพิ่มเติมและจุดเดนของระบบการจัดการฐานขอมูลของแตละบริษัท 2.8.2 ประเภทของคําสั่ง SQL คําสั่งในภาษาSQL ประกอบดวยชุดคําสั่งหลัก ๆ 3 ประเภทดวยกัน ไดแก 2.8.2.1 DDL (Data Definition Language) เปนชุดคําสั่งที่ใชในการนิยาม กําหนด หรือสรางขอมูล เชน table, index, view ไดแก คําสั่ง create table, create view เปนตน 2.8.2.2 DML (Data Manipulation Language) เปนชุดคําสั่งที่ใชในการประมวลผล หรือจัดการกับขอมูลในฐานขอมูล ไดแก คําสั่ง select, insert, update เปนตน 2.8.2.3 DCL (Data Control Language) เปนคําสั่งที่ใชในการควบคุมสิทธิ์ของผูใชใน การใชขอมูล รวมทั้งสวนที่ใชควบคุม การใชงานฐานขอมูลจากผูใชหลาย ๆ คนพรอมกัน ไดแก คําสั่ง grant, revoke เปนตน 2.8.3 ขอดีในการใชภาษาSQL 2.8.3.1 ใกลเคียงภาษาพูด (ภาษาอังกฤษ) ทําใหงายตอการใชงานและการทําความ เขาใจ 2.8.3.2 สามารถทํางานรวมกับโปรแกรมภาษาอื่น ๆ เชน C, Pascal 2.8.3.3 เปนภาษามาตรฐาน ซึ่งจะมีรูปแบบการเขียนคําสั่ง ที่คลายคลึงกัน แมวาจะมี การทํางานบนเครื่องคอมพิวเตอรหรือระบบปฏิบัติการที่ตางกัน 2.9 Appserv 2.5.10 2.9.1 ความหมายของโปรแกรม AppServ 2.5.10 AppServ คือโปรแกรมที่รวบรวมเอา Open Source Software หลายๆ อยางมารวมกัน โดยมี Package หลักดังนีค้ ือ Apache 2.5.10, PHP 2.5.6, MySQL 5.0.51b, phpMyAdmin 2.10.3


27 จุดประสงคหลักของการรวมรวบ Open Source Software เหลานี้เพื่อทําใหการติดตั้ง โปรแกรมตางๆ ที่ไดกลาวมาใหงายขึ้น เพื่อลดขั้นตอนการติดตั้งที่แสนจะยุงยากและใชเวลานาน โดยผูใชงานเพียงดับเบิ้ลคลิก setup ภายในเวลา 1 นาที ทุกอยางก็ติดตั้งเสร็จสมบูรณระบบตางๆ ก็ พรอมที่จะทํางานไดทันทีทั้ง Web Server, Database Server เหตุผลนี้จึงเปนเหตุผลหลักที่หลายๆ คนทั่วโลก ไดเลือกใชโปรแกรม AppServ แทนการที่จะตองมาติดตั้งโปรแกรมตางๆ ที่ละสวนไม วาจะเปนผูที่ความชํานาญในการติดตั้ง Apache, PHP, MySQL ก็ไมไดเปนเรื่องงายเสมอไป 2.9.2 ขอแตกตางของ AppServ ในแตละเวอรชนั AppServ ไดแบงเวอรชันออกเปน 2 สวนดวยกัน คือ 2.9.2.1 2.5.x คือเวอรชัน ที่นํา Package ใหมๆ นํามาใชงานโดยเฉพาะ เหมาะ สําหรับนักพัฒนาที่ตองการระบบใหมๆหรือตองการทดสอบ ทดลองใชงานฟงกชันใหม ซึ่งอาจจะ ไมไดความเสถียรของระบบได 100%เนื่องจากวา Package จากนักพัฒนานั้นยังอยูในชวงของขั้น ทดสอบ ทดลองเพื่อหาขอผิดพลาดอยู 2.9.2.2 2.4.x คือเวอรชันที่นํา Package ที่มีความเสถียรเปนหลัก เหมาะสําหรับผูที่ ตองการความมั่นคงของระบบโดยไมไดมุงเนนที่จะใชฟงกชันใหม 2.10 Adobe Dreamweaver CS3 Adobe Dreamweaver CS3 เวอรชันนี้ ไดรับการพัฒนาภายใตสังกัดของ Adobe ซึ่ง CS3 นั้นก็ ยอมาจาก Creative Suite3 นั่นเอง นํามาใชในการพัฒนาในสวนของการจัดหนาเว็บไซต ระดับมือ อาชีพ มีความสามารถในการใชสราง ออกแบบ เขียนโคด เว็บเพ็จ บริหารจัดการเว็บไซต และเว็บ แอพพลิเคชัน ไดอยางมีประสิทธิภาพ ชวยลดงาน ลดเวลาในการพัฒนาเว็บเพ็จ โดยสามารถสราง โคด ไดหลายภาษา เชน HTML, PHP, ASP, JSP และสามารถติด ตอกั บฐานขอมู ลไดหลาย ฐานขอมูล เชน MySQL, PostgreSQL, MS Access, MS SQL Server ฯ โดยที่ผูออกแบบเว็บเพ็จ ไมจําเปน ตองมี ค วามความรูดานภาษาและการจัด การฐานขอมูล หรือมีค วามรูเพียงเล็ก นอยก็ สามารถสรางเว็บเพ็จไดอยางรวดเร็ว


28

ภาพที่ 2.8 แสดงหนาจอของโปรแกรม Adobe Dreamweaver CS3 การใชงานภาษาไทยใน Adobe Dreamweaver CS3 การใชงานภาษาไทยในเวอร ชัน นี้ สามารถใชงานภาษาไทยไดเลย เมื่อติดตั้งโปรแกรมเสร็จ โดยไมตองตั้งคาใด ๆ ใหกับโปรแกรม เหมือนกับในเวอรชันกอน ๆ เครื่องมือใหม ๆ ของ Adobe Dreamweaver CS3 สําหรับเครื่องมือใหมที่เพิ่มเขามาใน เวอรชันนี้ที่เห็นไดชัดคือ แถบเครื่องมือ Spry ซึ่งจะชวยใหการสรางฟอรมสะดวกขึ้น แถบเครื่องมือ Spry มีหนาที่ในการตรวจสอบคาของขอมูล

ภาพที่ 2.9 แสดงหนาเครื่องมือ Spry ในโปรแกรม Adobe Dreamweaver CS3 2.11 Adobe Photoshop CS3 2.11.1 ประวัติ Photoshop Photoshop เปน โปรแกรมทางดานกราฟก ที่คิด คนโดยบริษัท Adobe ที่ใ ชกัน ใน อุตสาหกรรมการพิมพระดับโลก เปนที่รูจักกันดีในกลุมนักออกแบบสื่อสิ่งพิมพทั่วไป โปรแกรม Photoshop สามารถแลกเปลี่ยนไฟลตาง ๆ และนําไปใชงานรวมกับโปรแกรมอื่น ๆ ไดอีกอาทิเชน Illustrator , PageMaker , ImageReady , Acrobat ซึ่งโปรแกรมเปลานี้ ก็อยูใ นตระกูล Adobe เชนเดียวกัน


29

ภาพที่ 2.10 แสดงหนาจอในโปรแกรม Adobe Photoshop CS3 2.11.2 ความสามารถของ Photoshop 2.11.2.1 งานดานการสรางภาพกราฟก 2.11.2.2 งานดานการแกไข และการตกแตงภาพถาย 2.11.2.3 การปรับสีภาพใหถูกตอง 2.11.2.4 งานสรางตัวอักษร 2.11.2.5 งานดานสิ่งพิมพ 2.11.2.6 งานดานอินเตอรเน็ต 2.11.3 Photoshop สามารถเซฟเปนไฟลตางๆ ไดดังนี้ 2.11.3.1 Bmp 2.11.3.7 Eps 2.11.3.2 Jpeg 2.11.3.8 Pcx 2.11.3.3 Gif 2.11.3.9 Raw 2.11.3.4 Png 2.11.3.10 Pixar 2.11.3.5 Tiff 2.11.3.11 Scitex CT 2.11.3.6 Pdf 2.11.3.12 Tga 2.11 Adobe Flash CS4 Flash เปน รูปแบบภาพกราฟก ชนิด หนึ่ง ที่มีค วามสามารถมากกวาภาพกราฟก ทั่วๆไป ที่ ไมใชแควาแสดงภาพไดก็พอแลว แต Flash ยังสามารถสงขอมูลไปยัง CGI หรือแมแตทําการ ประมวลผลเล็กๆนอยๆได จึงไมแปลกใจเลยวาทําไม Flash ถึงไดรับความนิยมอยางรวดเร็วในเวลา อันสั้น แตคุณสมบัติของ Flash ไมไดมีแคนี้ Flash ใชกราฟกแบบเว็คเตอร(Vector) ซึ่งจะใช CPU ประมวลผลจากขอมูลในไฟล Flash ใหเปนภาพ ภาพที่ไดจะคมชัด ภาพที่เห็นจะไมแตกเปนริ้วๆ


30 เมื่อซูมภาพเขาไปมากๆ แตมีขอแมวาภาพนั้นจะตองสรางจากเครื่องมือที่มีอยูใน Flash เทานั้น ถา คุณใชวิธี Import ภาพบิตแมพเขามา ผลที่ไดก็จะเหมือนภาพบิตแมพทั่วๆไปคือ ภาพไมชัด ขอดีของ Flash อีกประการก็คือ ขนาดที่ไดจะเล็กกวาภาพบิตแมพทั่วๆไป ทําใหโหลดไดเร็ว ถาคุณเคยทําเว็บไซต คุณคงรูดีวาคุณไมสามารถใชฟอนตประหลาดๆได ถาเครื่องผูใชคนอื่น ไมมีฟอนตตัวนี้ แต Flash แกปญหาตรงนี้เปนที่เรียบรอยแลว คือจะใชวิธีบีบอัดฟอนตรวมเขาไป กับไฟล Flash ,Flash จะบีบอัดฟอนตเทาที่ใชเทานั้น เชน ถาคุณพิมพคําวา end ลงไป Flash ก็จะบีบ อัดฟอนตเฉพาะตัวe, n, d เทานั้น ทําใหคุณสามารถเลือกใชฟอนตประหลาดๆไดมากขึ้น ถึงแมวา เครื่องผูใชจะไมมีฟอนตตัวนี้อยูก็ตาม Flash ก็ยังสามารถแสดงผลไดอยางถูกตอง Flash จะถูก เก็บอยูในไฟลที่มีน ามสกุลเปน .swf การที่จ ะให Flash แสดงผลนั้น คุณ ไม สามารถใชแท็ก img ธรรมดาได คุณจะตองใชแท็ก object แทน คุณสามารถอานรายระเอียดไดที่ บทความ Flash กับ Html ครับ อันที่จริงแลว Flash ไมไดเปนเพียงภาพกราฟกธรรมดา คุณยังสามารถกําหนดการทํางาน ใหกับ Flash ไดโดยงาย หรือที่เรียกอีกอยางนึงวา ใสสคริปให Flash ได นั้น เอง คุณสามารถใช Flash ในงานอื่นได ไมจําเปนวาจะตองนํามาใชในเว็บเทานั้น คุณยังสามารถนํา Flash ไปสรางสื่อ การเรียนการสอนไดงาย โดยการวาดรูปแลวก็ใสสคริปลงไปอีกหนอยเทานั้นเอง แตมีขอเสียตรงที่ Flash ไมสามารถเขียนขอมูลลงบนไฟลได อาจจะทําใหยากตอการเก็บขอมูลบางอยาง ยกเวนคุณจะ นําไปใสรวมกับโปรแกรมที่คุณเขียนขึ้นมา ซึ่งถาใชวิธีนี้ คุณก็จะสามารถเก็บขอมูลไดงาย ขอดีของ Flash ภาพชัด, ขนาดเล็ก, โหลดไดเร็ว, ทํางานแทน CGI ไดในระดับหนึ่ง, ทําภาพเคลื่อนไหวได โดยไมตองพึ่ง Java Script, สรางฟอรมสําหรับกรอกขอมูลได, ขอเสียของ Flash, ผูใชที่มี Browser รุนเกาๆจะไมสามารถดู Flash ได จําเปนตองไปโหลดปลักอินเพิ่มเติมเอาเอง (บางที Browser รุน ใหมที่ไมมีปลั๊กอินก็ดูไมไดเหมือนกัน) 2.13 ตัวอยางการประยุกตใช PHP และ Ajax ใน PHP-Fusion 7.0 2.13.1 การสรางตารางเพิม่ ใน PHP-Fusion 7.0 2.13.1.1 เปนการเพิ่มตารางเขาไปใน Data base ของ PHP-Fusion 7.0 1) เขาไปยัง phpMyAdmin เลือก Data base ของ PHP-Fusion 7.0 ที่ ติดตั้งไว 2) ไปที่ Create new table on database db_alumni เพื่อทําการเพิ่มตาราง เขาไป


31 2.1) กําหนด name ชื่อ tb_test และ Number of fields: 2 2.2) แลวคลิก GO เพิ่มสราง 3) การใสขอมูลลงไปใน fields ดังภาพที่ 2.11

ภาพที่ 2.11 แสดงขั้นตอนการเพิ่มตารางลงใน Data base ของ PHP-Fusion 7.0 2.13.2 การสราง form เพิ่ม ลบ แกไขที่ใช เทคนิค ของ Ajax และ PHP 2.13.2.1 โคตที่ใชสราง test_name.php ( เปนหนาโครงสรางหลังของการแสดงผลในรูปแบบการ ทํางานของ Ajax ) <?php require_once "maincore.php"; require_once THEMES."templates/header.php"; if (iMEMBER){ opentable("ระบบการบันทึกชื่อ"); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">


32 <head> <meta http-equiv="Content-Type" content="text/html; charset=tis620" /> <title>Untitled Document</title> <script> function callme() {

var req; if(window.XMLHttpRequest)

{req= new XMLHttpRequest();

}else if(window.ActiveXObject) {req= new ActiveXObject("Microsoft.XMLHTTP") }else{ alert("Browser not support"); return false;} req.onreadystatechange = function() { if(req.readyState==4){ document.getElementById("area1").innerHTML=req.responseText; document.myform.name.value=""; show(); }else{ document.getElementById("area1").innerHTML="Please Wait..."; }


33 } var numrandom=Math.random(); var name=document.myform.name.value; var querystr=""; querystr+="addsql.php?pop="+numrandom; querystr+="&name="+name; req.open("GET",querystr,true); req.send(null); } function show() { var req; if(window.XMLHttpRequest)

{req= new XMLHttpRequest();

}else if(window.ActiveXObject) {req= new ActiveXObject("Microsoft.XMLHTTP") }else{ alert("Browser not support"); return false;} req.onreadystatechange = function() { if(req.readyState==4


34 document.getElementById("area1").innerHTML=req.responseText; }else{ document.getElementById("area1").innerHTML="Please Wait..."; } } var numrandom=Math.random(); var querystr=""; querystr+="show.php?pop="+numrandom; req.open("GET",querystr,true); req.send(null); } function del(id) { if(confirm('คุณแนใจหรือไมที่ตองการลบขอมูลที่เลือก?')==true) { var req; if(window.XMLHttpRequest)

{req= new XMLHttpRequest();

}else if(window.ActiveXObject) {req= new ActiveXObject("Microsoft.XMLHTTP")


35 }else{ alert("Browser not support"); return false;} req.onreadystatechange = function() { if(req.readyState==4){ document.getElementById("area1").innerHTML=req.responseText; document.getElementById("area4").innerHTML=""; document.myform.name.value=""; show(); }else{ document.getElementById("area1").innerHTML="Please Wait..."; } } var numrandom=Math.random(); var querystr=""; querystr+="delsql.php?pop="+numrandom; querystr+="&id="+id; req.open("GET",querystr,true); req.send(null); }


36 } function edit(id) { if(confirm('คุณแนใจหรือไมที่ตองการแกใขขอมูลที่เลือก?')==true) { var req; if(window.XMLHttpRequest)

{req= new XMLHttpRequest();

}else if(window.ActiveXObject) {req= new ActiveXObject("Microsoft.XMLHTTP") }else{ alert("Browser not support"); return false;} req.onreadystatechange = function() { if(req.readyState==4){ document.getElementById("area4").innerHTML=req.responseText; }else{ document.getElementById("area4").innerHTML="Please Wait..."; } } var numrandom=Math.random();


37 var querystr=""; querystr+="edit.php?pop="+numrandom; querystr+="&id="+id; req.open("GET",querystr,true); req.send(null); } function del(id) { if(confirm('คุณแนใจหรือไมที่ตองการลบขอมูลที่เลือก?')==true) { var req; if(window.XMLHttpRequest)

{req= new XMLHttpRequest();

}else if(window.ActiveXObject) {req= new ActiveXObject("Microsoft.XMLHTTP") }else{ alert("Browser not support"); return false;} req.onreadystatechange = function() { if(req.readyState==4){ document.getElementById("area1").innerHTML=req.responseText;


38 document.getElementById("area4").innerHTML=""; document.myform.name.value=""; show(); }else{ document.getElementById("area1").innerHTML="Please Wait..."; } } var numrandom=Math.random(); var querystr=""; querystr+="show.php?pop="+numrandom; querystr+="&id="+id; req.open("GET",querystr,true); req.send(null); } } }

function up() {


39 var req; if(window.XMLHttpRequest)

{req= new XMLHttpRequest();

}else if(window.ActiveXObject) {req= new ActiveXObject("Microsoft.XMLHTTP") }else{ alert("Browser not support"); return false;} req.onreadystatechange = function() { if(req.readyState==4){ document.getElementById("area4").innerHTML=""; document.myform.name.value=""; show(); }else{ document.getElementById("area1").innerHTML="Please Wait..."; } } var numrandom=Math.random(); var name=document.myup.name.value; var id=document.myup.id.value; var querystr="";


40 querystr+="updatsql.php?pop="+numrandom; querystr+="&id="+id; querystr+="&name="+name; req.open("GET",querystr,true); req.send(null); } </script> </head> <body onload="show()"> <table width="100%" border="1"> <tr> <td width="21%" height="77" valign="top" align="center" bgcolor="#FF9900"><form name="myform" method="post"> name: <input name="name" type="text" id="num1" size="10" maxlength="10" /> <br /> <div align="center"><input type="button" name="button" id="button" value="บันทึก" onclick="callme()"/></div> </form> </td>


41 <td width="46%" valign="top"><div lang="th" id="area1">&nbsp;</div> <div id="area4" lang="th">&nbsp; </div></td> <td width="33%" valign="top" bgcolor="#999999"><div lang="th" id="area2">&nbsp;</div></td> </tr> </table> <br> <hr> </body> </html> <?PHP closetable(); }else{ opentable("ระบบการบันทึกชื่อ"); echo"<center>ทานไมไดเปนสมาชิก นะครับ กรุณาลงชื่อกอนเขาใชระบบบริการ </center>"; closetable(); } require_once THEMES."templates/footer.php"; ?>


42

show.php (เปน ภาษา PHP ที่สรางเพื่อติดตอฐานขอมูล เพื่อนําแสดงผล ใน test_name.php ซึ่งเปนหนาหลักของการแสดงผล ) <? header("Content-Type:text/html; charset=tis620"); $link=mysql_connect("localhost","root","123456"); mysql_query("SET NAMES 'tis620'"); if(!$link) echo"ERROR MYSQL"; else { mysql_select_db("db_alumni",$link); $result=mysql_query("select * from tb_test",$link); echo"<br>"; $num_fields=mysql_num_fields($result); $rows=mysql_num_rows($result); echo"<Table border=1 width=200 align='center'>"; print("<tr>"); print("<td bgcolor='#FFCC33' width='30' align='center'>No</td>"); print("<td bgcolor='#FF6633' align='center'>Name</td>"); print("<td bgcolor='#FF6633' align='center'>แกไข</td>"); print("<td bgcolor='#FF6633' align='center'>ลบ</td>"); print("</tr>"); $i=1; while($row=mysql_fetch_row($result)) { print("<tr>"); print("<td bgcolor='#FFFFCC' align='center'>$i</td>");$i++; print("<td bgcolor='#FFFFCC' align='center'>$row[1]</td>");


43 print("<td bgcolor='#FFFFCC' align='center'><input type='button' value='แกไข' onclick='edit($row[0])'></td>"); print("<td bgcolor='#FFFFCC' align='center'><input type='button' value='ลบ' onclick='del($row[0])'></td>"); print("</tr>"); } echo"</table>"; mysql_close($link); }?> edit.php (เปน ภาษา PHP ที่สรางเพื่อติดตอฐานขอมูล เพื่อทําการแกไขขอมูล ฐานขอมูลแลวนํามาแสดงผลในหนา test_name.php ซึ่งเปนหนาหลักของการแสดงผล ) <? $id=$_GET[id]; $name=$_GET[name]; header("Content-Type:text/html; charset=tis620"); $link=mysql_connect("localhost","root","123456"); mysql_query("SET NAMES 'tis620'"); if(!$link) echo"ERROR MYSQL"; else { mysql_select_db("db_alumni",$link); $result=mysql_query("select * from tb_test WHERE id='$id'",$link); $row=mysql_fetch_row($result); echo"<br>"; echo"<hr>"; echo"<form name='myup'>"; echo"<Table border=1 width=200 align='center'>"; print("<tr>"); print("<td bgcolor='#FFCC33' width='30' align='center'>No</td>"); print("<td bgcolor='#FF6633' align='center'>Name</td>");


44 print("</tr>"); print("<tr>"); print("<td bgcolor='#FFFFCC' align='center'>$row[0]<input type='hidden' name='id' value='$row[0]'></td>"); print("<td bgcolor='#FFFFCC' align='center'><input type='text'name='name' value='$row[1]'></td>"); echo"</table>"; echo"<input type='button' name='button' id='button' value='บันทึก' onclick='up()'/>"; echo"</form>"; mysql_close($link); } ?> updatsql.php ( เปน ภาษา PHP ที่สรางเพื่อติดตอฐานขอมูล เพื่ออัฟเดท ขอมูลในการจัดการขอมูล test_name.php ซึง่ เปนหนาหลักของการแสดงผล ) <? $id=$_GET["id"]; $name=$_GET["name"]; header("Content-Type:text/html; charset=tis620"); $link=mysql_connect("localhost","root","123456"); mysql_query("SET NAMES 'tis620'"); if(!$link) echo"ERROR MYSQL"; else { mysql_select_db("db_alumni",$link); $sql="UPDATE `db_alumni`.`tb_test` SET `name` = '$name' WHERE `tb_test`.`id` =$id"; $result=mysql_query($sql,$link);


45 mysql_close($link); } ?> delsql.php ( เปนภาษา PHP ที่สรางเพื่อติดตอฐานขอมูล เพื่อใชในการลบ ขอมูลในฐานขอมูลแลวมาแสดงผล ใน test_name.php ซึ่งเปนหนาหลักของการแสดงผล ) <? $id=$_GET["id"]; $name=$_GET["name"]; header("Content-Type:text/html; charset=tis620"); $link=mysql_connect("localhost","root","123456"); mysql_query("SET NAMES 'tis620'"); if(!$link) echo"ERROR MYSQL"; else{ mysql_select_db("db_alumni",$link); $sql="UPDATE `db_alumni`.`tb_test` SET `name` = '$name' WHERE `tb_test`.`id` =$id"; $result=mysql_query($sql,$link); mysql_close($link); }?>


46 2.13.2.2 รูปภาพแสดงขั้นตอนการทํางาน

ภาพที่ 2.12 แสดงหนาแรกของ โคต test_name.php

ภาพที่ 2.13 แสดงการเพิ่มขอมูลของเทคนิค ของ Ajax และ PHP


47

ภาพที่ 2.14 แสดงการแกไขขอมูลของเทคนิค ของ Ajax และ PHP

ภาพที่ 2.15 แสดงการลบขอมูลของเทคนิค ของ Ajax และ PHP


48 2.14 ตัวอยางการประยุกตใช Flash รวมกับ XML ติดตอฐานขอมูล My SQL 2.14.1 การสรางฐานขอมูล

ภาพที่ 2.16 แสดงการสรางฐานขอมูล ชื่อ db_xml 2.14.1.1 เขาไปที่ชอง MySQL connection collation เลือกใหเปน tis620_thai_ci 2.14.1.2 แลวสรางฐานขอมูลใหมชื่อ db_xml แลวกดปุมสรางฐานขอมูล

ภาพที่ 2.17 แสดงการสรางตารางชื่อ products จํานวน 2 ฟวส 2.14.1.3 สรางตารางชื่อ products จํานวน 2 ฟวส แลวกดลงมือเพื่อสรางตาราง

ภาพที่ 2.18 แสดงการกําหนดคาตางๆ ในตารางชื่อ products 2.14.1.4 กําหนดรายละเอียดตางๆ ของตารางดังภาพที่ 2.18 แลวเปนอันเสร็จการ สรางฐานขอมูล 2.14.1.5 หลังจากนั้นใหทําการเพิ่มขอมูลลงไปในฐานขอมูลดังนี้


49

ภาพที่ 2.19 แสดงเพิ่มขอมูลในฐานขอมูล

2.14.2 สรางไฟล PHP ชื่อ products_xml.php 2.14.2.1 เปดโปรแกรม notepad.exe ที่มากับระบบปฏิบัตกิ ารวินโดว เพื่อสรางไฟล PHP ชื่อ products_xml.php ซึ่งมีโคต ภาพที่ 2.20 ดังนี้

ภาพที่ 2.20 แสดงโคตไฟล PHP ชื่อ products_xml.php


50 2.14.2.2 เมื่อไดแลวนําไฟลไปทดสอบกับ AppServ ซึง่ จะไดออกมาดังนี้

ภาพที่ 2.21 แสดงผลการทดสอบไฟล PHP ชื่อ products_xml.php 2.14.3 สรางชิ้นงาน Flash เพื่อนําเอา ฐานขอมูลที่ไดมาแสดงผล 2.14.3.1 เปดโปรแกรม Flash ขึ้นมาแลวเลือกใหเปน Action Script 2.0 ดังภาพที่ 2.22

ภาพที่ 2.22 แสดงการเลือกรูปแบบการสรางไฟล Flash เปน Action Script 2.0


51 2.14.3.2 ใหทําการสราง Layer ขึ้นมา 2 Layer ชื่อ list และ action ดังภาพที่ 2.23

ภาพที่ 2.23 แสดงการสราง Layer ชื่อ list และ action 2.14.3.3 เลือกที่ Layer ชื่อ List แลวนําเอา Component ชื่อ List มาวางไวบน Stage แลวกําหนดชื่อ Component ชื่อ List เปน theList ดังภาพที่ 2.24

ภาพที่ 2.24 แสดงการสราง Component ชื่อ List แลวตั้งชื่อเปน theList 2.14.3.4 แลวหลังจากนั้นใหเลือก Layer ชื่อ Action แลวกด F9 เพื่อใส Action Script ลงไปดัง ภาพที่ 2.25 – 2.26 หลังจากนั้นก็ทําการ save

ภาพที่ 2.25 แสดงการสราง Action Script


52 var theXML:XML = new XML(); theXML.ignoreWhite = true; theXML.onLoad = function() { var nodes = this.firstChild.childNodes; for (i=0;i<=nodes.length;i++) { theList.addItem(nodes[i].firstChild.nodeValue,i); } }; theXML.load("http://localhost/test/products_xml.php");

ภาพที่ 2.26 แสดงโคต Action Script ที่ใชแสดงผล

2.14.3.5 ทําการทดสอบโดยการ กด Ctrl + Enter จะไดผลลัพธดังภาพที่ 2.27

ภาพที่ 2.27 แสดงผลลัพธการทดสอบแสดงขอมูล

05_2  

บทที่ 2 ทฤษฎีและหลักการ 7 8 9 10 11 12 14 15 17 18 2.4.2 รูปแบบโครงสรางการทํางานของ PHP - Fusion ภาพที่ 2.1 โครงสรางการทํางานของ PHP - Fus...

Read more
Read more
Similar to
Popular now
Just for you