6. การใช้ Perl กับฐานข้อมูลอย่างง่าย

คุณจะได้เรียนรู้

  1. การสร้างฐานข้อมูล flat ไฟล์
  2. การเขียนข้อมูลใส่ฐานข้อมูล
  3. การแสดงข้อมูลในฐานข้อมูล
  4. การค้นหาภายในฐานข้อมูล

สมมุติว่าคุณทราบหลักการของฐานข้อมูลมาแล้ว ลืมแบบที่คุณเคยใช้มาก่อนนะครับ ในบทเรียนนี้เราจะเรียน เรื่องฐานข้อมูลแบบ flat file ซึ่งเป็นฐานข้อมูลที่เป็นไฟล์เอกสาร โดยแต่ละชุดของข้อมูล(record ) จะถูกเก็บเป็นบันทัด ต่อบันทัดไป โดยแต่ละข้อมูลย่อยในแต่ละ record จะถูกขั้นด้วยเครื่องหมาย | หรือเครื่องหมายอื่นๆที่คุณพอใจ แต่ที่เป็นสากลจะใช้เครื่องหมาย | ดูตัวอย่างได้ครับ

จอภาพ | ขาว | 10,000 <-- 1 บันทัดเรียกว่า record ประกอบด้วย 3 colum
เมาท์ | ดำ | 500
คีย์บอร์ด | ครีม | 1,000
Computer book |เขียว | 152
book of Perl | แดง | 500
Perl for ISAPI | Green | 900


ข้อมูลเหล่านี้จะเก็บไว้ในไฟล์ text ธรรมดาจะตั้งนามสกุลไฟล์เป็นอะไรก็ได้เช่น dat, txt, log หรือไม่มีนามสกุลก็ได้ ตอนนี้ก็รู้จักฐานข้อมูล flat file กันแล้ว เรามาลองเขียนข้อมูลใส่ flat file กันดีกว่า ขั้นตอนแรกให้เปิด notepad แล้ว save ไว้ใน cgi-bin ของคุณใช้ชื่อไฟล์ว่า database.txt โดยยังไม่ต้องพิมพ์อะไรใส่ลงไป นี่แหล่ะครับตอนนี้ก็ได้ฐานข้อมูลมาแล้ว ต่อมาเรามาเขียนโปรแกรมเพื่อเขียนข้อมูลเข้าฐานข้อมูลของเราดีกว่า โดยใช้หลักการเดิมๆที่เรียนมาคือการเปิดไฟล์เพื่อเขียนข้อมูล การรับข้อมูลจากแบบฟอร์ม ไฟล์โปรแกรมมีดังนี้ครับ

  1. databaseadd.pl โปรแกรมที่ทำหน้าที่รับและเขียนข้อมูลใส่ฐานข้อมูล
  2. databaseadd.htm แบบฟอร์มรับข้อมูลจากผู้กรอกเพื่อมาส่งให้โปรแกรม

ถ้าคุณ download ครบทุก 3 ไฟล์แล้วให้เรียกไฟล์ .htm ก่อน แล้วกรอกข้อมูลให้ครบ คลิ้กส่ง แล้วดูผลการทำงานก่อน 1 รอบ เมื่อเข้าใจการทำงานแล้ว ให้เปิด code ของไฟล์ .pl ดู เพื่อศึกษขั้นตอนการวาง code ต่างๆ ซึ่งแน่นอนว่าคุณจะคุ้นๆหรือพอเข้าใจ เพราะได้เรียนมาแล้วนี่ครับ ใน code มีคำอธิบายอ่านดูนะครับ จะเห็นว่าบทหลังๆนี่ผมไม่ได้นำ code มาลงแล้วอธิบายเหมือนแรกๆ เป็นเพราะว่า มันจะทำให้หน้าเนื้อหายาวไม่น่าอ่าน ก็เลยใช้วิธีเขียนอธิบายไว้ในไฟล์แทน ส่วนไฟล์ที่ทำหน้าที่ แสดงข้อมูลในฐานข้อมูลของเรา ชื่อ database.pl มีคำอธิบายอยู่ภายในเช่นเดียวกันครับ   หลังจาก เขียน-อ่านฐานข้อมูลได้แล้ว   มาลองทำการค้นหาในฐานข้อมูลของเรากันบ้างดีกว่า การค้นหานี้ Perl จะมีคำสั่งหนึ่งที่เรียกว่า grep มีโครงสร้างดังนี้

@results = grep(/pattern/,@listname);

@results คือผลจากการค้นหาจะอยู่ในรูปตัวแปร array
pattern
คือคำที่เราต้องการค้นหา
@listname
คือข้อมูลตัวแปร array ที่ให้โปรแกรมเข้าไปค้นหา

7. ประยุกต์ใช้ Perl - Perl in action

คุณจะได้เรียนรู้

  1. การนำความรู้ในบทเรียนก่อนๆนำมาประยุกต์ใช้เพื่อสร้างโปรแกรมง่ายๆใช้งานเอง

