PHP และ MySQL มือใหม่ เรียนรู้การใช้งาน

PHP และ MySQL มือใหม่ เรียนรู้การใช้งาน

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

หากใครยังไม่เข้าใจ ว่า PHP MySQL คืออะไร ลองอ่านที่นี่ครับ  http://web.meewebfree.com/site/php-codeigniter/11-get-started-php-mysql เพราะว่าคราวนี้เราจะกล่าวถึงเนื้อหาเรื่องความเกี่ยวโยงเลยครับ

อย่างที่บทความที่แล้วได้บอกเอาไว้แล้ว ว่าPHP มันคือคำสั่งที่ประมวลผลฝั่ง server ซึ่งแน่นอนว่า คำสั่งต่างๆมีมากมาย และหนึ่งในกลุ่มคำสั่งนั้นก็ย่อมมีคำสั่ง การติดต่อฐานข้อมูลแบบ MySQL ด้วยครับ

โดยภาพรวมการทำงานจะเป็นแบบนี้ครับ

ระบบการทำงานของ php MySQL

โดยหลักการทำงานมันมีดังนี้นะครับ

1.User เรียกใช้งานเว็บ
2.ระบบ รับคำขอจาก user เข้ามาประมวลผล
3.เว็บ php ติดต่อเข้าฐานข้อมูลเพื่อขอเข้าใช้
4.ค้นข้อมูลจากฐานข้อมูลเพื่อเตรียมแสดง
5.ข้อมูลที่ดึงขึ้นมาจากฐานข้อมูลถูกประมวลรวมกันแล้วแสดงผลออกมาเป็นหน้าเว็บ
6.หน้าเว็บที่ได้ ถูกส่งกลับไปยังผู้ใช้ข้อที่ 1

หลักการทำงาน มีแค่นี้จริงๆครับ ไม่ได้มีมากกว่านี้เลย(ถ้ามีอีกจะเป็นเชิงลึกมาก) แต่แค่ 6ข้อเนี่ย ก็เล่นเอามึนมาแล้วนักต่อนักครับ เราก็มาเริ่มกันทีละข้อเลยดีกว่า นั่นคือ

1.User เรียกใช้งานเว็บ ก็เหมือนเราๆท่านๆที่กำลังเปิดเว็บนี่ล่ะครับ ไม่ว่าจะเป็นการคลิกลิ้งค์ หรือเป็นการพิมพ์ชื่อโดเมนเข้ามาก็ตาม

2.ระบบ รับคำขอจาก user เข้ามาประมวลผล เกิดขึ้นหลังจากที่รับคำสั่งมาจาก user ก็ตรวจสอบว่าคำสั่งนั้นต้องการดึงข้อมูลจากเว็บใด ก็รับคำขอมาประมวลผล

3.เว็บ php ติดต่อเข้าฐานข้อมูลเพื่อขอเข้าใช้ เมื่อเปิดการประมวลผลหน้าเว็บ php และเจอคำสั่งที่ใช้ติดต่อฐานข้อมูล ระบบก็จะเชื่อมต่อเข้าไปที่ส่วนของฐานข้อมูลเพื่อเตรียมพร้อมกานรับส่งข้อมูลกับฐานข้อมูลต่อไป

โดยเราจะต้องมีโค้ดเพื่อทำการเชื่อมต่อนะครับ ไม่อย่างนั้น ตัว PHP จะไม่สามารถเข้าไปทำการเปิดฐานข้อมูลมาได้ครับ ด้วยเหตุผลหลายๆข้อดังนี้

1.เพื่อความปลอดภัย เพราะว่าอย่างที่ทราบว่า host 1เครื่องมีหลายคนใช้งาน หลายฐานข้อมูล ดังนั้น เราก็ต้องแยกกันใช้ด้วยเจ้าผู้ใช้งานนี่ล่ะครับ และเพื่อกันการที่บุคคลทั่วไปมาเปิดฐานข้อมูลดูด้วยครับ
2.เพื่อความสะดวกในการเข้าถึง เพราะหากว่าเอาฐานข้อมูลมากองรวมกันหมด มันคงจะไม่ใช่เรื่องง่ายในการค้นหาแน่ๆ
3.เพื่อความรวดเร็ว เพราะว่า จะได้แยกออกมาได้อย่างถูกต้องว่า user แต่ละคนนั้นมีข้อมูลอะไรอยู่บ้าง

โค้ดการเชื่อมต่อ MySQL จะมีดังนี้ครับ

