php connect database
การเชื่อมต่อ Database ( php connect database ) นั่น เป็นหัวใจสำคัญของ PHP เลยก็ว่าได้ บทความนี้จะพูดถึง PHP Connect Database MySQL ด้วย MySQLi ซึ่งปัจจุบัน การ connect แบบนี้ ได้รับความนิยมเป็นอย่างสูง เนื่องจาก การจัดการที่ค่อนข้างง่าย และรวดเร็วในการแก้ไข อีกทั้งยังเป็นมาตรฐานในการเชื่อมต่อ เลยก็ว่าได้ สำหรับ MySQL
ตัวอย่าง
<?php class ConnectDB{ public $db; public function cConnect(){ try{ if($this->myIp()=='8.8.8.8'){ $db['DF_MYSERVER'] = 'localhost'; $db['DF_DATABASE'] = 'database_name'; $db['DF_USERNAME'] = 'root'; $db['DF_PASSWORD'] = '1111'; }else{ $db['DF_MYSERVER'] = 'localhost'; $db['DF_DATABASE'] = 'database_name'; $db['DF_USERNAME'] = 'root'; $db['DF_PASSWORD'] = '11115555'; } $db['DF_CHARSET'] = 'utf8'; if(empty($db['DF_MYSERVER']) || empty($db['DF_USERNAME']) || empty($db['DF_PASSWORD']) || empty($db['DF_DATABASE'])){ throw new Exception('Please try to check connection method.'); }else{ $this->db = new mysqli($db['DF_MYSERVER'], $db['DF_USERNAME'], $db['DF_PASSWORD'],$db['DF_DATABASE']); if($this->db->connect_error) { throw new Exception('Please try to check "ServiceConnectAuth". '.$this->db->connect_error); }else{ if(empty($db['DF_CHARSET'])){ throw new Exception('Cannot to set charset '.$db['DF_CHARSET'].'. '.$this->db->error); }else{ $this->db->set_charset($db['DF_CHARSET']); } } } }catch (Exception $e){ $this->cError($e); exit; } } public function myIp(){return $_SERVER['REMOTE_ADDR'];} public function cError($token){ $this->style = ' <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-wp-preserve="%3Cstyle%3E.cError%7Bbackground-color%3A%20%23970000%3Bcolor%3A%20%23ffffff%3Bfont-size%3A%2020px%3B%7D%3C%2Fstyle%3E" data-mce-resize="false" data-mce-placeholder="1" class="mce-object" width="20" height="20" alt="<style>" title="<style>" /> '; try{ if(empty($token)){ throw new Exception('Data error not found.'); }else{ echo $this->style; echo ' '.$token->getMessage().' '; } }catch (Exception $e){ echo $this->style; echo ' '.$e->getMessage().' '; } } } //New class เพื่อเปิดใช้งาน mysqli $mysqli = new ConnectDB(); $res = $mysqli->db->query('SELECT * FROM table ORDER BY ID DESC'); if($res->num_rows){ while($obj=$res->fetch_object()){ echo $obj->ID.' '.$obj->Name; } } ?>
ในบรรทัดที่ 6 จะเห็นได้ว่า หากเราทำงานที่เครื่อง localhost ของเรา มันจะเป็นการทำงานที่สะดวกและรวดเร็ว ดังนั่น admin จริง ได้เขียนเช็คว่า หากเชื่อต่อด้วย IP นี้จริง ให้ SET ค่า username + password ให้ใช้งานแบบนี้ แต่ถ้าหากไม่ใช่ ก็จะเป็นในส่วนของ Server จริงแทน ซึ่งการทำงานแบบนี้จะทำให้เราไม่ต้องมานั่งเสียเวลาไล่เปลี่ยน Username + Password
ในบรรทัดที่ 58 นั้น เราจะทำการ ประกาศชื่อ Class หมายถึงให้ New ชื่อ Class ใหม่ โดยเราใช้ชื่อ $mysqli แต่ที่จริงแล้ว สามารถตั้งชื่ออะไรก็ได้ค่ะ จากนั้น หากต้องการทำการ Query ก็สามารถที่จะใส่เครื่องหมาย $mysqli->db->query(‘SQL COMMAND’); ลงไปได้เลย ง่ายไหมละค่ะ สำหรับ MySQLi หวังว่า ประโยชน์จากบทความนี้ จะช่วยให้ Developer ใหม่ๆ หรือผู้ที่กำลังศึกษา ได้ประโยชน์อย่างแท้จริงค่ะ
เป็นยังไงกันบ้างค่ะ? สำหรับบทเรียน “PHP Connect Database MySQL with MySQLi” หวังว่าประโยชน์จากบทความนี้จะส่งผลให้ Developer ที่ได้อ่านได้เข้าใจถึงการทำงานของ โครงสร้างที่ได้ทำการเขียนไปนะคะ