โปรแกรมที่ผมได้จัดทำขึ้นมาเพื่อให้เป็นตัวอย่างในบทเรียนนี้ เขียนโดยนำความรู้ ที่เราได้เรียนกันในบทเรียนก่อนมาประยุกต์ใช้ สามารถทำงานได้ดีในระดับหนึ่ง ถ้าคุณต้องการให้ดียิ่งขึ้น คุณสามารถพัฒนาตามแนวทางบางส่วนที่ผมได้แนะนำไว้ใน source code ของตัวโปรแกรมได้ อนึ่งผมไม่ได้เน้นเรื่องความสวยงามของหน้าตาโปรแกรม แต่เน้นให้คุณสามารถเข้าใจโปรแกรมได้ง่าย และสามารถใช้เป็นแนวทางในการพัฒนาโปรแกรมต่างๆได้เองให้ดียิ่งๆขึ้นไป สำหรับคำอธิบายโปรแกรมต่างๆ ผมได้อธิบายไว้ข้างใน source code แล้ว คุณเพียงคลิ้กลิ้งค์ต่อไปนี้เพื่อ download ไฟล์ต่างไปติดตั้งในเครื่องของคุณ อย่าลืมนะครับว่าไฟล์ .pl และ .txt ให้เก็บไว้ใน directory cgi-bin ของคุณ และไฟล์ .htm ให้เก็บไว้ใน root directory การใช้งานโปรแกรม ต่างๆให้คุณเรียกไฟล์ที่มีนามสกุล .htm ก่อน จากนั้นคุณจะสามารถใช้งานได้เอง

  1. โปรแกรม Message Board
    โปรแกรมนี้จะทำให้ผู้เข้าใช้เว็บไซต์ของคุณสามารถฝากชื่อ-อีเมล์ และข้อความของเขาไว้ในเว็บไซต์ของคุณได้ คุณยังสามารถดัดแปลงให้เป็น Guest book   หรือหน้าสำหรับแสดงความคิดเห็นเรื่องใดเรื่อง หรือใช้สำหรับเล่นเกม ตอบคำถาม หาเพื่อน หรืออะไรก็ได้ที่เหมาะสมที่คุณจะประยุกต์ใช้ โปรแกรมนี้ประกอบด้วย 4 ไฟล์คือ msgboard.pl - viewboard.pl - viewboard.txtwriteboard.htm

  2. โปรแกรม Form Dump
    โปรแกรม Form Dump ใช้สำหรับรับข้อมูลจากแบบฟอร์มใดๆก็ได้ที่ส่ง action ของฟอร์มมาหาโปรแกรมนี้ ซึ่งโปรแกรมจะรับข้อมูลทั้งหมดที่ถูกกรอกในแบบฟอร์มมาเก็บไว้ในไฟล์ text สำหรับไว้ดูในภายหลัง หรือนำไปประยุกย์ใช้อื่นๆ ประกอบด้วย 3 ไฟล์คือ formdump.pl - formdump.txt - formdump.htm

  3. โปรแกรม Free Link
    โปรแกรมนี้จะทำให้ผู้เข้าใช้เว็บไซต์ของคุณสามารถที่จะประชาสัมพันธ์โฮมเพจของเขา ในเว็บไซต์ของคุณได้ โดยการกรอกข้อมูลชื่อ-ที่อยู่-คำอธิบายโฮมเพจในแบบฟอร์ม จากนั้นข้อมูลจะไปรวมอยู่ในหน้ารายการโฮมเพจได้ โปรแกรมนี้ประกอบด้วย 3 ไฟล์คือ addlist.pl - viewfree.pl - homepagelist.txt

  4. โปรแกรม Select & Go
    โปรแกรมแบบนี้คุณคงเคยเห็นมาบ้างคือจะให้ผู้ใช้เลือกเนื้อหาหรือเว็บไซต์ที่ต้องการจากแบบฟอร์มและคลิ้กที่ปุ่มส่ง จากนั้นจะโหลดเว็บเพจที่ถูกเลือกขึ้นมาแสดง เหมาะสำหรับเว็บไซต์ที่มีเนื้อหามากๆ ซึ่งทำให้เป็นระเบียบ และง่ายต่อการใช้เว็บไซต์ โปรแกรมนี้มีเพียง 2 ไฟล์คือ go.pl และ select.htm

  5. โปรแกรม Text Counter
    ก็คือ counter อย่างง่ายครับ สามารถตัดเอา code ภายในไปใช้ในโปรแกรมต่างๆได้ เป็นโปรแกรมครูครับ มีไฟล์เดียวเองคือ counter.pl


by thaitop.com


  © 2000, Integrated World Tech Co.,Ltd , All Rights Reserved. Thairegister is a service mark of In and Intergrated World Tech Co.,Ltd. Additional copyright and trademark information.