PHP Connect Database MySQL with MySQLi

0
873
php connect database
php connect database
Advertisement

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

Advertisement