PHP Connect Database MySQL with MySQLi

0
1270

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 ที่ได้อ่านได้เข้าใจถึงการทำงานของ โครงสร้างที่ได้ทำการเขียนไปนะคะ

php connect database

ทิ้งคำตอบไว้

Please enter your comment!
Please enter your name here