$hostspec = 'localhost';//ลักษณะ host ปรกติคือ localhost $username = 'user';//username ของผู้ใช้งาน MySQL $password = 'seekrit';//password ของผู้ใช้งาน MySQL $database = 'phpbook';//ชื่อ ฐานข้อมูลที่เราจะทำการติดต่อ $table = 'name';//ตารางที่เรา ต้องการติดต่อ $handle = @mysql_connect($hostspec, $username, $password);//คำสั่งติดต่อฐานข้อมูล if (!$handle) { die("Could not connect to database");//หมายความว่าติดต่อไม่ได้ }

4.ค้นข้อมูลจากฐานข้อมูลเพื่อเตรียมแสดง เริ่มทำการค้นหาข้อมูลที่เก็บตามเงื่อนไขคำสั่งของ php ที่สั่งมา โดยอาศัยภาษา SQL จากนั้นก็คืนข้อมูลที่ต้องการไปยังหน้าเว็บ php ซึ่งโค้ดก็จะมีดังนี้

mysql_select_db($database);//เปิด ฐานข้อมูลที่เก็บในตัวแปร $database $result = mysql_query("SELECT article_subject FROM $table");//ค้นข้อมูลจาก field ที่ชื่อ testvalue จากตารางชื่อที่เก็บในตัวแปร $table มาใส่ในตัวแปร $result $result2 = mysql_fetch_array($result);//เอาค่าของ field ชุดแรกแรกมาใส่ในตัวแปร$result2

5.ข้อมูลที่ดึงขึ้นมาจากฐานข้อมูลถูกประมวลรวมกันแล้วแสดงผลออกมาเป็นหน้าเว็บ เมื่อรับข้อมูลจาก SQL เข้ามาแล้ว ก็เข้าไปในส่วนแสดงผลต่อ เพื่อให้ออกมาเป็นหน้าเว็บ โค้ดมีดังนี้ครับ

if($result2){ echo $result2['testvalue'];//แสดง ค่าที่เก็บอยู่ใน Field ที่ชื่อ testvalue }

6.หน้าเว็บที่ได้ ถูกส่งกลับไปยังผู้ใช้ข้อที่ 1 หน้าเว็บที่พร้อมแล้วก็จะถูกส่งกลับไปแสดงกับผู้ใช้ที่เรียกเข้ามา

จบแล้วครับเอาไปลองได้จริงเลยนะครับ โดยไปsave ชื่ออะไรก็ได้ แต่นามสกุล .php ครับ แล้วอย่าลืมเปิด Tag PHP ด้วยนะครับ คือเปิดด้วย<?php และปิดด้วย ?> ครับ

และในส่วนของ PHP-Fusion เองเนี่ย มันมีอะไรให้ท่านใช้งานได้ง่ายกว่านั้นอีกครับ เพราะว่าเค้าเขียนไอที่ยาวๆเยิ่นเย้อให้เหลือแค

$result = dbquery("SELECT * FROM ".$db_prefix."news");//คือการค้นหาข้อมูลจากตารางที่ชื่อ news โดยค้นทุก field ใส่ใน $result $data = dbarray($result);//เอา ข้อมูลใน field ชุดแรก ใส่ในตัวแปร $data echo $data['news_news'];//แสดง ข้อมูลจากตัวแปร $data['news_news'] คือแสดงเฉพาะข้อมูลส่วนของ field news_news นั่นเอง

3บรรทัดครับ แต่ชุดล่างนี้อย่างที่บอกนะครับว่าใช้ได้เฉพาะเว็บ php-fusion เท่านั้น เพราะเค้าเขียนฟังก์ชั่นให้เราใช้งานได้อย่างสะดวกแล้วครับ

นี่ล่ะครับ คือวิธีง่ายๆ อันนี้ผมแสดงให้ดูเป็นการเบื้องต้นเพื่อทำความเข้าใจนะครับ หากต้องการศึกษาเรื่องนี้ลึกๆ ก็ลองถาม พี่ google ดูเลยครับเพราะว่ารายละเอียดมันมีอีกเยอะมากเลย

ท้ายนี้ก็หวังว่าจะเข้าใจมากขึ้นแล้วนะครับ สำหรับเรื่อง PHPและ MySQL ไม่ต้องงงแล้วนะครับ ว่ามันคืออะไร และมันเกี่ยวข้องกันอย่างไร และมันทำหน้าที่อะไรครับ

Create: Modify : 2010-04-16 21:52:57 Read : 37212 URL :